我目前正在尝试将我的项目从Java EE移到Spring Boot项目。但是,我一直陷入困惑,无法在Java配置中替换web.xml。
我试图更换它,但是它不起作用。项目web.xml
文件包含一些filters
和servlet
。 web.xml文件的详细信息如下:
<servlet>
<servlet-name>robinTest</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>robinTest</servlet-name>
<url-pattern>/secureServices/ </url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>robinTest</servlet-name>
<url-pattern>/simple/ </url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:applicationContext.xml
classpath:application-context-1.xml
classpath:application-context-2.xml
</param-value>
</context-param>
<filter>
<filter-name>robinTestFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
<init-param>
<param-name>targetBeanName</param-name>
<param-value>robinTestFilter</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>robinTestFilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<filter>
<filter-name>OpenSession Filter</filter-name>
<filter-class>org.springframework.orm.hibernate5.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>sessionFactoryBeanName</param-name>
<param-value>sessionFactory</param-value>
</init-param>
<init-param>
<param-name>flushMode</param-name>
<param-value>COMMIT</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>OpenSession Filter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
我已经替换了JavaConfig文件中的applicationContext.xml
,application-context-1.xml
和application-context-2.xml
文件,但是我不确定如何替换servlet
,listener
和<{1}}在 java配置文件中。
我试图替换它,但是它不起作用。示例代码如下:
filter
帮我摆脱这个问题,使我可以专注于其他作品。
谢谢。
答案 0 :(得分:0)
我认为您需要扩展WebMvcConfigurer
(apidoc)或WebMvcConfigurerAdapter
来连接您先前存在的类。不要实现上面正在做的WebApplicationInitializer。
您不需要像上面那样自行创建任何ApplicationContext实例