今天在功能测试环境中weblogic上部署应用时,启动后报错,说是spring找不到对应的action,所以怀疑是类加载的问题,找度娘一搜,果然是猜的没错,找到解决方法:
1. 将struts.xml加入:
<constant name="struts.convention.action.includeJars" value=".*你的jar包名.*" />
然后启动正常,但登陆后找不到struts的action.在开发环境中明显是可以的,而且在tomcat中打包war也是可以用的,但部署到weblogic中就不可以了,所以认为还是类加载的问题,再问了一下度娘,答案如下:
1. 将struts.xml加入
<constant name="struts.convention.action.fileProtocols" value="jar,zip" />
修改为:
<constant name="struts.convention.action.includeJars" value=".*你的jar包名.*,.*?/_wl_cls_gen.*?jar(!/)?"/>
许多解决此问题的文章并没有提到多个jar的问题,如果有多个jar要加载,需要用逗号分开
2. Ant打包时,war任务的属性manifest一定要写上
然后打包,部署,启动正常,打开页面登陆后,操作,一切ok,看来weblogic真是有点不太好搞啊,坑挺多。
本文讨论在WebLogic环境下部署Spring应用时遇到的类加载问题,包括使用struts.xml配置解决多jar包加载问题,以及Ant打包时manifest属性的正确设置。文章详细阐述了解决方案并分享了在不同环境(如开发环境、Tomcat和WebLogic)下应用的不同体验,最终实现了正常部署和操作。
5482

被折叠的 条评论
为什么被折叠?



