好久沒有搞struts2,今天配置strut2.3.24.1,啓動時遇到個小問題。記錄下。
頁面訪問404錯誤
tomcat啓動報錯:
原因:查看lib下的jar包發現 有struts2-spring-plugin-2.3.24.1.jar
表明該插件引入工程後,會自動設置Struts的ObjectFactory爲StrutsSpringObjectFactory,從而讓Spring的IOC容器來託管Struts的Action。所以導致了啓動的問題。
但是工程web.xml中沒有配置加載spring ApplicationContext相關的listener
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
解決方法:
1. 刪除struts2-spring-plugin-2.3.24.1.jar
2.在web.xml中添加spring監聽,配置struts2 .xml 可以不配置因爲默認值爲struts.objectFactory = spring
<constant name="struts.objectFactory" value="spring" />