选择WebLogic9.2的原因
①WebLogic8支持的是J2EE1.3,也就是Servlet2.3规范。若在MyEclipse中建立WebProject时选择了J2EE1.4[default],在部署的时候就会出现异常,提示部署描述符web.xml是畸形的,也就是未通过DTD检验。因为J2EE1.4使用的是Servlet2.4规范,这直接体现在web.xml部署描述符的头部引用中。这就是有些朋友遇到的,部署在Tomcat和JBoss中能够运行的JSP程序,部署到WebLogic8就无法运行的原因之一。解决这个问题,需要将WebLogic升级到9.2版本;或者使用J2EE1.3。
Servlet2.3规范生成的web.xml头部:
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEweb-appPUBLIC"-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
...
</web-app>
Servlet2.4规范生成的web.xml头部:
<?xmlversion="1.0"encoding="UTF-8"?>
<web-appversion="2.4"xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
...
</web-app>
②若在上一个问题选择了J2EE1.3进行开发后,在部署时会出现另外的异常,提示“Unsupportedmajor.minorversion49.0”——又是版本问题,这次是由于JDK版本不支持造成的。WebLogic8不支持JDK1.5,由JDK1.5编译的程序无法部署到只支持JDK1.4的服务器上运行。解决的办法也有两个:用JDK1.4重新编译;或者换用支持JDK1.5的服务器,也就是升级到WebLogic9.2。