java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFil

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

struts2.1.3之前版本和以後版本ios

struts2中StrutsPrepareAndExecuteFilter 異常若是是2.1.3以前的版本用org.apache.struts2.dispatcher.FilterDispatcher,不然用org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。  web

由於從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>   apache

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

排查後發現本身屬於struts2-core-2.3.24.1且ctrl也能到對應jar包的class字體

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

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

 

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

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

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

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

相關文章
相關標籤/搜索