Spring MVC コントローラーと jsp を使用した非常にシンプルでクラシックなページがあります (JSP はここでは関係ありません)。
@Controller
public class PlayListListController extends BaseController<PlayList> {
@Autowired UserRepository userRepository;
@RequestMapping("/playlist/{userName}")
private ModelAndView displayList(@PathVariable("userName") String userName) {
User user = userRepository.getUserByUserName(userName);
....
}
}
私の問題は次のとおりです。URL を使用して自分のページにアクセスしたい場合:http://localhost:8080/playlist/foo
コントローラーの 8 行目で NullPointeurException がスローされます。
User user = userRepository.getUserByUserName(userName);
デバッグすると、userRepository が実際に null であることがわかります。
userRepository は Spring によって注入されることになっていますが、私の他のすべてのコントローラーでは問題なく発生します。同じ Bean (userRepository) が、Sptring によって正しく注入されます。
インスタンス化され、Spring によって呼び出されるこの特定のコントローラー (他のすべてのコントローラーと同じパッケージにあります) で、userRepository が null になるのはなぜですか? まったくわかりません。どんな提案でも大歓迎です。
ありがとう!エミール。