您好我有一个项目,其中编码在java上,此代码使用swing,ejb和ibm的websphere因为它在2001年被某人编码,所以我必须将其转换为在glassfish 2.0上使用它。问题是在这段代码中使用了ibm的websphere的api就像
一样com.ibm.ejs.util.Uuid;
com.ibm.ivj.ejb.runtime.AbstractAccessBean;
com.ibm.ivj.ejb.runtime.AbstractSessionAccessBean;
com.ibm.etools.ejb.client.runtime.AbstractEJBFactory;
com.ibm.ejs.container.EJSWrapper;
com.ibm.ejs.container.*;
com.ibm.ejs.persistence.EJSJDBCPersister;
com.ibm.websphere.cpi.PersisterHome
com.ibm.ejs.container.*;
com.ibm.ejs.container.*;
com.ibm.ivj.ejb.associations.interfaces.Link;
com.ibm.ivj.ejb.runtime.AbstractAccessBean;
com.ibm.ivj.ejb.runtime.AbstractSessionAccessBean;
com.ibm.xml.parsers.SAXParser;
COM.ibm.db2.jdbc.DB2BaseDataSource;
COM.ibm.db2.jdbc.DB2DataSource;
我不想使用websphere,也没有找到任何jar文件来导入glassfish上的那些类,所以请建议我如何转换它。
答案 0 :(得分:1)
您提到的类是由WSAD(WebSphere Application Developer,它是RAD的祖先)在构建过程的“生成部署和rmic代码”阶段生成的。你也可以从类名中告诉它,它可能有一些有趣的前缀和附加原始bean名称的后缀,并且位于同一个包中。因此,开发人员自己不编写这些类,它们是为WebSphere生成的,在从其他供应商迁移到应用程序服务器之前,它们将被省略(从项目中清除)。关于如何摆脱这些课程,您可以在下面的技术说明中找到说明。
EJBDeploy generation and deletion of stubs, ties and generated deploy code
我会说你在这里有一对问题,因为新服务器目前不支持使用的大多数Enterprise Java规范(它可能是1.2,因为它很老)。因此,您必须首先执行规范级别迁移,然后执行应用程序服
对于规范级别迁移(至少是Java EE 1.2到1.4),我认为最好的办法是使用RAD(Rational Application Developer),它可以使用简单的向导执行规范迁移。您可以在以下文章中找到有关如何执行此迁移的信息。
Migrating the specification level of J2EE projects
升级规范级别后,将项目迁移到另一台服务器会更容易,因为随着规范级别的增加,服务器到服务器迁移的工作量会减少。此时,您将基本上为目标服务器(Glassfish)准备应用程序服务器特定的部署描述符,您应该检查glassfish网站。一个很好的切入点是Glassfish迁移维基和Glassfish验证工具(我不能把链接放到这些因为我没有足够的声誉来发布超过两个链接:)
答案 1 :(得分:0)
我不知道转换此类项目的任何“简单”方法。您最终必须手动将所有相关部件更改为更新的规格。我假设你真的不愿意升级到GF 2.0?你应该至少移动到2.1。我强烈建议转到3.1。