У меня есть только Java-конфигурация в Spring Application. Я создал пользовательский объект и Dao для поиска/создания пользователей. Контроллер имеет два метода GET - один для пользователя и один для списка пользователей и один метод POST - для создания/редактирования пользователя.JspViewResolver не работает в java-конфигурации на основе весеннего приложения
После запуска на сервере Tomcat 7 он дает ошибку 404 и сообщение, что «Запрошенный ресурс недоступен.
грузоотправитель сервлет конфигурируется в SpringWebAppInitializer.class:
public class SpringWebAppInitializer implements WebApplicationInitializer {
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
AnnotationConfigWebApplicationContext appContext = new AnnotationConfigWebApplicationContext();
appContext.register(ApplicationContextConfig.class);
servletContext.addListener(new ContextLoaderListener(appContext));
AnnotationConfigWebApplicationContext dispatcherContext = new AnnotationConfigWebApplicationContext();
dispatcherContext.register(DispatcherServlet.class);
ServletRegistration.Dynamic dispatcher = servletContext.addServlet("SpringDispatcher", new DispatcherServlet(dispatcherContext));
dispatcher.setLoadOnStartup(1);
dispatcher.addMapping("/");
}
}
Посмотреть распознаватель определяется в ApplicationContextConfig.class:
@Configuration
@ComponentScan("pl.wybornie.entity")
@EnableTransactionManagement
public class ApplicationContextConfig extends WebMvcConfigurerAdapter {
@Bean(name = "viewResolver")
public InternalResourceViewResolver getViewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/pages/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
//other configuration beans...
}
файлы JSP для USERLIST и UserForm находятся в папке WebContent проекта в разделе:/WEB-INF/pages/user/*. Jsp
Приводятся следующие контроллеры, отвечающие за получение изображений:
@Controller
@SessionAttributes({"user"})
public class UserController {
@Autowired
private UserDao userDao;
@RequestMapping(value = "/user_list.html", method = RequestMethod.GET)
public String list(Model model, HttpServletRequest request) {
model.addAttribute("userList", userDao.usersList());
return "user/userList";
}
@RequestMapping(value = "/create.html", method = RequestMethod.GET)
public String edit(@RequestParam(value="id", required=false) Long id, Model model) {
User user = userDao.findOrCreate(id);
model.addAttribute("user", user);
return "user/userForm";
}
@RequestMapping(method = RequestMethod.POST)
public String submitForm(@ModelAttribute("user") User user, BindingResult bindingResult, HttpServletRequest request, Model model) {
userDao.saveOrUpdate(user);
return "redirect:user_list.html";
}
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
}
Я forgetted об этом, но к сожалению, это не является причиной моей проблемы ... – argh