weblogic8+oracle9i向jboss4.0.5+Oracle9i的迁移2(共2篇)

本文分享了从WebLogic迁移到JBoss的过程与经验,重点介绍了数据源配置、EAR包结构调整、EJB迁移及代码级别的调整等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前在做一个迁移项目(jsp+struts+ejb2.0),特把迁移重点记录下来存档
原系统平台:weblogic8+oracle9i
目标系统1:jboss4.0.5+oracle9i
目标系统2:jboss4.0.5+sqlserver2000 sp4

--第二篇--
(以下文章内容仅个人观点,如有错误,欢迎交流)

首先介绍到迁移到目标系统1,即jboss4.0.5+oracle9i平台的迁移,即从weblogic到jboss的迁移,数据库无变化(应用服务器级迁移要比后端数据库级迁移容易方便的多,后面的文章中会有介绍):
迁移层次及步骤:
一,应用服务器级的迁移
主要是对wls和jboss中配置的迁移,本项目比较简单,只需迁移数据源配置即可

1,weblogic中使用的管理控制台配置连接池和数据源

2,jboss通过增加.xml的数据源配置文件配置数据源,配置文件部署之前需要把其中所需要的数据库驱动类(.jar包)放入jboss的类加载路径中.一般需要放在$JBOSS_HOME/server/default/lib中即可
oracle数据源文件的配置如下(使用local-tx-datasource,保证ejb声明式事务类型):
<datasources>
  <local-tx-datasource>
    <jndi-name>DataSource</jndi-name>
    <connection-url>jdbc:oracle:thin:@ip:1521:sid</connection-url>
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>user</user-name>
    <password>pwd</password>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
  </local-tx-datasource>
</datasources>


二,应用程序结构级的迁移
一,EAR包结构变化
1,weblogic平台ear包,下面包括一个war的目录(不带war扩展名)及ejb.jar
  weblogic相对jboss和websphere对j2ee规范要求不是很严格,其中的war包是否带扩展名或是否打成jar格式都无所谓

2,jboss平台中,其下的web应用(目录格式或打包)必须带.war扩展名.否则部署失败

二,EJB的迁移(本处使用session stateless EJB)
EJB主要是针对DD文件迁移,两个平台的标准的ejb部署描述文件:ejb-jar.xml不需要任何变动,
只需修改另外一个应用服务器相关的DD文件(主要是描述JNDI Name)即可:
1,weblogic的DD文件:ejb-jar.xml+weblogic-ejb-jar.xml
weblogic-ejb-jar.xml的描述格式举例:
<weblogic-enterprise-bean>
 <ejb-name>Borrower</ejb-name>
 <jndi-name>com.young.npl.borrower.ejb.Borrower</jndi-name>
</weblogic-enterprise-bean>

2,jboss的DD文件:ejb-jar.xml+jboss.xml
<session>
 <ejb-name>Borrower</ejb-name>
 <jndi-name>com.young.npl.borrower.ejb.Borrower</jndi-name>
</session>


三,代码级迁移
1,使用JNDI查数据源的格式需要修改
 weblogic格式:DataSource

 jboss格式:java:/DataSource (需要增加"java:/"前缀)


2,jsp包含文件的编译方式
weblogic不允许在jsp的包含文件与原文件中同时存在重复的声明和定义,但jboss却允许.
此问题发生在jsp字符集<%@page contentType...%>,在weblogic中不可以同时存在于公共包含文件及主文件中,否则编译出错;
在jboss中,如果公共包含文件中存在中文,则必须包含上述字符集代码行,而且包含页面也必须包含字符集代码行;
jsp中的其它引用标记也同样符合两种平台以上规则:weblogic不允许重复引入;而jboss可以

3,jsp标记大小写问题
当使用jsp taglib时,发现两种平台居然对大小写有着不同的编译方式:
比如:<html:form action="***" onSubmit="***">
在weblogic中, onSubmit中的S大小写都可以;但jboss中S必须小写;


在这次迁移中暂时发现以上问题,修改后系统运行基本正常.
以后的日志会写到此软件系统从weblogic813>>websphere6上的迁移过程,和向jboss上迁移规范变动要更多一些.
文章中技术观点限于本人水平,可能会有不当或错误之处,望大家指点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值