weblogic部署cxf项目jar包冲突
本地tomcat运行正常的cxf项目部署到weblogic9.2上包冲突,报
javax.xml.stream.supportDTD 找不到的错误,恳求高手指点。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
本地tomcat运行正常的cxf项目部署到weblogic9.2上包冲突,报
javax.xml.stream.supportDTD 找不到的错误,恳求高手指点。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
@峰子
weblogic的ear包含你的war:
创建一个ear(Enterprise ARchive)工程,这个工程可以包含多个war工程,就像war可以包含多个jar一样。JavaEE企业级的应用服务器都支持EAR。(http://geekexplains.blogspot.com/2008/06/jar-war-and-ear-what-are-these-files.html)
但一般企业应用服务器都有自己的部署描述,比如weblogic在部署EAR时就会读取EAR中的META-INF/weblogic-application.xml内容(如果你用workshop创建的ear默认会有这个配置,如果用eclipse需要你手工加入),
如果不是系统级包冲突,定义WEB-INF/weblogic.xml,的prefer-web-inf-classes为true就可以了。
如果是系统级包(javax,org.apache.*)冲突就要建一个weblogic的ear包含你的war,META-INF/weblogic-application.xml,模仿下面的定义修改,以你为准的应用包名(多级的话都要定义)。再把你需要的新版系统级别jar放到ear的APP-INF/lib中。这样weblogic加入系统级包就以你的为准了
这是老项目,一直用war包部署。现在添加了文件上传功能,要改为目录部署方式方便文件储存。prefer-web-inf-classes属性改为true不行,应该是系统级包冲突。weblogic的ear包能满足文件储存不?
回复
ear(可以是目录)嵌入war的方式都可以以目录方式部署,只要名字对就可以,就是说a.war可以是一个目录。但要注意weblogic的部署模式,如果你是直接传到war中(虽然不建议这样做)。就需要指定部署目录模式而不是stage(运行时又copy了一份)模式。
如果不是系统级包冲突,定义WEB-INF/weblogic.xml,的prefer-web-inf-classes为true就可以了。
如果是系统级包(javax,org.apache.*)冲突就要建一个weblogic的ear包含你的war,META-INF/weblogic-application.xml,模仿下面的定义修改,以你为准的应用包名(多级的话都要定义)。再把你需要的新版系统级别jar放到ear的APP-INF/lib中。这样weblogic加入系统级包就以你的为准了