zoukankan      html  css  js  c++  java
  • java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter /struts2.1.3以前版本和之后版本区别/新版Eclipse找不到Java EE Module Dependencies选项

    严重: 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可以完成相同的功能。

  • 相关阅读:
    Javac配置环境变量01
    jmeter压测学习-发soap请求测试webservice
    Faker 安装与介绍
    docker使用nginx部署spring项目
    Linux查看端口占用情况
    Cesium 中两种添加 model 方法的区别
    Cesium 动态更换模型贴图方法
    Node.js API 学习笔记
    一步步建立 Vue + Cesium 初始化项目
    python3 解析 base64 数据
  • 原文地址:https://www.cnblogs.com/shanheyongmu/p/5775070.html
Copyright © 2011-2022 走看看