文章出處

嚴重: Exception starting filter struts2
java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

struts2.1.3以前版本和之后版本

struts2中StrutsPrepareAndExecuteFilter 異常如果是2.1.3之前的版本用org.apache.struts2.dispatcher.FilterDispatcher,否則用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。  

因為從Struts2.1.3開始,將廢棄ActionContextCleanUp過濾器,而在StrutsPrepareAndExecuteFilter過濾器中包含相應的功能。在web.xml中做修改紅色字體部分    
     
   <filter>   
    <filter-name>struts2</filter-name>   
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>   
    </filter>   

  <filter-mapping>   
    <filter-name>struts2</filter-name>   
    <url-pattern>/*</url-pattern>   
 </filter-mapping> 

排查后發現自己屬于struts2-core-2.3.24.1且ctrl也能到對應jar包的class

http://bbs.csdn.net/topics/330179411 百度后發現

若是通過類路徑添加庫(如:User Library中struts2)的方式加入jar包,可能需要在該項目屬性Properties->Java EE Module Dependencies中將該庫(struts2)選中。

 

新版Eclipse找不到Java EE Module Dependencies選項

在 Eclipse Galileo (3.5) 版本或Ganymede (3.4) 等更老的版本中, 你可以使用Java EE Module Dependencies 選項來組織你的項目結構,確保依賴的工程能正確的發布到指定的目錄中。 
這里寫圖片描述

但是在 Eclipse Helios (3.6)之后的版本中找不到該選項了,其實 Java EE Module Dependencies被替換為Web Deployment Assembly了而已。 
這里寫圖片描述

使用Web Deployment Assembly可以完成相同的功能。

 


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()