IBM Rational Web Developer for Windows and Linux V6.0 迁移指南
第 1 章 从 WebSphere Studio V5.1、5.1.1 或 5.1.2 进行迁移
第 2 章 更新 Rational Web Developer V6.0 中 Web 项目的 Faces 运行时资源
第 3 章 迁移 J2EE 项目
第 4 章 WebSphere 测试环境的更改
此文档提供了用于从 WebSphere(R) Studio Site Developer V5.1.x 迁移到 Rational(R) Web Developer V6.0 的指示信息。
可以在下列主题中找到其它信息:
有关使用
Rational Web Developer
的信息可以在联机帮助中找到。
有关更新的文档,参阅
www.ibm.com/developerworks/rational。
有关从
WebSphere
Studio 的先前版本迁移到 V5.x 或从
VisualAge(R) for
Java(TM)
迁移到 WebSphere Studio 的信息,请访问
www.ibm.com/software/awdtools/studioappdev/support/
并搜索《迁移指南》。
要从 WebSphere Studio V5.1.x 进行迁移:
- 在安装之前,阅读与 Eclipse V2.x 和 WebSphere Studio V5.1.x 的兼容性。注意,对于从
WebSphere
Studio V5.1.2 的 Portal Toolkit V5.0.2.2 迁移的 Portlet
应用程序项目,不支持向后兼容性。
- 备份
WebSphere Studio V5.1.x 工作空间。
- 安装
Rational Web
Developer。请参阅《安装指南》(install.html
文件),它在第一张产品 CD 的根目录中。
- 建议:缺省情况下,第一次启动
Rational Web Developer
时,会提示您确认您想要使用称为 rationalsdp6.0\workspace
的工作空间。也就是说,“工作空间启动程序”对话框指向的目录不是
WebSphere Studio
工作空间的目录。要在迁移旧的工作空间之前尝试使用新的环境,则在启动
Rational Web Developer
时接受缺省值或指定其它新目录名。例如,您可能会这样做以便您可以创建一个或两个测试项目、阅读新增内容(帮助 -> 欢迎)、学习一些新的教程(帮助 -> 教程库)或实践一些新的样本(帮助 -> 样本库)。
- 将项目迁移到
V6.0。可按如下所示将
WebSphere Studio V5.1.x
中创建的项目自动迁移到 V6.0:
- 迁移工作空间:当准备好迁移 V5.1.x
工作空间以长久使用它时,用旧的工作空间启动
Rational Web
Developer。进度指示器确认正在自动迁移项目。
注意:在工作空间迁移期间,将打开一个问题对话框,显示的消息为未能复原工作台布局。原因:复原工作台期间发生了问题。这些错误消息不会对工作空间的成功迁移产生任何影响。通过单击错误对话框中的详细信息按钮记下不能复原的透视图的名称,然后单击确定以关闭对话框。
要复原透视图:
- 通过选择窗口 -> 关闭透视图来关闭透视图。
- 通过选择窗口 -> 打开透视图重新打开透视图。
- 注:
- 对于
WebSphere Studio V5.1.2 中使用 EGL Web
透视图的企业生成语言(EGL)项目:在
Rational Web Developer V6.0
中除去了此透视图。在
Rational Web Developer V6.0
中不需要此透视图就可以安全迁移所有 EGL
项目。如果使用 EGL Web 透视图,则执行以下操作:
- 关闭 EGL Web
透视图。
- 在“首选项”(窗口 -> 首选项)中启用 EGL 功能。有关启用
EGL 功能的详细信息,参阅联机帮助。
- 选择窗口 -> 打开透视图并选择 Web
透视图。
- 迁移从
SCM(源代码管理)系统装入的项目:存在于 SCM
系统中的来自 WebSphere Studio 5.1.x
的项目将在将把它装入到
Rational Web Developer
中时自动迁移到 V6.0。
- 使用“项目交换”迁移导入的项目:使用“项目交换”功能部件从
WebSphere Studio V5.1.2 或 V5.1.1 导出并导入到
Rational Web Developer V6.0
中的项目将自动迁移到
V6.0。 “项目交换”功能部件在
WebSphere Studio V5.1.2 中可用,对于
V5.1.1,它是一个可选插件。
注意:
- 对于迁移到 V6.0
的每个 V5.1.x 项目,迁移程序自动将一个 .compatibility
文件添加至 V6.0 的项目文件夹中。此文件用于与
WebSphere Studio V5.1.x
向后兼容。不要编辑或删除此文件。有关更多信息,请参阅有关与 WebSphere Studio V5.1.x 的兼容性的章节。
要点:
- 如果有与迁移的工作空间相关联的调试启动配置,则应注意,将不会自动迁移某些启动配置。有关如何将启动配置复原到迁移的工作空间的信息,请参阅
V6.0 中的调试器更改。
- 如果对迁移的工作空间中的项目使用
XSLT 调试器或 EGL 调试器,则您将需要更改随
Rational Web Developer V6.0 安装的
Java
运行时环境(JRE)。有关如何进行此更改的详细信息,参阅
V6.0 中的调试器更改。
- 如果使用“企业生成语言”开发了程序,并且已将这些程序迁移到
V6.0,则应注意 V6.0 中有新的 EGL
保留字。如果使用了这些保留字作为变量或部件名,则需要更改它们。请参阅
V6.0 中的 EGL 保留字。
- DB2(R) Net JDBC
驱动程序在
Rational Web Developer V6.0
中不受支持。如果使用
DB2 Net JDBC
驱动程序创建了 JDBC 连接,则在
Rational Web Developer V6.0
中将不能重新连接。将需要更改连接以使用其中一个受支持的
JDBC 驱动程序。有关在 V6.0 中受支持的 JDBC
驱动程序的更多信息,请参阅联机帮助。
- 如果从
WebSphere Studio Site Developer V5.1.x
迁移的 Web 或 XML 文件内容使用了 Shift_JIS
字符集并且包括供应商选择的字符,则必须改为指定
Windows-31J 字符集。
- 如果随
WebSphere Studio Site Developer V5.1.x
安装了任何供应商插件,则需要获取 V6.0
的相应插件并重新安装它们。
- 如果使用需要“代理控制器”的功能部件,则通过安装
Rational Web Developer
提供的版本升级它。有关详细信息,请参阅《安装指南》。
- 要从
VisualAge Generator 迁移,在联机帮助中的
VisualAge Generator to EGL Migration Guide
帮助主题下面,请参阅 PDF 格式的
VisualAge Generator to Enterprise Generation Language (EGL) Migration Guide
中的 Installing and migrating 一节。最新的副本可从
http://www.ibm.com/developerworks/rational/library/egldoc.html
中获取。
当在 Rational Web Developer 中第一次打开任何 WebSphere Studio V5.1.x 工作空间时,就会自动迁移它。一旦迁移了工作空间,就不再能够在 WebSphere Studio Site Developer 中打开它。但是,V6.0 工作空间中的项目仍然可以与 WebSphere Studio V5.1.x 共享,方法是使用源代码管理(SCM)系统(如 Rational ClearCase(R))、使用“项目交换”导入和导出项目以及导入归档和导出项目。要点:从 Portal Toolkit V5.0.2.2 迁移到 Rational Web Developer V6.0 中的门户网站工具的 Portlet 应用程序将不会向后兼容。
- 注:
- 以下内容不适用于
Portlet 应用程序项目。
只要您不执行下列任何操作,使用“项目交换”从
SCM 系统或者从另一个开发者装入到 V6.0 的现有 V5.1.x
项目就可与 V5.1.x 共享:
- 改变添加至迁移工具创建的
.project 文件和 .compatiblity 文件的兼容性元数据。
- 从那些项目中删除
.compatibility 文件。
当在
Rational Web Developer V6.0
工作空间中打开 V5.1.x
项目时,会自动在项目目录中创建 .compatibility
文件。在迁移项目资源时,Rational Web Developer 使用
.compatibility
文件跟踪这些资源的时间戳记。您不应编辑或删除它。
有关禁用与
WebSphere Studio Site Developer V5.1.x
的兼容性的信息,参阅禁用与 WebSphere Studio V5.1.x 的兼容性。
Eclipse 注意事项
此版本的 Rational Web Developer 基于 Eclipse
V3.0。如果您开发您自己的插件,则在迁移之前应阅读对平台的更改。
有关详细信息,参阅
Rational Web Developer V6.0
的安装位置的子目录
eclipse\readme
中的自述文件。该自述文件中有关迁移的几节内容包括:
- 与前发行版的兼容性
- 从前发行版升级工作空间
- 与前发行版的互操作性
J2EE 项目兼容性
WebSphere Studio V5.1.x 中创建的项目与
Rational Web Developer V6.0
的兼容性是通过迁移 V5.1.x 工作空间时自动添加至
.project 文件的元数据启用的。同样,如果在
Rational Web Developer V6.0 中创建新的
J2EE 1.2 或 1.3
模块或应用程序,构建元数据将自动添加至 .project
文件以便与 V5.1.x
兼容。不要直接编辑或删除此信息。
- 注:
- 因为在
WebSphere Studio Site Developer
中不能使用 V6.0 构建器,因此当在 V5.1.x 中使用在 V6.0
中创建的新的 J2EE 1.2 和 J2EE 1.3
模块或应用程序时,此兼容性元数据将导致显示或记录有关“缺少构建器”的消息。这些消息是正常的;可以忽略它们。
只要存在此兼容性元数据,当将
Rational Web Developer V6.0 项目装回到
WebSphere
Studio V5.1.x
中时,将会向您显示有关“缺少构建器”的消息。以下是“缺少构建器”消息的示例:
!ENTRY org.eclipse.core.resources 2 1 Sep 06, 2004 19:55:20.592
!消息 跳过了项目 Test60EARWeb 的 com.ibm.wtp.j2ee.LibCopyBuilder 构建器。安装时缺少该构建器,或者它属于缺少或被禁用的项目性质。
这些消息是正常的;可以忽略它们。当您确定不再需要使用
WebSphere
Studio V5.1.x
中的给定项目时,可以通过禁用该项目的向后兼容性来停止消息。
要点:在 V6.0 中创建的新 J2EE 1.2 或 1.3
规范项目与 WebSphere Studio V5.1.x
兼容,但一旦将项目装入到
WebSphere
Studio,就需要执行一些手工步骤才能使用项目。这些步骤是必需的,原因是在
6.0 中创建的新的 J2EE 1.2 或 1.3
规范项目的运行时目标与 V5.1.x
中的目标服务器不直接向后兼容。在 V5.1.x 中装入新的
V6.0 项目之后的手工步骤如下所示:
- 对于具有
.classpath 文件的每个 J2EE 项目,打开
.classpath 文件。
- 从 .classpath
文件中删除以下类路径条目,然后保存并关闭文件。
-
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/
org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/WebSphere v5.1 JRE"/>
-
<classpathentry kind="con"
path="com.ibm.wtp.server.java.core.container/
com.ibm.etools.websphere.runtime.core.runtimeTarget.v51/was.base.v51"/>
- 确保在 J2EE
首选项页面中启用了确定目标服务器支持。选择窗口 -> 首选项 -> J2EE
并确认选择了“确定目标服务器支持”下面的启用确定目标服务器支持。
- 右键单击项目并选择属性 -> J2EE。
- 选择项目中运行时目标的对应目标服务器(例如,使用
JDK 1.4 运行时环境的
WebSphere
Application Server
V5.1),然后单击确定。
- 您选择的目标服务器将与
Rational Web Developer V6.0 和
WebSphere Studio Site Developer V5.1.x
都兼容。当将更改落实到 SCM 系统中之后,通过使用 SCM
系统,J2EE 项目在 V5.1.x 与 V6.0
之间就是可互操作的了。
- 注:
- 如果在
Rational Web Developer V6.0
中又设置了目标服务器,则 J2EE
项目兼容性将会丢失,并且需要重新建立。
与 WebSphere Studio Site Developer V5.1.x 的兼容性可从在 Rational Web Developer V6.0 中创建的企业应用程序项目中或从较早版本的 WebSphere Studio 迁移的企业应用程序项目中完全除去。仅当您确定企业应用程序项目不应再与 V5.1.x 可互操作或兼容时,才应禁用与 WebSphere Studio V5.1.x 的兼容性。
要除去与
WebSphere Studio Site Developer V5.1.x
的兼容性:
- 右键单击企业应用程序项目并从弹出菜单中选择除去兼容性菜单选项。
- 将出现一个对话框,让您确认是否除去企业应用程序项目及该项目下嵌套的所有模块和实用程序项目的向后兼容性。
- 单击是以继续“除去兼容性”操作。
一旦运行了“除去兼容性”操作,企业应用程序项目和该企业应用程序项目下嵌套的所有模块和实用程序项目就不再与 WebSphere Studio Site Developer V5.1.x
向后兼容。
已经对 Rational Web Developer V6.0.1 更新了 WebSphere Studio Site Developer V5.1.x 中最初提供的 JavaServer Faces 运行时资源。如果想要继续在使用此先前产品版本创建的 Web 项目上进行开发,建议您将 Faces 运行时资源更新为最新级别。
在
Rational Web Developer V6.0.1
中,当导入 Web
项目或者打开包含过时资源的工作空间时,就会自动更新
Faces 运行时资源。在
Rational Web Developer V6.0.1
中,导入来自
WebSphere Studio Site Developer V5.1.x 的
Web 项目或者打开来自 V5.1.x
的工作空间之后,将提示您将 Faces
运行时资源更新为最新级别。
自动更新运行时资源
要自动更新 Web 项目的 Faces 运行时资源:
- 导入一个包含来自于
WebSphere Studio Site Developer V5.1.x 的
Faces Client 内容的 Web
项目(或工作空间)。“项目迁移”窗口将打开。
- 注:
- 如果“项目迁移”窗口未打开,则可能已经禁用了自动构建首选项设置。在“项目资源管理器”中,右键单击
Web
项目并选择构建 -> 项目;重建项目的过程将打开“项目迁移”窗口。
- 如果工作空间中具有其它包含
Faces 内容的 Web
项目,则选择将此选项应用于需要升级的其它任何项目,就会更新所有
Web 项目。
- 单击下列其中一项:
- 单击是以自动完成更新。
- 单击稍后以延迟更新。要在选择稍后之后自动更新运行时资源,您必须先关闭然后重新打开
Web 项目,或者在重建 Web
项目之前重新启动工作台。如果已经禁用了自动构建,则右键单击
Web 项目并选择构建项目。
- 单击从不以保持运行时资源后备级别。如果您选择从不并且有意保持后备级别运行时资源,则将不会再次提示您更新它们。如果您将来需要这些运行时资源,则需要手工更新它们。
- 注:
- 如果您创建了包含
Faces Client 组件的 Faces JSP,则必须单独将 Faces Client
组件运行时资源更新为最新级别。请参阅更新 Web 项目中的 Faces Client 运行时资源。
手工更新运行时资源
要手工更新 Web 项目的 Faces
运行时资源:
- 将具有 Faces
内容的现有 Web 项目导入到
Rational Web Developer V6.0.1
工作空间中。
- 创建一个新的名为
JSF601 的 Web
项目(或者,如果正在使用 EGL,则创建一个新的 EGL Web
项目)。仅将此项目用作最新运行时资源的源;在完成更新之后可以删除它。
- 在“项目资源管理器”中,右键单击
JSF601
项目并从菜单中选择属性。
- 单击
Web
项目功能部件并选择添加 Faces
基本组件和添加 Faces Client
框架,然后单击确定。
- 如果正在使用
EGL,则按如下所示创建一个 JSF 页文件:
- 右键单击新的
EGL Web 项目的 WebContent 文件夹。
- 选择新建 -> 其它 -> Faces JSP
文件。
eglintdebug.jar 和
eglintdebugsupport.jar
文件便被添加到项目中。
- 对于想要更新的每个现有
Faces 项目,执行下列操作:
- 在“项目资源管理器”中展开现有项目以显示
WebContent/WEB-INF/lib/
文件夹中的文件。找到此目录中的下列任何 JAR
文件并删除它们:
- eglintdebug.jar(仅适用于
EGL)
- eglintdebugsupport.jar(仅适用于
EGL)
- fda.jar(仅适用于
EGL)
- fdaj.jar(仅适用于
EGL)
- jsf-api.jar
- jsf-ibm.jar
- jsf-impl.jar
- odc-jsf.jar
- 找到文件
WebContent/WEB-INF/faces-config.xml
并打开它。如果下列元素不存在,则将它们添加到此配置文件中:
<lifecycle>
<phase-listener>com.ibm.faces.webapp.ValueResourcePhaseListener</phase-listener>
</lifecycle>
<application>
<variable-resolver>com.ibm.faces.databind.SelectItemsVarResolver</variable-resolver>
<property-resolver>com.ibm.faces.databind.SelectItemsPropResolver</property-resolver>
</application>
- 对于删除的任何
JAR 文件,复制 JSF601 项目的
WebContent/WEB-INF/lib
目录中的同名 JAR
文件并将其粘贴到原始项目中的同一位置。某些配置并不需要在项目中有所有这些
JAR 文件;如果原始项目没有某个 JAR
文件,则不要复制它。
- 在原始项目中打开
web.xml
部署描述符并将下列内容添加至配置:
<context-param>
<param-name>com.ibm.ws.jsf.JSP_UPDATE_CHECK</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.ibm.ws.jsf.LOAD_FACES_CONFIG_AT_STARTUP</param-name>
<param-value>true</param-value>
</context-param>
- 如果原始项目使用
WebSphere
数据对象(WDO)来进行任何数据访问,则执行下列附加步骤:
- 在原始项目中,单击文件 -> 新建 -> Faces JSP 文件以创建新的临时 Faces JSP
文件。
- 将关系记录列表组件从选用板的“数据”抽屉拖到该页面中。
- 选取任何连接和数据源并单击完成。所选数据不重要。此过程将生成任何必需的配置以在此项目中继续使用
WDO。
- 删除临时 JSP
文件。
- 如果正在使用 EGL,则右键单击每个 EGL
Web
项目的名称并单击生成;接着,如果不想自动构建项目,则单击项目 -> 全部构建。
- 删除
JSF601 Web 项目。
已经对 Rational Web Developer V6.0.1 更新了 WebSphere Studio Site Developer V5.1.x 中最初提供的 JavaServer Faces Client 运行时资源。如果想要继续在使用此先前产品版本创建的 Web 项目上进行开发,建议您将 Faces Client 运行时资源更新为最新级别。
在
Rational Web Developer V6.0.1
中,当导入 Web
项目或者打开包含过时资源的工作空间时,就会自动更新
Faces Client 运行时资源。在
Rational Web Developer V6.0.1
中,导入来自
WebSphere Studio Site Developer V5.1.x 的
Web 项目或者打开来自 V5.1.x
的工作空间之后,将提示您将 Faces Client
运行时资源更新为最新级别。
自动更新运行时资源
要自动更新 Web 项目的 Faces Client
运行时资源:
- 导入一个包含来自于
WebSphere Studio Site Developer V5.1.x 的
Faces Client 内容的 Web
项目(或工作空间)。“项目迁移”窗口将打开。
- 注:
- 如果“项目迁移”窗口未打开,则可能已经禁用了自动构建首选项设置。在“项目资源管理器”中,右键单击
Web
项目并选择构建 -> 项目;重建项目的过程将打开“项目迁移”窗口。
- 如果工作空间中具有其它包含
Faces Client 内容的 Web
项目,则选择将此选项应用于需要升级的其它任何项目,就会更新所有
Web 项目。
- 单击下列其中一项:
- 单击是以自动完成更新。
- 单击稍后以延迟更新。要在选择稍后之后自动更新运行时资源,您必须先关闭然后重新打开
Web 项目,或者在重建 Web
项目之前重新启动工作台。如果已经禁用了自动构建,则右键单击
Web
项目并选择构建项目。
- 单击从不以保持运行时资源后备级别。如果您选择从不并且有意保持后备级别运行时资源,则将不会再次提示您更新它们。如果您将来需要这些运行时资源,则需要手工更新它们。
- 从 Web 项目中的
Java
资源 -> JavaSource 文件夹中,删除命名约定为
com.ibm.dynwdo4jsmediators.<client-data-name>
的所有客户机数据介体类包。不要删除名为 com.ibm.dynwdo4jsmediators
的包。此包包含项目中客户机数据的元数据(ecore 和
emap 文件),它们将用来重新生成介体。
- 从 Web 项目中的
Java
资源 -> JavaSource 文件夹中,打开
OdysseyBrowserFramework.properties 文件并删除
EMAP_FILES 和
ECORE_FILES 的条目。
- 对于“客户机数据”视图中的每个数据对象:
- 右键单击并选择配置。
- 在高级选项卡上,单击从服务器端的数据重新生成以便为数据对象重新生成所有介体。
手工更新运行时资源
要手工更新 Web 项目的 Faces Client
运行时资源:
- 完成更新 Web 项目中的 Faces 运行时资源中的手工更新运行时资源步骤。
- 完成上面的自动更新运行时资源这一节中的步骤 4
到步骤 6。
当将包含 Faces Client
组件的项目的目标服务器从
WebSphere
Application Server V5.1 更改为 V6.0
时可能会产生问题。
当将包含 Faces
Client 组件的项目的目标服务器从
WebSphere
Application Server V5.1 更改为 V6.0 时可能会产生两个问题:
- 将不再编译已经生成的客户机数据介体类。需要重新生成它们,一次一个
JSP。
- 打开根
Java
源文件夹中的 OdysseyBrowserFramework.properties
文件。保存内容以供将来使用。
- 在
OdysseyBrowserFramework.properties 文件中,对于 Web
项目中包含 Faces 客户机数据的每个 JSP,查找 EMAP_FILES
和 ECORE_FILES 属性的 <client-data-name>.ecore 和
<client-data-name>.emap 条目。
- 只保留与 JSP
上的客户机数据相匹配的条目,删除所有其它条目。
例如,当前页面具有称为
ACCOUNT
的“客户机数据”,而属性文件具有类似如下的条目:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap com\\ibm\\dynwdo4jsmediators/orders.emap
应从该条目中删除 com\\ibm\\dynwdo4jsmediators/orders.emap。现在,该条目的内容如下:
EMAP_FILES=com\\ibm\\dynwdo4jsmediators/account.emap
- 保存该属性文件。
- 在 JSP
中选择客户机数据对象,然后单击右键并选择配置。
- 在高级选项卡上,单击全部重新生成。这将重新生成当前 JSP
上的所有客户机数据所需的所有工件。
- 对 Web
项目中包含客户机数据的每个 JSP 重复步骤 2 到步骤
6。
- 在重新生成客户机数据介体类之后,仍然存在一些不会编译的介体类。这些是
V6.x
中的“服务数据对象”(SDO)中不再使用的模式元素的介体,并且这些介体的命名约束为
*_DataGraphSchema_wdo4js_*.java 和 *_RootDataObject_wdo4js_*.java。从
Web
项目中删除这些介体类以防止发生这些编译错误。
- 在成功完成更新之后,恢复
OdysseyBrowserFramework.properties
文件的原始内容。
- 在将项目的目标服务器更改为
WebSphere
Application Server V6.0 之后,绑定至 WDO 的树形视图 Faces
Client 组件无法在服务器上运行。变通方法是修改 JSP
的“源代码”视图以将所有 className 标记更改为使用
SDO DataObject 类而不是使用 WDO DataObject
类。例如,对于名为
account 的 WDO:
- 对于根对象,将
className 标记从
className="com.ibm.etools.wdo.DataObject(DynWDO`account`RootDataObject)"
更改为 className="commonj.sdo.DataObject(DynWDO`account`DataGraphRoot)"。
- 对于所有子节点,将
className 标记从
className="com.ibm.etools.wdo.DataObject(DynWDO`account`ACCOUNT)"
更改为 className="commonj.sdo.DataObject(DynWDO`account`ACCOUNT)",其中
ACCOUNT 是数据节点的名称。
升级到自动差别处理程序和处理器
现在会自动生成差别处理器和处理程序。如果在
WebSphere
Studio V5.1.x 中为 Faces Client
组件编写了差别处理程序和处理器,则建议您废弃该代码并使用自动生成的处理器和处理程序:
- 对 Web
项目中每个客户机数据对象生成新的差别处理程序和处理器。
- 选择客户机数据对象,右键单击并选择配置。
- 在高级选项卡上,单击全部重新生成。
- 除去为调用差别处理器和处理程序而编写的代码,原因是会自动调用生成的处理器和处理程序。以前,使用此代码的典型示例是用于“命令按钮”组件的“命令”事件,如下所示:
String Diff = getClientData1().getDiffStr();
if (DiffProcessor.Synch(getRoot(), Diff) == true)
return "";
return "failure";
- 从 Web
项目中除去与您创建的旧的定制处理程序和处理器对应的文件。
保留为 V5.1.x
编写的定制差别处理程序和处理器
虽然建议不要这么做,但是如果您决定需要保留来自
V5.1.x
的定制差别处理程序和处理器,则需要对它们进行修改才能在
V6.0 中工作,这是因为 DiffHandler 接口和 DiffInfo
类已经更改。
- DiffHandler
接口已按如下所示进行了更改:
- handle
方法现在除了抛出 DiffException 之外还抛出 Exception。
- 框架使用新的
find 方法来查找对象。
- 新的 getId
方法用于调试并允许框架打印对象的值。
find 和 getId
方法由生成的 DiffHandler 内部使用。对于定制
DiffHandler,可以实现空的方法,只是为了与接口兼容。框架将不会调用那些方法。
现在,DiffHandler
接口内容如下:
public interface DiffHandler
{
public void handle(DiffInfo Diff) throws DiffException, Exception;
public Object find (DiffInfo Diff) throws DiffException, Exception;
public String getId (DiffInfo Diff, boolean Original);
}
- DiffInfo
类已按如下所示进行了更改:
- ArrayList
getAncestors() 方法已被 DiffInfo getParent()
方法替换,后者提供了一种简便的方法来以递归方式访问祖先树中的每个对象的信息。
- getCurrent() 和
getOriginal() 方法现在返回 DataObject 对象而不是 EObject
对象。这不是必需的,可以更改代码以使用 DataObject
对象。但是,DataObject 接口比 EObject
接口易于使用并且更直观。可以轻松地将现有代码从
DataObject 对象强制类型转换为 EObject 对象。
- 已添加了一个新的方法
String getPropertyName()
来标识适用于此对象的属性名。例如,如果给定类具有类型相同的两个属性,标识属性名就非常重要了。以前在
DiffInfo 类中,代码可能不能区分这两个属性。
现在,DiffInfo
类的内容如下:
public class DiffInfo
{
public char getCrud()
public DataObject getCurrent()
public String getEClassName()
public DataObject getOriginal()
public String getPropertyName()
public DiffInfo getParent()
}
- 注:
- 不再支持广泛使用
DiffInfo
类,原因是现在会自动生成差别处理器和处理程序。保留旧的处理程序只是一个临时解决方案,强烈建议使用自动生成的处理程序。
在 V6.0 中对 Faces Client 组件的更改
- 支持
WebSphere
Application Server V6.0。
- 支持
WebSphere
Application Server V6.0
上的“服务数据对象”(SDO)。
- 现在支持将 EGL
数据用作客户机数据。
- 自动生成差别处理器和处理程序。
- 存在下列组件的新事件:
- TabbedPanel:onInitialPageShow
- Tree:onNodeExpand、onNodeCollapse、onExpand
和 onCollapse
- DataGrid:onPage、onSort
和 onFilter
对于在 WebSphere Studio V5.1.x 中创建的 Struts Web 项目,必须对 Web 项目的部署描述符稍加修改以便在 WebSphere Application Server V6.0 上运行 EAR 项目。您可能还希望以手工方式将现有的 Struts 1.0.2 或 Struts 1.1 Beta(2 或 3)Web 项目转换为 Struts 1.1。
修改现有 Struts Web 项目的部署描述符
当在
WebSphere
Studio V5.x 中创建了 Struts 项目时,Web
项目的部署描述符中的 config
参数(<param-name>config</param-name>)设置为
WEB-INF/struts-config.xml。WebSphere Application Server V6.0
要求此参数中存在前导“/”。如果在
WebSphere
Application Server V6.0 上运行一个在
WebSphere
Studio V5.1.x 中创建的 Struts Web 项目,则您在启动 EAR
项目时可能会接收到 java.net.MalformedURLException
异常。
- 注:
- 当创建新的 Struts
项目时,Rational Web Developer V6.0
将添加“/”;但是,当从
WebSphere
Studio V5.1x
迁移时,必须手工添加“/”。
在 V6.0
中,遵循下列步骤来更正在
WebSphere
Studio V5.1.x 中创建的 Struts Web 项目的部署描述符:
- 在“项目资源管理器”中打开
Struts Web 项目。
- 在“项目资源管理器”中双击该
Web 项目的 Web 部署描述符文件。Web
部署描述符编辑器将打开。
- 单击源代码选项卡以打开“源代码”页面。
- 将
<param-value>WEB-INF/struts-config.xml</param-value>
这一行(它位于
<servlet></servlet>
标记中)
更改为
<param-value>/WEB-INF/struts-config.xml</param-value>。
- 保存 Web
部署描述符
当重新启动 EAR 项目时不应发生 java.net.MalformedURLException 异常。
将 Struts 1.1 Beta Web 项目转换为 Struts 1.1
在
WebSphere
Studio V5.1.x 中,Struts 运行时库将从 V5.0.x 中的 Struts 1.1
Beta(2 或 3)升级到 Struts
1.1(最终)。如果您想将现有 Struts 1.1 Beta(2 或 3)Web
项目转换为 Struts
1.1(最终),则可以手工转换它们。(注意:不需要将 Struts 1.1 Beta(2 或
3)项目转换为 Struts 1.1。)
要将 Struts 1.1 Beta(2
或 3)项目转换为 Struts 1.1,执行下列操作:
- 将 Struts 1.1 Beta
项目装入到
Rational Web Developer V6.0
工作空间中。
- 创建一个新的 Struts
1.1 Web 项目,例如,名称为
Struts11。创建此临时项目以便能够很方便地访问当您转换实际项目时将需要的
Struts 1.1 运行时文件。完成后可以删除此项目。
- 对于想要转换为
Struts 1.1 的每个 Struts 1.1 Beta 项目,执行下列操作:
- 从项目的 Web
Content/WEB-INF/lib 目录中删除下列 JAR 文件:
- commons-*.jar。
- struts.jar。
- 将下列 JAR 文件从
Struts11/WebContent/WEB-INF/lib 目录复制到项目的 Web
Content/WEB-INF/lib 目录中:
- commons-*.jar。
- struts.jar。
- 从项目的 Web
Content/WEB-INF
目录中删除下列“标记库描述符”(TLD)文件:struts-*.tld。
- 将下列 TLD 文件从
Struts11/WebContent/WEB-INF 目录复制到项目的 Web Content/WEB-INF
目录中:struts-*.tld。
将 Struts 1.0.2 Web 项目转换为 Struts 1.1
在
WebSphere
Studio V5.1.x(和 V5.0.x)中,当将 Struts 支持添加至 Web
项目时,您可以选择 Struts 1.0.2。如果您想将现有 Struts
1.0.2 Web 项目转换为 Struts
1.1,则可以手工转换它们。(注意:不需要将 Struts 1.1 Beta(2 或
3)项目转换为 Struts 1.1。)
要将 Struts 1.0.2
项目转换为 Struts 1.1,执行下列操作:
- 将 Struts 1.0.2
项目装入到
Rational Web Developer V6.0
工作空间中。
- 创建一个新的 Struts
1.1 Web 项目,例如,Struts11。创建此临时项目以便能够很方便地访问当您转换实际项目时将需要的
Struts 1.1 运行时文件。完成后可以删除此项目。
- 对于想要转换为
Struts 1.1 的每个 Struts 1.0.2 项目,执行下列操作:
- 从项目的 Web
Content/WEB-INF/lib 目录中删除 struts.jar 文件。
- 将下列 JAR 文件从
Struts11/WebContent/WEB-INF/lib 目录复制到项目的 Web
Content/WEB-INF/lib 目录中:
- commons-*.jar。
- struts.jar。
- jarkarta-oro.jar。
- 从项目的 Web
Content/WEB-INF
目录中删除下列“标记库描述符”(TLD)文件:struts-*.tld。
- 将下列 TLD 文件从
Struts11/WebContent/WEB-INF 目录复制到项目的 Web Content/WEB-INF
目录中:struts-*.tld。
Rational Web Developer V6.0 中的调试工具有许多更改。您需要知道这些更改以便将这些工具与项目后续迁移配合使用。并且可能需要更改或复原一些设置。
迁移工作空间和启动配置
当在
Rational Web Developer V6.0 中打开
WebSphere Studio Site Developer 中的
V5.1.x
工作空间时,将不会自动迁移以下与该工作空间相关联的调试器启动配置:
- 在服务器上调试:先前通过“在服务器上调试”操作创建的启动配置将不会迁移到
V6.0。要在 V6.0
中的服务器上启动应用程序以进行调试,重新选择应用程序并选择在服务器上调试。这将为应用程序创建新的启动配置。
- 服务器连接:先前为服务器连接创建的
WebSphere Application Server
调试启动配置将不会迁移到
V6.0。WebSphere Application Server
调试启动配置不再存在。要在 V6.0
中执行服务器连接以进行调试,使用在服务器上调试操作并创建
WebSphere V5 Server Attach for 5.x 或
WebSphere V6.0 Server Attach for 6.0。
- SQLJ 调试器:SQLJ
调试启动配置不再存在并且先前创建的 SQLJ
启动配置不会迁移到 V6.0。要在 V6.0 中启动 SQLJ
程序以进行调试,使用
Java
应用程序启动配置。
- 存储过程调试器:先前创建的存储过程调试器启动配置将迁移到
Rational Web Developer V6.0
并且可在调试启动配置对话框中使用。在迁移之后,如果您使用数据定义视图弹出菜单中的调试操作,将会创建新的启动配置。
- 注:
- 如果迁移包含存储过程的工作空间,然后重建该存储过程以进行调试,则与该存储过程相关联的迁移的启动配置将不起作用。
- EGL
调试器:在迁移工作空间之后,必须对现有 EGL
调试器启动配置执行以下步骤:
- 将已安装的
Java
运行时环境(JRE)修改为指向正确的位置。在迁移工作空间之后,已安装的
JRE 将指向先前版本的
WebSphere Studio Site Developer 中的
JRE。要改变这种情况,按如下所示指向新的 JRE 位置:
- 从工作台菜单中选择窗口 -> 首选项。
- 在生成的首选项对话框中,展开
Java
节点,然后选择已安装 JRE。
- 在右边,将已安装的
JRE 设置为指向随此产品的当前版本安装的 JRE。JRE 位于
Rational Web Developer V6.0
的安装目录的子目录
\eclipse\jre。
- 在启动配置中,在启动之前选择源代码选项卡(不这样做会导致“找不到源代码”错误)。如果已将源位置添加至
V5.1.x
工作空间中的启动配置,则将需要手工将这些位置添加回已迁移的启动配置。
- 编译语言调试器:在迁移工作空间之后,需要对现有编译语言调试器启动配置执行以下步骤:
- 如果在编译应用程序启动配置的系统环境选项卡中设置了环境变量,则需要手工将它们添加回已迁移的启动配置。
- 如果已将源位置添加至编译应用程序或连接至正在运行的进程启动配置,则将需要手工将它们添加回已迁移的启动配置。
调试视图
“存储器”视图和“存储器映射”视图不再存在。它们已替换为“内存”视图和“内存呈示”视图。
XSLT 调试器
XSLT 调试器在 V6.0
中已更改,它的许多视图和操作也已发生了很大的变化。有关更多信息,请参阅信息中心中的
XSLT 调试器文档。
XSLT
调试器中的其中一个最重大的变化是它对 JRE
的依赖项是随
Rational Web Developer V6.0
安装的。如果从
WebSphere Studio Site Developer V5.1.x
迁移工作空间,则将需要修改已安装 JRE
以指向正确的位置,然后才能对它启动 XSLT
调试会话。为此,可以执行下列其中一个操作:
- 通过执行下列步骤更改整个工作空间的
JRE 以使它指向新的 JRE 位置:
- 从工作台菜单中选择窗口 -> 首选项。
- 在“首选项”窗口中,展开
Java
节点然后选择已安装 JRE 节点。
- 在右边,将已安装的
JRE 设置为指向随此产品的当前版本安装的 JRE。JRE 位于
Rational Web Developer V6.0
的安装目录的子目录
\eclipse\jre。
- 如果您打算通过调试启动配置对话框来启动调试会话,则可以通过指向新的
JRE 位置来更改启动配置的
JRE。为此,打开调试启动配置对话框中的启动配置。选择
JRE
选项卡并在其它 JRE 字段中指定新的 JRE
位置。
如果在目标为使用 WebSphere 数据对象(WDO)关系记录或关系记录列表的 WebSphere Application Server V5.1 的 Web 项目中创建了代码,则当您将这些应用程序的目标确定为 WebSphere Application Server V6.0 时,现在将使用服务数据对象(SDO)关系记录和关系记录列表。将应用程序的目标服务器从 WebSphere Application Server V5.1 更改为 WebSphere Application Server V6.0 时,会自动进行从 WDO 到 SDO 的迁移。
可用两种方法更改目标服务器:
- 可以使用项目的属性对话框修改目标服务器。在“项目资源管理器”视图中右键单击项目,然后选择属性 -> 服务器 -> 目标运行时。
- 在使用 J2EE
迁移向导进行 J2EE
迁移期间,可以将应用程序重新定向为使用另一服务器。
- 注:
- 只能迁移到更高的
J2EE 规范级别。
可在 Rational Web Developer
的联机帮助中找到有关更改目标服务器和使用 J2EE
迁移向导的帮助主题。
兼容性注意事项
- 虽然实现类已更改为面向
SDO 运行时,但 V6.0 中支持写至 WDO 访问 bean
的公共应用程序编程接口(API)的任何代码。
- 为
WebSphere
Application Server V6.0 生成的新代码将不使用 WDO 访问
bean,而是生成纯 SDO AIP 的代码。
- 即使通过重新确定目标服务器将
V6.0 迁移回 V5.1,生成到 V6.0
项目中的任何代码也不能在 V5.1 服务器上运行。
- 可通过确定 V5.1
服务器作为目标来回迁移为 V5.1
编写的代码。
从 WDO 迁移到 SDO 可能会发生类型冲突错误
在将利用 WDO
的项目迁移到基于 SDO 的项目之后,如果将 SDO
数据添加至具有现有 WDO 数据的现有 JSP
页,则可能会发生类型冲突错误。产生这种问题的原因是混合出现了现有
WDO 访问 bean 和独立的 SDO API。例如,可在 JSP 的
Java
源文件中看到下列编译错误:
The import com.ibm.websphere.sdo.mediator.exception.MediatorException collides with another imported type
这些类型冲突错误可按如下所述更正:
- 从
Java
源文件中除去冲突的 import
语句。对于上面的示例,从源文件中除去以下 import
语句:
import com.ibm.websphere.wdo.mediator.exception.MediatorException;
- 将引用该类型的
Java
源文件修改为使用标准类名。根据上面的示例,必须将类型
MediatorException
更改为
com.ibm.websphere.wdo.mediator.exception.MediatorException。例如,必须将如下源代码:
catch ( MediatorException e1 ) {
更改为:
catch ( com.ibm.websphere.wdo.mediator.exception.MediatorException e1 ) {
将目标服务器从 V5.1 更改为 V6.0(WDO 到 SDO)之后对 Web 项目的更改
当目标服务器从 V5.1
更改为 V6.0 时,将自动进行下列更改:
- 从项目中除去
Java
归档(JAR)文件
wdo_web.jar 和
wdo_jdbc_access.jar。
- 从项目的类路径中除去下列
JAR 文件:
- emf-runtime.jar
- emf-event.jar
- wdo-interface.jar
- wdo.jar
- jdbcmediator.jar
- wdo.xmlmediator.jar
- 将文件
sdo_web.jar 和
sdo_access_beans.jar
添加至项目(自动将 SDO 运行时 JAR 文件添加至任何 V6.0
项目的类路径)。
- 将从项目中除去任何
JavaServer Pages Standard Tag Library(JSTL)1.0 JAR 文件。(JSTL
1.1/JSP 2.0 JAR 文件将被自动添加至任何 V6.0
项目的类路径)。
- 在任何
Java
源文件中更改以下 import 语句:
- com.ibm.websphere.wdo.access.connections.ConnectionManager
更改为
com.ibm.websphere.sdo.access.connections.ConnectionManager。
- com.ibm.websphere.wdo.mediator.rdb.ConnectionWrapper
更改为
com.ibm.websphere.sdo.mediator.jdbc.ConnectionWrapper。
将服务器目标从 V6.0 更改为 V5.1(SDO 到 WDO)之后对 Web 项目的更改
当目标服务器从 V6.0
更改为 V5.1 时,将自动进行下列更改:
- 从项目中除去 JAR
文件
sdo_web.jar 和
sdo_access_beans.jar。
- 将 JAR 文件
wdo_web.jar 和
wdo_jdbc_access.jar
添加至项目。
- 将下列 JAR
文件添加至项目的类路径:
- emf-runtime.jar
- emf-event.jar
- wdo-interface.jar
- wdo.jar
- jdbcmediator.jar
- wdo.xmlmediator.jar
- 将下列 JSTL 1.0 JAR
文件添加至项目。(从项目的类路径中除去 JSTL 1.1/JSP
2.0 JAR)。
- 在任何
Java
源文件中更改下列 import 语句:
- com.ibm.websphere.sdo.access.connections.ConnectionManager
更改为
com.ibm.websphere.wdo.access.connections.ConnectionManager.
- com.ibm.websphere.sdo.mediator.jdbc.ConnectionWrapper
更改为
com.ibm.websphere.wdo.mediator.rdb.ConnectionWrapper。
将应用程序的 J2EE 级别从 1.3 更改 1.4 之后对 Web 项目的更改
除通过将服务器目标更改为
WebSphere
Application Server V6.0 从 WDO 迁移到 SDO
时发生的更改之外,将应用程序的 J2EE 规范级别从 1.3
更改为 1.4 还会将 JavaServer
Pages(JSP)中的所有标记库(taglib)引用从使用 WDO JSTL
1.0 标记库更新为使用 SDO JSTL 1.1/jsp 2.0
标记库。下表显示从 J2EE 1.3 移至 J2EE 1.4 时 JSP
标记库引用中的更改。
表 1. J2EE 1.3 和 J2EE 1.4 中的 JSP 标记库引用。
| J2EE 1.3 标记库(WDO)
| J2EE 1.4 标记库(SDO)
|
| http://www.ibm.com/websphere/wdo/core
| http://www.ibm.com/websphere/sdo/core
|
| http://java.sun.com/jstl/core
| http://java.sun.com/jsp/jstl/core
|
| http://java.sun.com/jstl/fmt
| http://java.sun.com/jsp/jstl/fmt
|
| http://java.sun.com/jstl/xml
| http://java.sun.com/jsp/jstl/xml
|
| http://java.sun.com/jstl/sql
| http://java.sun.com/jsp/jstl/sql
|
Rational Web Developer 中有一些企业生成语言(EGL)的新保留字。
这些新保留字列示如下:
- as
- isa
- like
- matches
- money
- openUI
- ref
- self
- string
- this
WebSphere Studio V5.1.x
中使用这些词语作为变量名或部件名的 EGL 程序,在
V6.0 工作空间中导入并构建这些 EGL
程序时会有如下消息:IWN.SYN.2002.e 39/2 Syntax error on input
"variableName"。可以通过重命名变量来更正问题。
已经对 Rational Web Developer V6.0.1 更新了 Rational Web Developer V6.0 中最初提供的 JavaServer Faces 和 Faces Client 运行时资源。如果想要继续在使用此先前产品版本创建的 Web 项目上进行开发,建议您将 Faces 和 Faces Client 运行时资源更新为最新级别。
在
Rational Web Developer V6.0.1
中,当导入 Web 项目或者打开包含过时的 Faces 或 Faces
Client 运行时资源的工作空间时,就会自动更新 Faces 和
Faces Client 运行时资源。在
Rational Web Developer V6.0.1
中,导入来自
Rational Web Developer V6.0 的 Portlet
项目或者打开来自 V6.0
的工作空间之后,将提示您将这些运行时资源更新为最新级别。
自动更新运行时资源
要自动更新 Web 项目的 Faces 和 Faces Client
运行时资源:
- 导入一个包含来自于
Rational Web Developer V6.0 的 Faces 或
Faces Client 内容的 Web
项目(或工作空间)。“项目迁移”窗口打开。
- 注:
- 如果“项目迁移”窗口未打开,则可能已经禁用了自动构建首选项设置。在“项目资源管理器”中,右键单击
Web
项目并选择构建 -> 项目;重建项目的过程将打开“项目迁移”窗口。
- 如果工作空间中具有其它包含
Faces 或 Faces Client 内容的 Web
项目,则选择将此选项应用于需要升级的其它任何项目,就会更新所有
Web 项目。
- 单击下列其中一项:
- 单击是以自动完成更新。
- 单击稍后以延迟更新。要在选择稍后之后自动更新运行时资源,您必须先关闭然后重新打开
Web 项目,或者在重建 Web
项目之前重新启动工作台。如果已经禁用了自动构建,则右键单击
Web
项目并选择构建项目。
- 单击从不以保持运行时资源后备级别。如果您选择从不并且有意保持后备级别运行时资源,则将不会再次提示您更新它们。如果您将来需要这些运行时资源,则需要手工更新它们。
手工更新运行时资源
要手工更新 Web 项目的 Faces 和 Faces Client
运行时资源:
- 创建一个新的名为
JSF601 的 Web
项目(或者,如果正在使用 EGL,则创建一个新的 EGL Web
项目)。仅将此项目用作最新运行时资源的源;在完成更新之后可以删除它。
- 在“项目资源管理器”中,右键单击
JSF601
项目并从菜单中选择属性。
- 单击
Web
项目功能部件并选择添加 Faces
基本组件和添加 Faces Client
框架,然后单击确定。
- 如果正在使用
EGL,则按如下所示创建一个 JSF 页文件:
- 右键单击新的
EGL Web 项目的 WebContent 文件夹。
- 选择新建 -> 其它 -> Faces JSP
文件。
eglintdebug.jar 和
eglintdebugsupport.jar
文件便被添加到项目中。
- 对于想要更新的每个现有
Faces 项目,执行下列操作:
- 在“项目资源管理器”中展开现有项目以显示
WebContent/WEB-INF/lib/
文件夹中的文件。找到此目录中的下列任何 JAR
文件并删除它们:
- eglintdebug.jar(仅适用于
EGL)
- eglintdebugsupport.jar(仅适用于
EGL)
- fda6.jar(仅适用于
EGL)
- fdaj6.jar(仅适用于
EGL)
- jsf-api.jar
- jsf-ibm.jar
- jsf-impl.jar
- odc-jsf.jar
- 对于删除的任何
JAR 文件,复制 JSF601 项目的
WebContent/WEB-INF/lib
目录中的同名 JAR
文件并将其粘贴到原始项目中的同一位置。某些配置并不需要在项目中有所有这些
JAR 文件;如果原始项目没有某个 JAR
文件,则不要复制它。
- 如果正在使用 EGL,则右键单击每个 EGL
Web
项目的名称并单击生成;接着,如果不想自动构建项目,则单击项目 -> 全部构建。
- 删除
JSF601 Web 项目。
在 Rational Web Developer V6.0 中,已更新了 J2EE 迁移向导来将 J2EE 项目迁移到 J2EE 1.4 规范级别。J2EE 迁移向导支持将所有 J2EE 模块类型从 J2EE 1.2 和 1.3 规范迁移到 J2EE 1.4 规范级别。
有关将 J2EE 1.3 和 1.2
规范级别工件迁移到 J2EE 1.4
规范级别的详细信息,请参阅 J2EE 1.3 到 1.4 规范级别迁移和 J2EE 1.2 到 1.4 规范级别迁移。
- 注:
- 在使用
J2EE 迁移向导之前,强烈建议您执行下列步骤:
- 备份整个工作空间。
- 如果正在使用共享库,则检出或锁定所有对应的项目。
可按如下所示访问
J2EE 迁移向导:
- 在 J2EE 透视图的
J2EE
层次结构视图中,右键单击想要迁移的企业应用程序项目。
- 从弹出菜单中选择迁移 -> J2EE 迁移向导。
- 继续迁移过程之前,阅读
J2EE 迁移向导欢迎页面上的指示信息。
注意:
有关使用 J2EE 迁移向导的完整详细信息,请参阅联机帮助。向导的更改在 Rational Web Developer V6.0 中 J2EE 迁移向导中的更改中作了描述。
有关迁移到 J2EE 1.4
时对 J2EE 1.3 和 1.2
规范级别工件的更改的详细信息,参阅 J2EE 1.3 到 1.4 规范级别迁移和 J2EE 1.2 到 1.4 规范级别迁移。
将 Web Service 从 J2EE 1.3 迁移到 J2EE 1.4 时,J2EE 迁移向导将不会迁移安全 Web Service。安全 Web Service 的迁移需要手工步骤来完成。
在 J2EE
迁移之后,必须按如下所示手工将安全绑定和扩展文件迁移到
J2EE 1.4:
- 双击
webservices.xml
文件以打开 Web Service 编辑器。
- 选择绑定配置选项卡以编辑绑定文件。
- 在新的部分请求消费者绑定配置详细信息和响应产生者绑定配置详细信息下面添加所有必需的绑定配置。
- 选择扩展选项卡以编辑扩展文件。
- 在新的部分请求消费者服务配置详细信息和响应产生者服务配置详细信息下面添加所有必需的扩展配置。
- 保存并退出编辑器。
可将 J2EE 项目从 J2EE 1.3 迁移到 J2EE 1.4 规范级别。本节描述,对于每种类型的 J2EE 项目,由 J2EE 迁移向导从 J2EE 1.3 迁移到 J2EE 1.4 的工件。
将 J2EE 1.3 级别 Web 项目迁移到 J2EE 1.4 级别时,J2EE 迁移向导会迁移 Web 部署描述符的工件。
将迁移下列 Web 应用程序工件:
认证约束
J2EE 1.4
包括具有下列两个属性的描述对象:language 和
value。此描述对象在
J2EE 1.3
中不存在;描述是“认证约束”上的一个属性。所以,将
Web 部署描述符的工件迁移到 J2EE 1.4
时,描述对象的
value
将取自“认证约束”的描述属性。
安全性约束
同样,在 J2EE 1.3
中,描述是“安全性约束”上的一个属性。在 J2EE
1.4
中,有一个新的描述对象带有属性
language 和
value。所以,描述对象的
value
将取自“安全性约束”的描述属性。
Web 应用程序
J2EE 1.3
规范级别中的
ContextParam
对象的描述字符串属性在 J2EE 1.4 中已移至
ParamValue
中的描述对象。
J2EE 1.3 中的
TagLib
对象在 J2EE 1.4 中已移至
JSPConfig
对象。JSPConfig
对象在 1.3 中属于 Web 根对象。
J2EE 迁移向导将 J2EE 连接器体系结构(JCA)1.0 描述符的工件迁移到 JCA 1.5。已迁移的工件与 ResourceAdaptor 对象的元素相关,因为已将两个新对象(OutboundResourceAdaptor 和 ConnectionDefinition)添加至 J2EE 1.4 规范级别的连接器项目中的 ResourceAdaptor 对象。
下面描述了已迁移元素的映射。
- 下列元素从
ResourceAdaptor
对象移到
OutboundResourceAdaptor
对象:
- reauthenticationSupport
- transactionSupport
- 下列元素从
ResourceAdaptor
对象移到
ConnectionDefinition
对象:
- managedConnectionFactoryClass
- connectionFactoryInterface
- connectionFactoryImplClass
- connectionInterface
- connectionImplClass
- outboundResourceAdaptor
对象包含
ConnectionDefinition
定义列表。因此,ConnectionDefinition
被添加至
OutboundResourceAdaptor
包含的
ConnectionDefinition
列表。
- OutboundResourceAdaptor
对象包含在
ResourceAdaptor
对象中。
- AuthenticationMechanism
对象在 JCA 1.5 中有一些更改,其中
customAuthMechType
元素被替换为
authenticationMechanism,而
authenticationType
元素被替换为
authenticationMechanism。
- ResourceAdaptor
对象中的描述属性替换为如下描述对象:描述对象中的描述属性字符串被设置为下列对象的“描述”对象中的
value 元素:
- SecurityPermission
- AuthenticationMechanism
- ConfigurationProperties
J2EE 1.4 规范通过新的 JAX-RPC 1.0 API 添加了对 Web Service 的支持。
JAX-RPC API 通过下列内容支持服务端点:
- 使用 JAXR-RPC 的
servlet
- 使用直接 SOAP 的
servlet
- 无状态会话
bean
J2EE 1.4 规范支持 J2EE 规范(JSR 109)的 Web Service。JSR 109 定义 Web Service 的部署需求并使用 JAX-RPC 编程模型。
使用 J2EE
迁移向导迁移的 Web Service 工件如下:
- Web Service
描述符
- Web Service
客户机描述符
- JAX-RPC
映射描述符
迁移 Web Service 部署描述符
J2EE 1.3 项目中包含的要迁移到 J2EE 1.4 规范级别的任何 Web Service 部署描述符都将从 JSR-109 V1.0(J2EE 1.3)迁移到 J2EE 1.4。
如 JSR-109 V1.0
所定义的那样,Web Service 部署描述符由文件
webservices.xml、webservicesclient.xml
及
webservices.xml
和
webservicesclient.xml
文件引用的所有 JAX-RPC 映射部署描述符组成。 与其它
J2EE
部署描述符一样,迁移会修改描述符中包含的信息的结构以使它们符合
J2EE 1.4 规范。对 Web Service
部署描述符来说比较特别的一个结构更改是对表示限定名的方式的更改。在
JSR-109 V1.0
中,限定名是使用两个元素(<namespaceURI>
和
<localpart>)的序列表示的,这两个元素分别包含名称空间
URI 和名称的本地部分。J2EE 1.4 中的限定名基于使用 XML
名称空间的 XMLSchema QName 类型。
下面提供了有关迁移每个
Web Service 部署描述符的更多详细信息。
- Web Service
描述符(webservices.xml)
webservices.xml
部署描述符出现在包含 J2EE Web Service 的 Web
项目中。<wsdl-port>
元素和
<soap-header>
元素都包含限定名并且它们的内容将迁移为 J2EE 1.4
格式。
例如,如果迁移前
<wsdl-port>
的表示如下所示,
<wsdl-port>
<namespaceURI>http://addressbook.webservice</namespaceURI>
<localpart>AddressBook</localpart>
</wsdl-port>
迁移后
<wsdl-port>
将显示为:
<wsdl-port xmlns:pfx="http://addressbook.webservice">pfx:AddressBook</wsdl-port>
前缀“pfx”被用作所有已迁移限定名的名称空间前缀。
- Web Service
客户机描述符(webservicesclient.xml)
webservicesclient.xml
部署描述符出现在包含 J2EE Web Service 客户机的 J2EE 1.3
Web 项目和应用程序客户机项目中。从 J2EE 1.3 到 1.4
的迁移期间,webservicesclient.xml
的内容被迁移并且移动到项目的部署描述符中。发生的流程如下所示:
- 对于 Web
项目,webserivcesclient.xml
中的所有
<service-ref>
元素都移动到 web.xml 中的
<web-app>
元素下面。
- 对于应用程序客户机项目,webservicesclient.xml
中的所有
<service-ref>
元素都移动到
application-client.xml
中的
<application-client>
元素下面。
- 将删除
Webservicesclient.xml。
<service-qname>
元素和
<soap-header>
元素都包含限定名并且它们的内容将迁移为 J2EE 1.4
格式。例如,如果迁移前
<service-qname>
的表示如下所示,
<service-qname>
<namespaceURI>http://addressbook.webservice</namespaceURI>
<localpart>AddressBookService</localpart>
</service-qname>
迁移后
<service-qname>
将显示为:
<service-qname xmlns:pfx="http://addressbook.webservice">pfx:AddressBookService</service-qname>
前缀“pfx”被用作所有已迁移限定名的名称空间前缀。
- JAX-RPC 映射描述符
webservices.xml
和
webservicesclient.xml
部署描述符都可以引用一个或多个 JAX-RPC
映射部署描述符。
在
webservices.xml
文件中,这些引用包含在每个
<webservice-description>
元素下面的
<jaxrpc-mapping-file>
元素中。在
webservicesclient.xml
文件中,这些引用包含在每个
<service-ref>
元素下面的
<jaxrpc-mapping-file>
元素中。
从 J2EE 1.3 到 1.4
的迁移期间,将迁移
webservices.xml
和
webservicesclient.xml
中引用的所有 JAX-RPC
映射部署描述符。迁移包括将所有限定名迁移为 J2EE 1.4
格式(有关迁移后限定名的示例,请参阅上面有关
webservices.xml
和
webservicesclient.xml
的小节)。
可将 J2EE 模块从 J2EE 1.2 规范级别迁移到 J2EE 1.4。本节描述通过 J2EE 迁移向导将 J2EE 项目从 J2EE 1.2 迁移到 J2EE 1.4 规范级别的工件。
有关使用 J2EE
迁移向导的详细信息,参阅第 3 章, 迁移 J2EE 项目。
将 J2EE 1.2 Web 项目迁移到 J2EE 1.4 规范级别时,J2EE 迁移向导会迁移 Web 部署描述符的工件。
将迁移下列 Web 应用程序工件:
认证约束
J2EE 1.4
包括具有下列两个属性的描述对象:language 和
value。此描述对象在
J2EE 1.2
中不存在;描述是“认证约束”上的一个属性。所以,将
Web 部署描述符的工件迁移到 J2EE 1.4
时,描述对象的
value
将取自“认证约束”的描述属性。
安全性约束
同样,在 J2EE 1.2
中,描述是“安全性约束”上的一个属性。在 J2EE
1.4
中,有一个新的描述对象带有属性
language 和
value。所以,描述对象的
value
将取自“安全性约束”的描述属性。
Web 应用程序
J2EE 1.2
规范级别中的
ContextParam
对象的描述字符串属性在 J2EE 1.4 中已移至
ParamValue
中的描述对象。
J2EE 1.2 中的
TagLib
对象在 J2EE 1.4 中已移至
JSPConfig
对象。JSPConfig
对象在 1.2 中属于 Web 根对象。
已经对 Rational Web Developer V6.0 中的 J2EE 迁移向导进行了更改,这些更改对于所有 J2EE 规范级别的迁移都是公共的。
项目结构迁移是可选的
在
WebSphere
Studio V5.1.x 到 V5.1.2 中,项目结构迁移与 J2EE
规范级别迁移是同时发生的。在迁移 J2EE
规范级别时,项目结构迁移不是可选的一项。
在
Rational Web Developer V6.0 的 J2EE
迁移向导中,迁移项目结构是一个独立于迁移项目 J2EE
规范级别的一个可选项。J2EE
规范级别迁移和项目结构迁移可以独立执行。
目标服务器是必需的
在
Rational Web Developer V6.0
中,迁移到较高的 J2EE 规范级别的新的和现有的 J2EE
项目需要在项目上设置目标服务器。确定目标服务器是
V6.0 中如何在 J2EE
项目上设置类路径的缺省柄制。有关设置目标服务器和使用
J2EE 迁移向导的更多信息,请参阅联机帮助。
在 Rational Web Developer V6.0 中,随该产品一起提供的 WebSphere Application Server 测试环境已从 WebSphere Studio Site Developer 的先前版本一起提供的测试环境进行了更改。
以下是
Rational Web Developer V6.0 中的
WebSphere
Application Server 测试环境中所作的更改总结:
- WebSphere Application Server V4.x
服务器不再是受支持的测试环境。但是,仍然可以手工方式导出和部署
J2EE 1.2 规范级别应用程序以在远程 V4.x
服务器上进行测试。
- WebSphere Application Server V6.0
服务器已被添加为可安装测试环境。它支持运行 J2EE 1.4
规范级别应用程序。
下表显示
WebSphere Studio Site Developer 和
Rational Web Developer
的不同版本提供的 WebSphere Application Server 测试环境级别。
表 2. WebSphere Studio Site Developer 和 Rational Web Developer 中的 WebSphere Application Server 测试环境
| WebSphere Application Server V4.x AEs
| WebSphere Application Server V5.x Base
| WebSphere Application Server Express V5.x
| WebSphere Application Server V6.0
|
| WebSphere Studio Site Developer
V5.1
| V4.0.6
| V5.0.2
| V5.0.2
| 不适用
|
| WebSphere Studio Site Developer
V5.1.1
| V4.0.7 + PQ78374
| V5.0.2 + PQ78374 +PQ78419, V5.1
| V5.0.2 & V5.1
| 不适用
|
| WebSphere Studio Site Developer
V5.1.2
| V4.0.7 + PQ78374
| V5.0.2 + PQ78374 +PQ78419, V5.1.0.3
| V5.0.2 & V5.1.0.3
| 不适用
|
| Rational Web Developer V6.0
| 不适用
| V5.0.x, V5.1.1
| V5.0.2 & V5.1.1
| V6.0
|
版权和声明