сервисный аннотированный класс генерирует исключение nullpointer при вызове репозитория - PullRequest
1 голос
/ 09 января 2020

В приложении Spring у меня есть класс с именем Utility. java, и этот класс помечается аннотацией @Service. В этом классе я пытаюсь выбрать пользователя для функции, которая будет использоваться глобально в проекте. При вызове пользователя в контроллере с использованием созданного служебного метода он выдает исключение nullpointer из репозитория. Ниже приведен код

//Utility.java file

@Service
public class Utility{

@Autowired static UserDao userDao;

public static User findActiveUser(String auth){
        System.out.println("here is the username: " + auth);
        User user = null;
        try {
            user = Utility.userDao.findBy...("user1", "ACTIVE"); //throws null here

        }catch (Exception ex){
            ex.printStackTrace();
        }
        return user;
    }



//Controller annotated class
@Autowired Utility utility;

@GetMapping(value = "/success")
        public String success(Authentication auth,HttpServletRequest request){
            if (auth == null) {
                return "index";
            }
            System.out.println("@dashboard success");
            User user = utility.findActiveUser(auth.getName());

Все выглядит хорошо и хорошо до go, но все еще не работает

Ответы [ 2 ]

1 голос
/ 09 января 2020

Вы должны удалить static word из этой строки @Autowired static UserDao userDao; или добавить дополнительные логики c для автоматического переноса значения в поле stati c.

1 голос
/ 09 января 2020

Вы не можете @Autowired поле c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...