Я пытаюсь запустить встроенный сервер Jetty и развернуть в нем приложение Spring MVC, но возникает проблема сопоставления ресурсов - в частности, я не могу сопоставить контроллер Spring mvc, чтобы он мог найти мои JSP.
Конфигурация:
- причал-8.1.8.v20121106
- Весна 3.2
Конфигурация сервера Jetty:
Server server = new Server();
ServletContextHandler context = new ServletContextHandler();
//WebAppContext context = new WebAppContext();
context.setBaseResource(Resource.newClassPathResource("webapp"));
context.setClassLoader(Thread.currentThread().getContextClassLoader());
context.setContextPath("/");
AnnotationConfigWebApplicationContext webAppContext = new AnnotationConfigWebApplicationContext();
webAppContext.register(WebFaceSpringConfiguration.class);
webAppContext.setServletContext(context.getServletContext());
webAppContext.setParent(applicationContext);
context.addServlet(new ServletHolder(new DispatcherServlet(webAppContext)), "/");
server.setHandler(context);
server.setConnectors(jettyConnectors);
Папка webapp находится в пути к классам, но в такой конфигурации у меня возникает ошибка Проблема с доступом к /WEB-INF/pages/main-page.jsp (который на самом деле находится в веб-приложение). Таким образом, вызывается метод контроллера, но невозможно разрешить представление.
Я попытался использовать WebAppContext и сопоставление с подстановочными знаками для сервлета Spring Dispatcher (/ *), но это не помогло - сопоставление контроллера игнорируется или JSP не может быть найден.