weblogic应用部署排坑总结

Posted by Think different. on May 21, 2019

1.web.xml标签问题

无法访问所选应用程序。Exception in AppMerge flows' progressionException in AppMerge flows' progressionVALIDATION PROBLEMS WERE FOUND problem: cvc-complex-type.2.4a: Expected elements 'servlet-class@http://java.sun.com/xml/ns/javaee jsp-file@http://java.sun.com/xml/ns/javaee' instead of 'display-name@http://java.sun.com/xml/ns/javaee' here in element servlet@http://java.sun.com/xml/ns/javaee:<null> problem: cvc-complex-type.2.4a: Expected elements 'servlet-class@http://java.sun.com/xml/ns/javaee jsp-file@http://java.sun.com/xml/ns/javaee' instead of 'description@http://java.sun.com/xml/ns/javaee' here in element servlet@http://java.sun.com/xml/ns/javaee:<null>

解决办法:在web.xml中,有一些标签weblogic无法识别。在错误提示中,已给出display-name等关键词。本问题就是因为在web.xml中display-name和description两个标签引起的。删除此类标签即正常了。–下策

这个问题出现在向weblogic部署项目的时候,实际项目中web.xml中 标签缺少了 子标签导致weblogic校验web.xml不通过,添加即可解决问题。

<security-constraint>
    <web-resource-collection>
        <web-resource-name/>
        <url-pattern>/*</url-pattern>
        ...
    </web-resource-collection>
</security-constraint>

2.jar包冲突

这个问题出现在部署成功后,启动项目时报错,一直显示无法加载spring的配置文件,以及类加载器错误,项目在本地用tomcat开发,部署到测试环境项目在tomcat上可以成功启动,所以项目代码没问题,但是在weblogic中无法成功启动,所以考虑是项目jar包和weblogic冲突。 找到冲突jar包的方法: 将项目lib下所有的jar包都拷贝到weblogic domains/base_domains/lib目录下 看能否启动weblogic服务器 找到冲突jar包:cxf-rt-transports-http-2.6.14.jar

3.weblogic启动加载项目

修改base_domain/config/config.xml文件 如果不想让weblogic在启动时加载项目,删除文件结尾处 app-deployment 标签中的项目

4.清理weblogic缓存

删除下列目录下的文件 1.user_projects/domains/shgfmis/servers/AdminServer\tmp/_WL_user 2.user_projects/domains/shgfmis/config/deployments