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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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