Weblogic部署web项目

一、开发环境     windows server 2003;
    weblogic 9.2;     jdk 1.5;
二、选择 WebLogic 9.2 的原因
①WebLogic 8 支持的是 J2EE 1.3,也就是 Servlet 2.3 规范。若在 MyEclipse 中建立 Web Project 时选择了 J2EE 1.4[default],在部署的时候就会出现异常,提示部署描述符 web.xml 是畸形的,也就是未通过 DTD 检验。因为 J2EE 1.4 使用的是 Servlet 2.4 规范,这直接体现在 web.xml 部署描述符的头部引用中。这就是有些朋友遇到的,部署在 Tomcat 和 JBoss 中能够运行的 JSP 程序,部署到 WebLogic 8 就无法运行的原因之一。解决这个问题,需要将 WebLogic 升级到 9.2 版本;或者使用 J2EE 1.3。 ②若在上一个问题选择了 J2EE 1.3 进行开发后,在部署时会出现另外的异常,提示“Unsupported major.minor version 49.0”—— 又是版本问题,这次是由于 JDK 版本不支持造成的。WebLogic 8 不支持 JDK 1.5,由 JDK 1.5 编译的程序无法部署到只支持 JDK 1.4 的服务器上运行。解决的办法也有两个:用 JDK 1.4 重新编译;或者换用支持 JDK 1.5 的服务器,也就是升级到 WebLogic 9.2。
Servlet 2.3 规范生成的 web.xml 头部:
Xml代码 复制代码 收藏代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>   
  2. <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"   
  3. "http://java.sun.com/dtd/web-app_2_3.dtd">   
  4. <web-app>   
  5. ...   
  6. </web-app>  
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd"> 
<web-app> 
... 
</web-app> 
Servlet 2.4 规范生成的 web.xml 头部:
Xml代码 复制代码 收藏代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>   
  2. <web-appversion="2.4"xmlns="http://java.sun.com/xml/ns/j2ee"   
  3. xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance   
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   
  5. http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">   
  6. <web-app>   
  7. ...   
  8. </web-app>  
<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="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> 
... 
</web-app> 
Servlet 2.5 规范生成的 web.xml 头部:
Xml代码 复制代码 收藏代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>   
  2. <web-appversion="2.5"xmlns="http://java.sun.com/xml/ns/javaee" 
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
  6. <web-app>   
  7. ...   
  8. </web-app>  
<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<web-app> 
... 
</web-app> 
二、安装/配置环境(weblogic)     参考(配置Weblogic9.x 图解说明 以及和myEclipse集成:http://hi.baidu.com/bluewhale84/blog/item/649893f756835d26730eecf6.html);
三、注意问题     1、启动时报错:
Java代码 复制代码 收藏代码
  1. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed 
The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
     问题原因:web.xml文件的Schema(XSD)版本错误,weblogic9.2只支持到Servlet 2.4 规范生成的 web.xml 头部。      解决方案:web.xml文件的头部换成Servlet 2.4 规范生成的 web.xml 头部即可。
    2、运行时报错:
Java代码 复制代码 收藏代码
  1. Error 404--Not Found   
  2. From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:  
  3. 10.4.5404 Not Found  
  4. The server has not found anything matching the Request-URI.... 
Error 404--Not Found 
From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
10.4.5 404 Not Found
The server has not found anything matching the Request-URI....
      问题原因:domains\<domainName>\config\config.xml配置有误。
       解决方案:找到domains\<domainName>\目录下面的servers文件夹,将其删除即可(此文件夹为启动服务器时自动生成的文件夹,会自动生成项目部署的相关配置,并且在新生成的servers\domain_bak\config_prev\目录下会备份上次的配置文件config.xml)。
posted on 2012-11-14 16:18  lianxin  阅读(862)  评论(0编辑  收藏  举报