①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。
Servlet 2.3 规范生成的 web.xml 头部:
xml version="1.0" encoding="UTF-8"?>
<!--</span-->DOCTYPE web-app P LIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
...
<!--</span-->web-app>
Servlet 2.4 规范生成的 web.xml 头部:
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">
...
<!--</span-->web-app>
②若在上一个问题选择了 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。
配置 WebLogic 9.2
安装 WebLogic 比较容易,在这里就不再累述了,大家可以参阅相关文档。现在着重讲一下 WebLogic 的配置,因为后面在配置 MyEclipse 时将用到这里的配置信息。
①运行开始 -> 程序 -> BEA Prod ts -> Tools -> Configuration Wizard。
②选择 Create a new WebLogic domain,Next。
③在 Select Domain Source 界面保持默认,Next。
④在 User name 处输入 user,两个 password 都输入 12345678(密码要求 8 位),Next。
⑤ 在 Configure Server Start Mode and JDK 界面中保持默认,即 JDK 选择的是“Sun SDK 1.5.0_04 @ C:“BEA“jdk150_04”,注意这里若选择“Other JDK”配置比 SDK 1.5.0_04 更高的版本,服务器启动时将会出现异常,所以最好保持默认,然后 Next。
⑥在 Customize Environment and Services Settings 界面中默认为 No,Next。
⑦在 Domain name 处输入 mydomain,点击 Create。
⑧完成后点击 Done 关闭 Configuration Wizard 对话框。
⑨ 运行开始 -> 程序 -> BEA Prod ts -> User Projects -> mydomain -> Start Admin Server for Weblogic Server Domain,检查服务器是否启动成功。
配置 MyEclipse 的 WebLogic 9 服务器
启 动 Eclipse,选择“Window -> Preferences”菜单,打开首选项对话框。展开 MyEclipse 下的 Application Servers 节点,点击 WebLogic 9,选中右边的 Enable 单选按钮,启用 WebLogic 服务器。配置
①BEA home directory:C:“BEA(假定 WebLogic 安装在 C:“BEA 目录中)
②WebLogic installation directory:C:“BEA“WebLogic92
③Admin username:user(来自 WebLogic 中的配置)
④Admin password:12345678(来自 WebLogic 中的配置)
⑤Execution domain root:C:“BEA“user_projects“domains“mydomain
⑥Execution server name:AdminServer
⑦Security policy file:C:“BEA“WebLogic92“server“lib“weblogic.policy
⑧JAAS login configuration file:(Null)
接着展开 WebLogic 9 节点,点击 JDK,在右边的 WLS JDK name 处选择 WebLogic 9 的默认 JDK。这里组合框中缺省为单独安装的 JRE。单击 Add 按钮,弹出 WebLogic -> Add JVM 对话框,在 JRE 主目录处选择 WebLogic 安装文件夹中的 JDK 文件夹,我的版本为 C:“BEA“jdk150_04,程序会自动填充其他选项。单击确定按钮关闭对话框。这时候就可以在 WLS JDK name 组合框中选择 jdk150_04 了。
至此,MyEclipse 中 WebLogic 9 的配置工作就算完成了。下面可以看看在 Eclipse 中能否启动 WebLogic 服务器了?安装了 MyEclipse 之后,Eclipse 工具栏中就会有一个“Run/Stop/Restart MyEclipse Application Servers”下拉按钮。点击该按钮的下拉部分,选择“WebLogic 9 -> Start”菜单,即开始启动 WebLogic 了。通过查看控制台的消息,就可以检查启动是否成功,或发生什么异常。
补充配置
点击 Paths,在右边的 Prepend to classpath 列表框中,通过 Add JAR/ZIP 按钮,加入:
C:“BEA“WebLogic81“server“lib“weblogic.jar
C:“BEA“WebLogic81“server“lib“webservices.jar
如果要用到数据库,还需要把数据库的驱动类库添加进来,这里我们用 WebLogic 自带的 SQL Server 数据库驱动类库:
C:“BEA“WebLogic81“server“lib“mssqlserver4v65.jar |||
对常见启动问题
出现 The WebLogic Server did not start up properly. 提示和 java.io.InvalidClassException 异常的问题,通常是因为 JDK 选择不当引起的,在 MyEclipse 的配置中选择的 JDK 应该必须与配置 WebLogic 时选择的 JDK 相同。当选择默认 JDK 时,也可以在 MyEclipse 中配置 BEA 的 jrockit90_150_04 这个 JDK。