struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法

环境: struts 2.3.16.3 + Convention Plugin 2.3.16.3 实现零配置

现象:以文件夹方式部署在weblogic(10.3.3)上时一切正常,换成war包部署,运行时提示找不到Action

解决办法:

1. 检查生成的war包中\WEB-INF\classes\下有无META-INF目录,如果没有,在eclipse里resource\META-INF下随便放一个文件,比如test.xml,这样maven打包生成war包时,才会在classes下创建META-INF目录

2.struts.xml中增加二个常量

    <constant name="struts.convention.action.fileProtocols" value="jar,zip" />
    <constant name="struts.convention.action.includeJars" value=".*?/_wl_cls_gen.*?jar(!/)?" />

注:如果要weblogic/jboss通杀的话,可以再加一个常量 ,即共增加3个常量

1     <constant name="struts.convention.action.includeJars" value=".*?/_wl_cls_gen.*?jar(!/)?" />
2     <constant name="struts.convention.exclude.parentClassLoader" value="true" />
3     <constant name="struts.convention.action.fileProtocols" value="jar,zip,vfsfile,vfszip" />

示例:struts-spring-rest.zip

时间: 2024-10-07 09:27:30

struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法的相关文章

osgi应用使用桥接的方式打成war包部署在websphere上时遇到的与cxf相关的问题

原来我们的程序都是基于Equinox架构的,但是后面因为要实现打成war包在中间件中部署的需求,使用了eclipse官方提供的桥接方式实现. 桥接的部分后面有时间了我专门写一个文章来说,不明白的暂时请参考eclipse官方文档.这里主要说一下已经桥接成功,但是在使用CXF时遇到问题的情况. 本来在其他中间件里跑得好好的程序,一放到websphere_v8里,就各种报错,都是与axis2有关的,但是我们的项目并没有使用axis2,而是使用cxf. 报错类似如下(我有3个环境,每个报的错都不同,不过

linux上项目报错找不到主机名解决办法

项目报错找不到主机名解决办法 有时候我们的项目在本地运行没问题,但部署到linux服务器上就出错了. 报错:java.net.UnknownHostException: 主机名: 主机名  找不到主机名. 解决方法: 修改服务器上/etc/hosts文件 127.0.0.1  localhost  localhost.localdomain 添加所需的主机名称 或者 127.0.0.1  localhost  localhost.localdomain 127.0.0.1  添加所需的主机名称

复现一个典型的线上Spring Bean对象的线程安全问题(附三种解决办法)

问题复现 假设线上是一个典型的Spring Boot Web项目,某一块业务的处理逻辑为: 接受一个name字符串参数,然后将该值赋予给一个注入的bean对象,修改bean对象的name属性后再返回,期间我们用了 Thread.sleep(300) 来模拟线上的高耗时业务 代码如下: @RestController @RequestMapping("name") public class NameController { @Autowired private NameService n

jquery 的ajax无刷新上传文件之后,页面还是会莫名的刷新-----解决办法

文件上传用到全局数组: $_FILES 只需要把下面的 <button onclick="post()">提交</button> 改为 <input type="button" onclick="post()" value="提交"/>就不会刷新页面了!!! 参考 http://bbs.csdn.net/topics/391852021 what fuck ... sb html   我在那

ASP.NET MVC 使用jquery.form.js 异步上传 在IE下返回值被变为下载的解决办法

错误记录: <script type="text/javascript"> $(function () { $(document).off("ajaxSend"); //异步上传 $("#Submit").click(function () { if ($("#selectFileButton").val() == "") { return false; } $("#fileForm&

springboot创建war包部署在外部tomcat上

今天我想跟大家分享的是使用springboot如何创建可部署在外部Tomcat的war包?网上都讲了很多,不过我还是要记录一下: springboot官方文档上面写的已经很清楚了(85.1 Create a deployable war file) 1.主类继承SpringBootServletInitializer且覆盖它的configure 方法. @SpringBootApplicationpublic class Application extends SpringBootServlet

SSH上传提示:encountered 1 errors during the transfer错误解决办法

1:google 搜索发现,上传的时候 windows 的路径不能存在括号"()", 把括号去掉 重新上传就好了 或 把文件移到不带小括号的路径下就可以正常上传文件了. 2:在SSH Secure File Transfer(上传文件那个),打开"Operation"菜单,打开"File Transfer Mode"子菜单,再选择"Binary",OK! 3:把服务器上同名文件删掉再传 4:如果文件在桌面上,将要上传的文件复制

eclipse利用maven自动打war包部署到tomcat7上

环境: eclipse 版本 Eclipse Java EE IDE for Web Developers.Version: Kepler Service Release 2 maven版本:Apache Maven 3.2.5 tomcat7版本:Apache Tomcat/7.0.54 建立web工程,在pox.xml中进行配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://

CentOS 6上Eclipse的Svbclipse插件JavaHL(JNI) Not available错误的解决办法

在CentOS 6上的eclipse安装了svbclipse插件后,svn不能使用,并且第一次使用的时候还出现下面错误窗口提示 Failed to load JavaHL Library. These are the errors that were encountered: no libsvnjavahl-1 in java.library.path no svnjavahl-1 in java.library.path no svnjavahl in java.library.path ja