常见问题
1.常用的springboot框架兼容性问题:
- tomcat兼容性是比较好的
- weblogic需要处理一些列兼容性问题,可通过weblogic.xml来处理兼容
2.对于springboot的兼容有版本对应,servlet api的版本支持问题
3.代码中如果存在长事物提交,则需要注意
- weblogic有xa事物,即两阶段提交,如果事物提交时间过长,则会由weblogic的xa机制发生事物回滚,这时候就会出现一些错误,提示事物已被回滚等。
针对于问题1,可参考weblogic.xml配置如下:
<wls:weblogic-web-app
xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app
http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd">
<wls:container-descriptor>
<wls:prefer-application-packages>
<wls:package-name>org.slf4j.*</wls:package-name>
<wls:package-name>org.apache.commons.*</wls:package-name>
<wls:package-name>antlr.*</wls:package-name>
<wls:package-name>org.hibernate.*</wls:package-name>
<wls:package-name>javax.persistence.*</wls:package-name>
<wls:package-name>javax.validation.*</wls:package-name>
<wls:package-name>org.springframework.*</wls:package-name>
<wls:package-name>org.apache.xmlbeans.*</wls:package-name>
<wls:package-name>org.hibernate.validator.*</wls:package-name>
<wls:package-name>org.joda.*</wls:package-name>
<wls:package-name>org.objectweb.asm.*</wls:package-name>
<!--<wls:package-name>com.sun.xml.*</wls:package-name>-->
<wls:package-name>javassist</wls:package-name>
<wls:package-name>net.sf.cglib.*</wls:package-name>
<wls:package-name>com.google.*</wls:package-name>
</wls:prefer-application-packages>
</wls:container-descriptor>
<wls:charset-params>
<wls:input-charset>
<wls:resource-path>/*</wls:resource-path>
<wls:java-charset-name>UTF-8</wls:java-charset-name>
</wls:input-charset>
</wls:charset-params>
<wls:jsp-descriptor>
<wls:encoding>UTF-8</wls:encoding>
</wls:jsp-descriptor>
<wls:session-descriptor>
<wls:timeout-secs>600</wls:timeout-secs>
</wls:session-descriptor>
</wls:weblogic-web-app>
其中,package-name标签中的表示,如果与weblogic的lib库中发生冲突,则优先加载应用lib中此包类