注意:
- 如果已使用版本 4.0 IDE 转换了 WebFacing 项目,则在迁移完成之后不必重新转换该项目。
- 如果从 WebSphere Development Tools V5.1 迁移了原始项目,则将需要重新转换该项目。
本节描述如何将在 Development Studio Client for iSeries V4.0 中创建的 iSeries Web 项目迁移至版本 5.0。
迁移活动涉及下列阶段:
- 使用现有的 V4.0.x 工作区来迁移项目
- 将 Web 项目结构迁移至 J2EE 1.3 项目结构
注意:将 Web 项目迁移至 J2EE 1.3 是可选的。但是,J2EE 1.2 不支持 JCA(Java 连接器体系结构)。
- 迁移“iSeries Web 工具”项目内容
- 解决因迁移而生成的错误和警告
第 1 阶段:使用现有的 V4.0.x 工作区来迁移项目
仅部分支持此方法,此方法会导致迁移不完整。用户界面设置、调试设置以及大部分的首选项都将丢失。保留项目名称、项目源文件和项目
Java 构建路径(类路径),但没有其它保证。仅当未在使用任何受支持软件配置管理(SCM)系统且保留项目
构建路径信息(在从版本 4.0 导入项目时该信息丢失)非常重要时,才采用此方法。可以通过执行下列操作来使用现有版本 4.0.x 工作区:
安装之前
- 将任何暂挂的更改提交(发布)至资源库。
- 关闭所有透视图并关闭版本 4.0 产品。
- 备份 workspace_directory 的内容,其中 workspace_directory 是包含版本 4.O.x 工作区的全限定目录名。在缺省情况下,版本 4.0.x
工作区子目录位于安装产品所在的同一目录中。如果您在任何时候想要再次使用版本 4.0.x
的产品,则将需要此备份。一旦已从版本 5.0 IDE 指向版本 4.0.x 工作区,就不再能够退回去在版本 4.0.x 产品中使用该工作区。
- 安装 Development Studio Client for iSeries V5.0。
安装之后
- 在启动版本 5.0 产品(开始 > 程序 > IBM WebSphere Studio > Development Studio Client for iSeries)时,将打开一个 WebSphere Studio
窗口,您将在该窗口中指定要用于会话的目录。请在此窗口中指定版本 4.0.x 工作区的目录位置。
- 当提示您确认要转换为新的用户界面格式时,单击确定。
- 在执行任何重构或验证工作区中的任何项目之前,在“资源”透视图内的“导航器”视图中选择所有项目,然后从弹出菜单中选择刷新。这将确保所有文件都与其相应的元数据同步。
- 打开任何已关闭的项目(参见下面的已知问题)。
- 验证类路径变量(参见下面的已知问题)。
- 已在此版本中添加、除去或修改了一些构建器和验证器。要确保显示正确的错误和警告,必须通过选择项目 > 全部重构来重构所有项目,然后对每个 Java 项目选择运行验证。
- 可能会维持某些用户首选项,但其它许多用户首选项不会维持。请在版本 5.0 中检查首选项设置以确保它们是您所需要的设置。
在迁移后除去 EAR 和服务器配置绝对路径引用
版本 4.0 EAR application.xml 文件和服务器配置文件包含了绝对路径引用。在将它们迁移到版本 5.0 之后,您需要使用它们的编辑器来打开它们(这些编辑器会自动把它们的旧绝对路径引用更改为新的相对引用)。
- 对于每个 EAR 项目,在“导航器”视图中右键单击 META-INF/application.xml > 打开方式 > 部署描述符编辑器。
- 一个消息窗口将打开:“自上次保存此应用程序以来一个或多个模块的绝对路径已更改... 您想要自动更正吗?”
- 单击是。
- 保存并接着关闭编辑器窗口。
- 对于每个服务器配置,在“服务器”透视图的“服务器配置”视图中右键单击服务器 > 打开。
- 将打开一个类似的自动更正窗口。
- 单击是。
- 保存并接着关闭编辑器窗口。
已知问题与限制
如果您尝试通过在版本 5.0 产品中打开版本 4.0 工作区来进行迁移,可能会发生下列问题。
JRE_LIB 类路径变量中的值不正确
要将 JRE_LIB 类路径变量重新设置为有效的位置,请遵循这些步骤。第一次打开“首选项”窗口时,即使值看起来是正确的也要执行此操作。
- 选择窗口 > 首选项 > Java > 已安装的 JRE。
- 在列表中,选择您希望 JRE_LIB 所设置成的缺省 JRE 位置的复选框。
- 选择编辑,然后单击确定以关闭“编辑 JRE”对话框。
如果不这样做的话,JRE_LIB 的值就可能是不正确的,从而导致 Java 文件中有许多构建错误。
作为一项常规检查,请验证所有其它类路径变量的值。
对于先前 SCM 共享的项目,“小组”菜单包含“共享项目”
在 Eclipse 1.0 与 2.0 之间已对小组支持作了显著的更改。同时更改了通过资源库共享项目的方法。
- 如果您选择小组 > 共享项目选项,则向导将指导您完成迁移过程。完成后,将共享项目并打开“同步”视图。您将看到每个文件上的有冲突的更改。这是由于在 Eclipse 1.0 与 2.0 之间已更改了存储同步信息的方式。
- 如果没有任何未完成的更改(如果象上面建议的那样在升级之前已提交了所有未完成的更改,则不应该有这样的更改),则可以简单地在“同步”视图中选择该项目并选择覆盖并更新,这将从服务器装入当前内容。
- 如果确实有未完成的更改,可以在“同步”视图中下拉三角形菜单并选择比较文件内容。在执行一些工作之后,“同步”视图将只显示实际上不相同的文件。然后,可使用“同步”视图来解决这些冲突。
在工作区目录外部创建的项目
缺省情况下,项目是在工作区目录中创建的。如果覆盖了缺省值以便在别处创建项目,则现在在关闭工作台之前打开所有项目。这将使得该项目的 .project 文件被写入正确的位置。无法打开其目录位于工作区外部的已关闭项目会导致某一项目屏蔽实际项目,使得该项目当中只有一个 .project 文件。
第 2 阶段:将 Web 项目结构迁移至 J2EE 1.3 项目结构
请注意,“J2EE 迁移向导”可执行下列两个功能:
- 将 Web 项目结构或 J2EE 项目结构从版本 4.0 迁移至版本 5.0。
- (可选)将 J2EE 级别 1.2 迁移至级别 1.3。
要迁移至 J2EE 项目结构:
- 如果尚未打开版本 5.0 IDE,则通过从开始 > 程序菜单选择该产品来打开它。
- 在 IDE 中,选择窗口 > 打开透视图 > Web 来打开 Web 透视图。
- 在 Web 透视图的“J2EE 导航器”视图中右键单击项目名称并选择迁移 > J2EE 迁移向导。
- 遵循向导页上的指示信息。如果打算使用 JCA(Java 连接器体系结构)支持,则应确保选择将项目从版本级别 J2EE 1.2 迁移至 J2EE 1.3 复选框。
- 单击完成以迁移所选择的 Web 项目。
第 3 阶段:迁移“iSeries Web 工具”项目内容
必须先如前一节所描述的那样成功地将 Web 项目迁移至 J2EE 项目结构,然后才能执行以下迁移过程。
要迁移“iSeries Web 工具”项目内容:
- 在 Web 透视图中右键单击项目名称,然后选择迁移 > iSeries Web 工具项目 4.0 到 5.0。
- 要点:此时关闭该项目并重新打开它以避免发生与资源删除相关的异常。
- “确认迁移”窗口指示将要迁移项目结构和内容。要继续执行此过程,请单击确定。
- 将打开“进度信息”窗口,指示正在发生的迁移操作并显示迁移进度。
- 迁移过程完成时,将会出现“警告”、“错误”或“成功”消息窗口以指示迁移的结果。
- 如果迁移过程成功完成,则无需进行进一步的操作。如果迁移过程完成时存在错误或警告,继续转至下面的处理作为迁移结果生成的错误和警告。
迁移过程执行下列操作:
- 将 JSP 文件中的所有设计时控件转换为新的 Web 组件字段和控件。
- 根据 .wit 文件中的 Struts 框架添加 Apache Struts 1.02 运行时文件和与 Web 交互相关的重新生成的文件。
第 4 阶段:处理作为迁移结果生成的错误和警告
如果迁移过程遇到问题,则一个窗口将打开,它会指示发生了错误或警告,且这些错误或警告在 Web 透视图中项目名称下的迁移日志文件 projectName_MigrationDetails.txt 中。
迁移日志文件顶部的“迁移结果”一节指示了迁移的整体状态并引用联机信息中的一个文件,该文件对错误和警告以及更正错误和警告所需的操作进行了描述。
另见联机帮助中的“迁移错误和警告详细信息”:
Development Studio Client for iSeries > Web 应用程序 > iSeries Web 开发 > 参考 > 迁移错误和警告详细信息。
迁移版本 4.0 以前的 iSeries Web 项目
本主题说明如何从配合 WebSphere Development Tools for iSeries V3.5
使用的 WebSphere Studio 产品中迁移。在本主题中都将此
WebSphere Studio 产品称为 WebSphere Studio 经典版以将它与 WebSphere Studio 的当前版本区分开来。此信息是关于 WebSphere Studio 经典版的“高级版”和“专业版”的。
注意:下列指示信息是针对从 WebSphere Studio 经典版版本 4.0 进行迁移的。如果要从 WebSphere Studio
经典版的早期版本迁移,必须首先迁移至 WebSphere Studio 经典版版本 4.0,然后才可继续。
从 WebSphere Studio 经典版迁移涉及下列步骤:
- 为迁移创建新的单服务器阶段。
- 创建 Web 配置描述符文件。
- 导出迁移 JAR 文件。
- 将迁移 JAR 文件导入到 Web 项目中。
- 完成 iSeries Web 项目迁移。
- 设置服务器并测试所迁移的应用程序。
在迁移任何 WebSphere Studio 经典版数据之前,应知道存在下列限制:
- WebSphere Studio 当前版本中的集成开发环境使用基于
XML 的 SQL 编辑器,因此不能在该环境中使用 .sql 文件。
- 不能迁移项目发布信息和阶段信息。
- 不能迁移 WebSphere Studio 经典版服务器配置信息。
- 不能迁移版本控制信息。
在下面概括的迁移过程中,您将创建一个 JAR
文件,该文件包含单服务器的所有项目文件(包括可发布的文件和源文件)。在缺省服务器的“发布”视图中可视的所有文件都被封装到该
JAR 文件中。然后,可以在 WebSphere Development Studio Client for iSeries V5.0
中将该 JAR 文件导入 Web 项目中。
在迁移现有的项目时,迁移期间将丢失所有的项目发布和阶段信息。如果您的阶段带有多台服务器,则只保留发布至缺省服务器的文件。因此,为了进行迁移,您将创建只带有一台服务器的新阶段。
迁移步骤
步骤 1 — 为迁移创建新的单服务器阶段
如果当前阶段中有多台服务器,则通过遵循下列步骤来创建名为 Migration 的只带有一台服务器的新阶段:
- 打开您打算迁移的项目并单击项目 > 定制发布阶段菜单。
- 在阶段名称字段中输入 Migration。
- 单击添加。
- 单击确定。
- 单击项目 > 发布阶段菜单并从可用阶段列表中选择 Migration。
- 在“发布”视图中单击 Migration,然后单击插入 > 服务器菜单。
- 输入服务器名(例如,localhost)并单击确定。
- 可选:如果定义了 servlet 映射信息,则完成此任务,否则继续下面的步骤 2。更改服务器或更改发布阶段并不会传播 WebSphere Application Server V4.0
的 servlet 映射信息。转至“发布”视图,然后对每一个 servlet 右键单击该 servlet 并选择属性。在“属性”窗口发布选项卡的 Servlet 映射字段中输入实际的 servlet 映射并单击确定。该
servlet 映射是 Application Server 上已注册 servlet 的 URL 模式。
步骤 2 — 创建 Web 配置描述符文件
- 在“发布”视图中,单击项目 > 创建 Web 配置描述符文件。
- 选择所需的所有 servlet。
- 选择所需的所有“标记库描述符”(TLD)文件。
- 单击创建。
Web 配置描述符文件名的格式为 serverName_web.xml。对于服务器 localhost,Web 配置描述符文件名为 localhost_web.xml。除非指定了另一个位置,否则将把 .xml 文件保存在 WEB-INF 目录中。
步骤 3 — 导出迁移 JAR 文件
- 在“发布”视图中,右键单击服务器 localhost 并单击属性 > 发布菜单。
- 在 Webapp Web 路径字段中输入 Web 路径(上下文根)。当在 Development Studio Client for iSeries V5.0 中创建项目时,此输入内容被用作 Web 项目名。例如,如果输入 myproj,则它就被用作版本 5.0 中的 Web 项目名。
- 单击确定。
- 在“发布”视图中,单击项目 > 创建迁移文件。
- 验证 localhost 是否是所选的服务器。
- 验证 localhost_web.xml 是否是所选的 Web 配置描述符文件。
- 单击确定。
- JAR 文件名的格式为 serverName.jar。对于服务器 localhost,JAR 文件名是 localhost.jar。如果需要的话,可以将此文件重命名。
- 在保存位置字段中指定 JAR 文件的位置,并单击保存来创建该 JAR 文件。
步骤 4 — 将迁移 JAR 文件导入到 Web 项目中
- 启动 WebSphere Development Studio Client for iSeries V5.0。
- 单击窗口 > 打开透视图 > 其它菜单,选择 Web,然后单击确定来打开 Web 透视图。
- 导入 JAR 文件。
- 单击文件 > 导入。
- 在导入窗口中单击 WAR 文件并单击下一步。
- 在从 WAR 文件导入资源窗口中,
- 在 WAR 文件字段中输入完全路径和 JAR 文件名。例如,如果 JAR 文件名为 localhost.jar,且它位于
d:\myjar 中,则在 WAR 文件字段中输入 d:\myjar\localhost.jar。
注意:必须使用 WAR 文件选项来导入 JAR 文件;否则它将不能正常工作。 - 为 Web 项目选择新建单选按钮。
- 在新项目名字段中,输入您在上面的步骤 3 中定义的 Webapp Web 路径名称作为 Web 项目名。此名称被自动添加至上下文根字段。如果未添加它,则在上下文根字段中输入项目名。
- 为企业应用程序项目选择新建单选按钮,并输入 EAR 文件的名称。EAR 文件的缺省名是 DefaultEAR。可以用新项目来更改此名称以便容易地标识它。例如,如果新项目名为 myproj, 则可将 EAR 文件命名为 myprojEAR。
- 单击完成来解压缩 JAR 文件并创建 Web 项目。
- 要完成 Web 项目的初始化,请运行“iSeries Web 工具运行时配置”向导。
- 在“J2EE 导航器”视图中右键单击 Web 项目名称,并选择指定 iSeries Web 工具运行时配置。
- 在向导页中单击完成,而无需在字段中输入任何内容。此操作将 iSeries Web 工具所需的 JAR 文件复制到 Web 项目中的 Web-INF > lib 中。
- 可能会有若干个未解析的引用或丢失导入文件。这些内容出现在“任务”视图中。要更正此问题,必须修改 Web 项目的 Java 构建路径:
- 右键单击项目名并单击属性以打开“属性”窗口。
- 单击 Java 构建路径并单击库选项卡。
- 单击添加外部 JAR。
- 从下列目录导入所需的任何 JAR:
x:\WS*D\runtimes\base_v5\lib、
x:\WS*D\runtimes\aes_v4\lib 和
x:\WS*D\wstools\eclipse\plugins\com.ibm.etools.websphere.tools\runtime
其中 x:\WS*D 是基本产品的安装目录。
- 在“J2EE 导航”视图中,右键单击项目并选择重构项目。
步骤 5 — 完成 iSeries Web 项目迁移
遵循在迁移版本 4.0 iSeries Web 项目的第
2、3 和 4 阶段中描述的任务来完成项目迁移:
- 可选:如果打算在 WebSphere Application Server 的版本 4.x
上运行 Web 应用程序,则“第 2 阶段”中的任务不是必需的。但是,如果想在
WebSphere Application Server V5.0 上运行 Web 应用程序,则需要完成“第 2 阶段”中的任务来将 Web 项目从 J2EE 1.2 迁移至 J2EE 1.3。
- “第 3 阶段”描述如何迁移 Web 项目内容。
- “第 4 阶段”提供了有关解决在迁移 Web 项目内容时生成的错误和警告的信息。
完成这些任务后,转至下面的步骤 6。
步骤 6 — 在测试服务器上测试已迁移的应用程序
您现在已经准备好测试应用程序了。要在缺省测试服务器上测试应用程序,请执行下列步骤:
- 右键单击 Web 应用程序的初始页。
- 选择在服务器上运行。
要在其它服务器运行时环境中测试应用程序,请参考“服务器工具”功能部件的联机帮助。
如果还安装了 Development Studio Client for iSeries V4.0:
则在卸载 Development Studio Client V4.0 之前,应将项目内容导出至主机。然后,安装 Development Studio Client V5.0。在安装之后,可通过从“远程系统资源管理器”运行操作来重新创建项目:
安装之前
- 在版本 4.0 中,右键单击“iSeries 项目”并选择推送更改。这应会将所有代码更改上载至该项目的相关联库。(如果不能确定此项目的针对的是哪个主机和库,则右键单击该项目并选择属性 > iSeries 项目。)
- 关闭版本 4.0 并卸载它。
- 继续安装 Development Studio Client for iSeries V5.0。
安装之后
- 在版本 5.0 中,打开“远程系统资源管理器”透视图:单击窗口 > 打开透视图 > 远程系统资源管理器。
- 导航至“iSeries 项目”的相关联库。此库包含从 iSeries 项目上载的所有源。
- 选择此库中作为 iSeries 项目一部分的源物理文件,右键单击它们并选择可脱机使用。这将重新创建映射至此库的 iSeries 项目并将所有源成员以本地方式下载到您的项目中。现在,您可以继续进行开发。
注意:从“远程系统资源管理器”中的库中选择创建 iSeries 项目是重新创建项目的另一种快速方法,但它不从该库下载任何源成员。它只是创建和设置映射至该库和主机的 iSeries 项目。
如果已安装 Development Studio Client for iSeries V5.0
且您知道尚未将项目上载至远程主机,则在:
安装之后
- 启动版本 5.0。
- 在主菜单中,单击窗口 > 打开透视图 > 资源。单击确定。
- 通过单击文件 > 新建 > 其它 > 简单 > 项目来创建一个简单项目,并将它命名为 Temp。此项目是用于将版本 4.0 项目导入版本 5.0 工作区的容器。
- 选择文件 > 导入 > 文件系统。单击下一步。
- 导航至旧工作区(例如,X:\WDSC\WSSD\workspace,其中 X 是安装了版本 4.0 的驱动器)并导入想要重新创建的项目。
- 创建映射至刚刚导入的版本 4.0 项目的库和主机的“iSeries 项目”。
- 在“导航器”视图中右键单击任何地方并选择新建 > 项目 > iSeries > 本地 > iSeries 项目。
- 如果记不住库和主机,则可以在 Temp
项目下名为 .iseries_project_properties 的 XML 文件中找到此信息。
- 重新创建已存在于版本 4.0 项目中的源物理文件:
- 单击文件 > 新建 > 其它 > iSeries > 本地 > iSeries 源物理文件。
- 如果不能确定文件的 CCSID 和记录长度,则可以直接在每个源物理文件下名为 .iseries_srcpf_properties 的 XML 文件中找到此信息。
- 现在将源成员从旧的版本 4.0 项目拖放至新的版本 5.0 项目。
- 删除不再需要的 Temp 项目,并打开“iSeries 项目透视图”:单击窗口 > 打开透视图 > iSeries 项目。