Я хотел бы создать веб-приложение, используя Spring MVC
и GWT
. Основная цель - крайне минимизировать конфигурацию XML
. Я знаю, как настроить приложение Spring MVC
без конфигурации XML
(используя @Configuration
и AbstractAnnotationConfigDispatcherServletInitializer
вместо web.xml), но я не могу понять, как добиться того же результата с GWT
. Я пытался добавить Мануалы org.spring4gwt.server.SpringGwtRemoteServiceServlet
к ServletContainer
в void onStartup(ServletContext container)
методе (перекрываться из AbstractAnnotationConfigDispatcherServletInitializer
), но похоже, игнорирует приложение моего класс WebAppStarter
расширение AbstractAnnotationConfigDispatcherServletInitializer
(я просто положил Syser в конструкторе WebAppStarter
- в чистом Spring MVC
приложения печатает что-то на стандартной ERR, но с GWT
- ничто не печатается по стандартным ошибкам).Spring 4 + GWT 2.6.0 + min Конфигурация XML
Вот мои конфигурации:
public class WebAppStarter extends AbstractAnnotationConfigDispatcherServletInitializer {
public WebAppStarter() {
System.err.println("======================> WEB_APP_STARTER");
}
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[0];
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[] { WebAppConfiguration.class };
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
public void onStartup(ServletContext container) throws ServletException {
super.onStartup(container);
ServletRegistration.Dynamic testServlet = container.addServlet("gwtServlet", new SpringGwtRemoteServiceServlet());
testServlet.addMapping("/TestModule/springGwtServices/*");
}
}
@Configuration
@EnableWebMvc
@ComponentScan(BASE_SPRING_COMPONENT_SCAN_PACKAGE_NAME)
public class WebAppConfiguration {
}
у меня нет applicationContext.xml.
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
</web-app>
Любые идеи? Можно ли это достичь?
Благодаря
Это может не помочь. Но считаете ли вы, что вы не используете свой интерфейс с услугами/контроллерами? Скорее, проект GWT взаимодействует через вызовы REST, либо w/RequestBuilder, либо, возможно, w/RestyGwt? –
честно - я не знаю, как работает этот подход (через REST). Для меня важно написать UI в Java (не в JavaScript). Поддерживает ли это решение это? –