spring data jpa autowired retourne null
J''essaye de tourner un exmple avec maven, spring data jpa, spring-web mvn, hibernate , rest web service et mysql database. J'ai définit mon interface et j'essaye de faire @autowired, mais une exception NullPointerException:null.
webconfig.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| @Configuration
@ComponentScan(basePackages = { "com.myqiservices.reporting.ui", }, excludeFilters = { @Filter(Configuration.class) })
@EnableTransactionManagement
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {
@Resource(mappedName = "jdbc/jdbc")
private DataSource dataSource;
@Bean
public DataSource dataSource() {
return dataSource;
}
@Bean
public UserRepository userRepository() {
return new UserService().getUserRepository();
} |
UserService.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| @Service
public class UserService {
@Autowired
private UserRepository userRepository;
public UserRepository getUserRepository() {
return userRepository;
}
public void setUserRepository(UserRepository userRepository) {
this.userRepository = userRepository;
}
} |
UserRepository.java existe dans un autre module maven ( jpa)
Code:
1 2 3 4 5 6
| public interface UserRepository extends JpaRepository<User, Integer> {
public User findByLogin(String login);
public List<User> findAll();
} |
RestService.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
@RestController
@RequestMapping("/setup")
@Transactional
public classRestService {
private static final Logger logger = LoggerFactory.getLogger(SetupRestService.class);
@Autowired
private SessionHelper sessionHelper;
private String bundleName;
@Autowired
private UserService userService;
@RequestMapping(value = "/userContext", method = RequestMethod.GET)
public UserContextDto getUserContext(HttpServletRequest request) {
String currentUserLogin = sessionHelper.getLogin();
// Lookup user in DB
logger.info("----------------Users list size()------------------userService["+userService+"]-----------------------userService.getUserRepository():"
+ userService.getUserRepository());
List<User> users = userService.getUserRepository().findAll();
User u = userService.getUserRepository().findOne(1);
logger.info("----------------Users list size()-----------------------------------------");
logger.info("-----------------------------------------------------------------------" + users.size());
logger.info("-----------------------------------------------------------------------" + u);
// TODO Convert user entity to user DTO
User userDto = new User();
UserContextDto userContext = new UserContextDto();
userContext.setUser(userDto);
return userContext;
} |
je me bloque vraiment, j'ai pas trouvé pourquoi me retourne null.
merci d'avance