安装与迁移指南

本《安装与迁移指南》包含下列信息:

还可以在 pdf 目录中找到本指南的 PDF 版本。pdf 目录位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。 

从何处可找到有关 VisualAge for Java 的更多信息

本文件不包括关于 VisualAge for Java 的特定组件和功能部件的详细信息。要获得该信息,您应参考产品“发行说明”,您可以通过选择开始 > 程序 > IBM VisualAge for Java Windows 版 V4.0 > 发行说明访问该信息。对于所有语言,发行说明都包括在 产品 CD 上(它们可以在安装后使用),并可以在 Web 上找到,地址是 http://www.ibm.com/vadd。  

本文件不包含关于使用 VisualAge for Java 的信息。要获得该信息,请参考《入门指南》及联机帮助。某些联机帮助已分组到 PDF 文档中,您可以使用 Adobe Acrobat Reader(可以从 http://www.adobe.com/ 获得)查看和打印这些 PDF 文档。并非所有 PDF 都有所有语言的版本可用。这些 PDF 文件位于 pdf 目录中。pdf 目录位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(您解压缩部件的目标位置)中找到它。如果没有下载包含 PDF 的部件,就没有这个目录。

有关每个 PDF 文件所包含的内容的信息,请参阅《入门指南》中的“PDF 索引”。联机帮助还包含“Web 资源”一节,它含有指向因特网上的 VisualAge 资源的链接。

VisualAge Developer Domain (VADD) Web 站点提供有关 VisualAge for Java 的技术文章、教程、样本和常见问题并使您能轻松地访问对此产品的支持和产品更新。在此站点,可下载 VisualAge for Java 开发工具、可再用的 Bean、向导和工具箱来实现小应用程序和小服务程序的开发。请访问 http://www.ibm.com/vadd。还可以通过此站点来请求获得 VisualAge for Java 的将来发行版中的功能部件。

如果您已注册至 VisualAge Developers Domain,不需要重新注册。可以使用您的当前标识和密码来获取最新的信息和代码更新。如果是新用户,请在收到的盒子(或媒体组件)中找到订购号。如果购买了 VisualAge for Java,但没有订购号,请与 IBM(R) 销售代表联系。

VisualAge for Java 产品主页的地址是 http://www.ibm.com/software/ad/vajava

目录

A 部分:VisualAge for Java 专业版

1.0 先决条件
2.0 安装
      2.1 安装 VisualAge for Java 版本 4.0
      2.2 以后安装附加的组件
      2.3 与 Windows(R) 2000 相关的安装注意事项
      2.4 安装 IBM Developer Kit 的 Java 技术版 v1.2.2
3.0 从 VisualAge for Java 先前版本迁移
      3.1 从 VisualAge for Java 版本 3.5 或版本 3.5.3 迁移
      3.2 从 VisualAge for Java 的版本 2.0、3.0x 或 3.0x Early Adopters 迁移
4.0 已知问题与限制
      4.1 与安装相关的已知问题与限制
      4.2 与卸载相关的已知问题与限制

B 部分:VisualAge for Java 企业版

1.0 先决条件
      1.1 一般先决条件
      1.2 特定于组件的先决条件
2.0 安装
      2.1 安装 VisualAge for Java 版本 4.0
      2.2 以后安装附加的组件
      2.3 安装 VisualAge for Java 小组客户机
      2.4 安装带有独立资源库的客户机
      2.5 与 Windows(R) 2000 相关的安装和使用注意事项
      2.6 安装 IBM Developer Kit 的 Java 技术版 v1.2.2
3.0 从先前版本的 VisualAge of Java 迁移
     3.1 从 VisualAge for Java 的先前版本迁移共享资源库
4.0  已知问题与限制
      4.1 与安装相关的已知问题与限制
      4.2 与卸载相关的已知问题与限制

C 部分:小组资源库服务器 (EMSRV)

1.0 先决条件
      1.1 支持平台
      1.2 TCP/IP
      1.3 在 NetWare 4.x 上运行 EMSRV 所需的 Novell 补丁程序
      1.4 在 Solaris 上运行 EMSRV 所需的 Solaris 补丁程序     
      1.5 支持的文件系统   
2.0 安装
     2.1 安装 EMSRV Windows(R) 版
             2.1.1 将 EMSRV 作为 Windows 注册表中的服务来安装
     2.2 安装 EMSRV NetWare 版 
     2.3 安装 EMSRV OS/2(R) Warp 版
     2.4 安装 EMSRV AIX 版
     2.5 安装 EMSRV HP-UX/Solaris(TM) 版
     2.6 安装 EMSRV Linux 版
3.0 迁移
      3.1 从 EMSRV 的版本 6.x/7.0 迁移至版本 7.1
4.0 为小组开发作准备
      4.1 准备小组服务器
      4.2 测试客户机连接
      4.3 向资源库用户列表添加用户
5.0 限制与已知问题
      5.1 在低带宽、高等待时间网络连接上的性能
      5.2 TCP/IP 连接限制 
      5.3 检测意外断开的连接
      5.4 交换 EMSRV 和 EMSRV 实用程序的不同版本
      5.5 PAM 限制
      5.6 不能使用带有非 ASCII 字符的密码来对 EMSRV 执行认证
      5.7 当在 NetWare 日文版上运行时,菜单和窗口中有乱码
      5.8 EMADMIN 不复制存储的资源目录

D 部分:特定于组件的迁移信息

1.0 CICS(R) Transaction Server  *+
2.0 Data Access Bean
3.0 Data Access Builder * +
4.0 EJB(TM) Development Environment+
5.0 Enterprise Access Builder 和电子连接器 +
6.0 Enterprise Toolkit for AS/400(R) +
7.0 Enterprise Toolkit for OS/390(R) +
8.0 Enterprise Toolkit for Workstations * +
9.0 外部版本控制
10.0 IDL Development Environment +
11.0 集成开发环境
12.0 JSP/小服务程序开发环境
13.0 迁移辅助程序 *
14.0 Persistence Builder +
15.0 RMI Access Builder * +
16.0 可视化组合编辑器
17.0 Servlet Builder 和 Servlet Launcher  * +
18.0 Swing 类
19.0 XMI Toolkit +

* 这些组件在 VisualAge for Java 版本 4.0 中不受支持。

+ 仅限于企业版。

E 部分:一般信息

1.0 处理项目资源与资源管理
2.0 从 OS/2 和 AIX 迁移
3.0 J2SDK v.1.2.2 中新的安全性限制
4.0 新的外部版本控制工具(替换外部 SCM 工具)
5.0 在 VisualAge for Java 中使用第三方 ORB
6.0 附加功能部件 CD 的内容

附录

附录 A:数据访问功能部件的比较

A 部分:VisualAge for Java 专业版

A.1.0 先决条件

此修订版的“VisualAge for Java 版本 4.0”具有以下硬件和软件先决条件:

如果想要让 WebSphere Application Server 与 DB2(R) 和 VisualAge for Java 并行运行,建议最少使用 512 MB 的 RAM。

* 注意:VisualAge for Java 不支持 Logitech 滚动鼠标。任何带有将滚动操作重新映射到鼠标的驱动程序的 Logitech 鼠标在用来滚动时将导致系统错误。 

A.2.0 安装

本节包含关于安装 VisualAge for Java 版本 4.0 的信息。重要注意事项:如果是从先前版本的 VisualAge for Java 迁移,在安装版本 4.0 之前,请参考 3.0 一节。与 Windows 2000 上的安装相关的特殊信息,请参考 2.3 一节。

此外,请参考自述文件(可在产品 CD 的 README 目录中找到),以获取有关最新问题和限制的信息。

A.2.1 安装 VisualAge for Java 版本 4.0

在安装此产品之前,检查下列各项:

如果尝试在 Windows ME 上安装 VisualAge for Java,系统会提示您增大环境空间。在执行安装之前必须执行下面概述的步骤,否则,VisualAge for Java 帮助系统将不能正常工作。要增大环境空间,请执行下列步骤:

  1. 退出“安装”屏幕。
  2. 打开“Windows 资源管理器”。浏览至 Windows 目录(例如,C:\Windows)。
  3. 右键单击 Command.com,然后从其弹出菜单中单击属性。单击内存选项卡。
  4. 初始环境框中,将初始环境大小设置为 4,096 字节。单击确定
  5. 关闭“Windows 资源管理器”。
  6. 重新引导计算机。
  7. 重新启动 VisualAge for Java 的安装。

A.2.1.1 从产品 CD 安装 VisualAge for Java 版本 4.0

  1. 将 CD-ROM 插入 CD 驱动器。如果要从先前版本的 VisualAge for Java 迁移,则在继续进行安装过程之前,请阅读“从先前版本的 VisualAge for Java 迁移”(本文档的 3.0 一节)。
  2. 如果系统禁用了自动运行,则从 CD 驱动器的根目录运行 setup.exe。
  3. 选择安装产品。选择安装 VisualAge for Java 以开始安装 VisualAge for Java。如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,请参考 A.2.1.1.1 一节以获取有关安装 Distributed Debugger 的信息。
  4. 按照屏幕上的指示信息进行操作。
  5. 启动 VisualAge for Java IDE。

以安静方式进行安装
要以安静方式安装 VisualAge for Java 版本 4.0,请从 ivj40\setup 目录调用以下命令:

setup /s /v/qn

VisualAge for Java 将自动安装在 c:\Program Files\IBM\VisualAge for Java 缺省目录中。

要以安静方式安装至另一目录(例如,d:\IBMVJava40),请从 ivj40\setup 目录中调用以下命令:

setup /s /v"INSTALLDIR=\"d:\IBMVJava40\" /qn"

其中,d:\IBMVJava40 是安装目标目录。

A.2.1.1.1 从产品 CD 安装 Distributed Debugger
如果打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,应当安装 Distributed Debugger。Distributed Debugger 在下列操作系统上受支持:Windows、AIX、OS/2、HP-UX、Solaris、Linux 和 Linux/390。下面提供了用于每个操作系统的安装说明。Distributed Debugger 的所有文件都位于产品 CD 的 Debugger 目录中。 

 Distributed Debugger Windows 版

  1. 运行 setup.exe 并选择安装产品。然后选择安装 Distributed Debugger 以安装调试器。
Distributed Debugger AIX 版  
  1. 创建一个临时目录,例如 /tmp/idebug。
  2. 将 idebug.tar.Z 从安装媒体复制到该临时目录中。
  3. 将当前目录更改为该临时目录。
  4. 发出以下命令,将 idebug.tar.Z 文件解压:uncompress idebug.tar.Z
  5. 发出以下命令,从 idebug.tar 中解压缩安装映象:tar -xvf idebug.tar
  6. 作为 root 用户,发出以下命令:installp -ac -X -V2 -g -N -d idebug
  7. 也可以通过以下命令来使用 SMIT:smitty install_latest

Distributed Debugger OS/2 版

请按照 README_install.txt 中的指示信息进行操作,该文件位于产品 CD 上的 Debugger\OS2 子目录中。

Distributed Debugger HP-UX 版

先决条件: 
Java 版本 1.3 对于安装和 Java 调试是必需的。

  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 install.class 复制到临时目录中。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,应发出命令 cd /tmp/idebug 来打开它。
  4. 作为 root 用户,输入命令:java install.class
Distributed Debugger Solaris 版  
  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 dbgsetup 和 idebug.pkg 复制到该临时目录。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,应发出 cd /tmp/idebug 命令来打开它。
  4. 通过运行以下命令,使 "dbgsetup" 成为可执行文件:chmod +x dbgsetup
  5. 作为 root 用户,输入以下命令来安装调试器:./dbgsetup idebug.pkg

Distributed Debugger Linux 版 

作为 root 用户,输入以下命令来安装调试器:rpm -Uvh DERJPICL-9-1.i386.rpm

Distributed Debugger Linux/390 版 

作为 root 用户,输入以下命令来安装调试器:rpm -Uvh DERJPICL-9-1.s390.rpm

Distributed Debugger OS/390 版

  1. 安装 Distributed Debugger Windows 版。
  2. 请按照 README_install.txt 中的指示信息进行操作,该文件位于 Windows 的基本安装目录中。

A.2.1.2 从 VisualAge for Java 版本 4.0 的电子映象安装
为了缩短下载时间,VisualAge for Java 专业版 Windows 版,版本 4.0 的电子映象分成了几个部分。

A.2.1.2.1 IDE
“集成开发环境”有 9 个可下载部件。所有这 9 个部件都是自解压文档。您必须安装前两个;其余的是可选的。有关每个压缩文档所包含的内容的详细信息,请参考下面的列表。

在下载前两个部件以及您想要的可选文件之后,请运行每个自解压文档,并确保将每个压缩文档都解压缩到同一临时目录中。在解压缩所有文件之后,转至该临时目录并运行 setup.exe。按照屏幕上的指示信息进行操作并启动 IDE。

如果您希望在任何非英语语言环境中工作,在运行 setup.exe 之前,必须下载正确的部件并运行用于您的语言环境的自解压文档。在安装 VisualAge for Java 之后,便不能再更改或添加语言。

如果正在使用 VisualAge for Java 的电子映象,则不能在初始安装后使用“添加/删除程序” 对话框(开始 > 设置 > 控制面板 > 添加/删除程序)安装附加 VisualAge for Java 组件。 如果试图这样做的话,会接收到一条出错信息并无法安装任何附加组件。必须在解压缩下载部件的路径中运行 setup.exe,才能将所有附加组件添加至 VisualAge for Java。

下面是每个部件(压缩文档)的描述:

A.2.1.2.2 Distributed Debugger
对于 Distributed Debugger 支持的每个目标操作系统都有一个可单独下载的部件。如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,应当下载并安装 Distributed Debugger。下面提供了用于每个操作系统的安装说明。还可以在每个部件附带包括的 readme.txt 文件中找到这些指示信息和关于许可证协议的信息。

VisualAge for Java-Distributed Debugger Windows 版包含用于 Windows 的用户界面和调试引擎。此部件是一个自解压文档。要进行安装,请执行下列步骤:

  1. 如果您已下载并解压缩 VisualAge for Java,则运行 setup.exe 并选择安装产品。然后选择安装 Distributed Debugger。 
  2. 如果您想要安装 Distributed Debugger,而不安装 VisualAge for Java,请从命令提示符处打开 DebugDirectory\windows 目录(其中,DebugDirectory 是您解压缩 Distributed Debugger 的目录)并运行以下命令:setup.bat
VisualAge for Java-Distributed Debugger AIX 版包含 AIX 调试引擎。要进行安装,请按照下列指示信息进行操作:
  1. 创建一个临时目录,例如 /tmp/idebug。
  2. 将 idebug.tar.Z 从安装媒体复制到该临时目录中。
  3. 将当前目录更改为该临时目录。
  4. 发出以下命令,将 idebug.tar.Z 文件解压:uncompress idebug.tar.Z
  5. 发出以下命令,从 idebug.tar 中解压缩安装映象:tar -xvf idebug.tar
  6. 作为 root 用户,发出以下命令:installp -ac -X -V2 -g -N -d idebug
  7. 也可以通过以下命令来使用 SMIT: smitty install_latest
VisualAge for Java-Distributed Debugger OS/2 版包含 OS/2 调试引擎。要进行安装,请按照(Distributed Debugger OS/2 版部件附带包括的)README_install.txt 中的指示信息进行操作。

VisualAge for Java-Distributed Debugger HP-UX 版包含用于 HP-UX 的调试引擎。

先决条件: 
Java 版本 1.3 对于安装和 Java 调试是必需的。

要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作:

  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 install.class 复制到临时目录中。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,则应发出命令 cd /tmp/idebug 来打开它。
  4. 作为 root 用户,输入命令:java install.class
VisualAge for Java-Distributed Debugger Solaris 版包含用于“Solaris 操作环境”的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作:
  1. 通过运行以下命令,使 "dbgsetup" 成为可执行文件:chmod +x dbgsetup
  2. 作为 root 用户,输入以下命令来安装调试器:./dbgsetup idebug.pkg

VisualAge for Java-Distributed Debugger Linux 版包含用于 Linux 的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作来安装调试器:

作为 root 用户,输入以下命令:rpm -Uvh DERJPICL-9-1.i386.rpm

VisualAge for Java-Distributed Debugger Linux/390 版包含用于 Linux/390 的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作来安装调试器:

作为 root 用户,输入以下命令:rpm -Uvh DERJPICL-9-1.s390.rpm

Distributed Debugger OS/390 版

  1. 安装 Distributed Debugger Windows 版。
  2. 请按照 README_install.txt 中的指示信息进行操作,该文件位于 Windows 的基本安装目录中。

A.2.1.2.3 IBM Developer Kit 1.2.2
VisualAge for Java-IBM Developer Kit 1.2.2
包含 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9,用于 Windows 平台。这是一个自解压文档。要安装它,请运行此文件,在从压缩文档中解压缩出来之后,此文件会自动启动安装程序,请您遵照指示信息完成安装。

A.2.2 以后安装附加的组件

在初始安装之后,如要安装附加的 VisualAge for Java 组件,请将 CD-ROM 插入 CD 驱动器,选择安装 VisualAge for Java,并在程序维护屏幕中选择修改。如果系统禁用了自动运行,则必须从 CD 驱动器的根目录运行 setup.exe。即使您有 VisualAge for Java 的电子版本,也必须人工运行 setup.exe,并执行相同的步骤。

所有组件都将列示在“编辑功能部件”窗口中,并带有其当前安装状态的指示信息。红色的 'X' 指示当前尚未安装的组件。您可以选择安装这些组件。请不要选择任何未标有红色 'X' 的组件,因为它们已经安装好了。 

不能安装 VisualAge for Java 版本 4.0 的第二个实例。如果不首先卸载产品,便不能更改安装语言。

A.2.3 与 Windows 2000 相关的安装注意事项  

VisualAge for Java 的本发行版继续提供对 Windows 2000 的容错支持(由 Microsoft 定义)。

缺省安装目录是 <Program Files>\IBM\VisualAge for Java。对于 Windows 2000,在缺省情况下,面向 <Program Files> 的安装只能由“管理员”和“标准”(高级)用户执行。“普通”(受限)用户不能写入此位置。

根据 VisualAge for Java 的当前设计,如果将产品安装至此位置,且将要由“普通”(受限)用户使用,则必须更改 <Program Files> 下的 IBM 或 IBM\VisualAge for Java 目录的安全性设置,以允许普通用户进行写访问。否则,当尝试启动 IDE 时,会发生故障。

A.2.4 安装 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9 

如果 VisualAge for Java 是从产品 CD 安装的,则必须从 IBM Developer Kit 目录运行 install.exe 才能安装 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9。此目录位于产品 CD 上。如果有 VisualAge for Java 的电子版本,此目录也会位于临时目录(您解压缩部件的目标位置)中,但不需要运行 install.exe,因为在从下载的 IBM Developer Kit 压缩文档中解压缩安装程序之后,它会自动启动。

有关 IBM Developer Kit 的详细信息,请参考 IBM Developer Kit 目录中的自述文件 (README)。

A.3.0 从先前版本的 VisualAge for Java 迁移

在开始迁移过程之前,请参考 D 部分E 部分,以了解有关特定于组件的迁移信息和一般迁移信息。

可以自动地从版本 3.5 或版本 3.5.3 迁移。版本 4.0 的安装是在版本 3.5 或版本 3.5.3 的基础上进行的。有关从 VisualAge for Java 版本 3.5 或版本 3.5.3 迁移的信息,请参考 3.1 一节。

必须以人工方式从 3.0x Early Adopters 迁移。有关从 VisualAge for Java 3.0x Early Adopters 迁移的信息,请参考 3.2 节。

如果当前正在使用带有 JDK 1.1.x 支持的 VisualAge for Java 版本 2.0、3.0 或 3.02,则不能自动迁移至 VisualAge for Java 版本 4.0。这些版本的 VisualAge for Java 可以与 VisualAge for Java 版本 4.0 共存。有关从 VisualAge for Java 的版本 2.0 或 3.0x 迁移资源库内容和资源文件的信息,请参考 3.2 一节。

不能从“VisualAge for Java 企业入门版”的版本 3.5 或“VisualAge for Java 企业版”的版本 3.5 或版本 3.5.3 迁移至“VisualAge for Java 专业版”的版本 4.0。必须迁移至企业版的版本 4.0。

注意:在从 VisualAge for Java 版本 3.5 或版本 3.5.3 迁移至版本 4.0 时,安装过程可能会看上去已挂起。发生这种情况的原因是 "DoCosting" 函数(它将 3.5 或 3.5.3 版的文件与 4.0 版的文件作比较)最多需要三分钟的时间来执行,这导致安装过程看上去象是已挂起。

A.3.1 从版本 3.5 或从版本 3.5.3 迁移

从 VisualAge for Java 版本 3.5 或版本 3.5.3 的迁移是自动的。版本 4.0 的安装程序自动将已安装的版本 3.5 或版本 3.5.3 产品升级至版本 4.0。

自动迁移

  1. 执行下列步骤,备份用户数据。请创建资源库和资源文件的备份副本,以防迁移期间发生问题。
    1. 将项目和包版本化。只有已版本化的项目和包才能导入到 VisualAge for Java 版本 4.0 资源库中。请参考 VisualAge for Java 联机帮助,以获取有关版本化的指示信息。
    2. 将您的资源库保存到 VisualAge for Java 目录树之外的新位置中。资源库的文件名和路径是 x:\IBMVJava\ide\repository\ivj.dat,其中,x:\IBMVJava 是 VisualAge for Java 的安装目录。
      注意:如果正在从版本 3.5 或版本 3.5.3 迁移,则资源库还包括项目资源文件的已版本化副本,它们位于以下目录中:x:\IBMVJava\ide\repository\ivj.dat.pr。必须将 ivj.dat.pr 目录的一个副本保存在 VisualAge for Java 目录树之外的位置。 
  2. 要安装 VisualAge for Java 版本 4.0,请参考 2.1 一节中的安装说明。
  3. 选择升级当前安装。您不需要卸载版本 3.5 或版本 3.5.3,因为它会自动升级至版本 4.0。版本 4.0 将自动安装在版本 3.5 或版本 3.5.3 的安装目录中。
  4. 在成功地完成升级安装之后,当您首次启动版本 4.0 IDE 时,所有项目资源和资源库数据都自动地迁移至版本 4.0。 

如果发生安装故障,则必须人工迁移用户数据。如果 IDE 未能启动,或者如果 IDE 在迁移用户数据时遇到错误,也必须人工迁移用户数据。 

人工迁移

  1. 验证是否已将资源库数据(即资源库,如果正在从版本 3.5 或版本 3.5.3 迁移,还包括 ivj.dat.pr 目录)和资源文件保存到了 VisualAge for Java 目录树之外的位置。
  2. 彻底卸载产品。应删除版本 3.5 或版本 3.5.3 的所有子目录和文件。
  3. 重新引导并安装版本 4.0。
  4. 启动 IDE。
  5. 现在可以将包和项目从旧资源库中导入到新资源库中了。在“工作台”中,选择文件 > 导入,然后选择资源库单选按钮并单击下一步。在资源库名字段中,输入 ivj.dat 的备份副本的路径。然后,选择想要导入的项目和包。不能导入任何没有版本化的项目或包。注意:不应尝试从 VisualAge for Java 的先前版本导入任何系统项目。
  6. 要自动地将选中的项目添加到工作区,选择添加最近的项目版本到工作区复选框。此复选框只在项目单选按钮被选中时才是可用的。
  7. 单击完成
  8. 您不需要将资源文件的备份副本复制到 x:\IBMVJava\ide\project_resources\project 子目录中,其中,x:\IBMVJava 是 VisualAge for Java 版本 4.0 的安装目录,而 project 是与资源相关联的项目的名称。
    当将版本 3.5 或版本 3.5.3 项目导入到资源库中时,会自动将项目资源的所有已版本化副本(包含在 ivj.dat.pr 目录中)添加到资源库中。 

A.3.2 从 VisualAge for Java 的版本 2.0、3.0x 或 3.0x Early Adopters 迁移

可以以人工方式从 VisualAge for Java 的版本 2.0、版本 3.0x 和 3.0x Early Adopters 迁移资源库和资源文件的内容。有关修复断开的信息,参考联机帮助文件“修复类或包引用”。

不必卸载版本 2.0、3.0x 或 3.0x Early Adopters;它们可以与 VisualAge for Java 版本 4.0 共存。

如果您想将版本 2.0、3.0x 或 3.0x Early Adopters 环境 Java 2 平台版的标准版 V1.2 的资源库和资源文件导入版本 4.0,则请在卸载版本 2.0、3.0x 或 3.0x Early Adopters 之前执行下面所有步骤。如果不是正在卸载版本 2.0、3.0x 或 3.0x Early Adopters, 则无需执行步骤 2、3、4 和 8,但必须执行所有其他步骤。 

  1. 将项目和包版本化。只有已版本化的项目和包才能导入到此版本的 VisualAge for Java 中。请参考 VisualAge for Java 联机帮助,以获取有关版本化的指示信息。 
  2. 将资源库保存至 VisualAge for Java 目录树之外的新位置中。资源库的文件名和路径是 x:\IBMVJava\ide\repository\ivj.dat,其中,x:\IBMVJava 是 VisualAge for Java 的安装目录。
  3. 将 Java 应用程序使用的任何资源文件(如图像或声音文件)复制到 VisualAge for Java 目录树之外的一个目录中。在缺省情况下,每个 VisualAge for Java 项目的资源文件都放在名为 x:\IBMVJava\ide\project_resources\project 的子目录下,其中,x:\IBMVJava 是 VisualAge for Java 的安装目录,而 project 是与资源相关联的项目的名称。
  4. 现在可以卸载版本 2.0、3.0x 或 3.0x Early Adopters 并安装版本 4.0 了。不必卸载版本 2.0、3.0x 或 3.0x Early Adopters;它们可以与 VisualAge for Java 版本 4.0 共存。
  5. 安装 VisualAge for Java 版本 4.0(参见 2.1 一节)并启动版本 4.0 IDE。 
  6. 有关将包和项目从旧资源库中导入新资源库的信息,请参考联机帮助。不能导入任何没有版本化的项目或包。注意:不应尝试从 VisualAge for Java 的先前版本导入任何系统项目。
  7. 将资源文件的备份副本复制到 x:\IBMVJava\ide\project_resources\project 子目录中(或者,如果未卸载 2.0/3.0x 或 3.0x Early Adopters,则从当前的 2.0/3.0x 或 3.0x Early Adopters 安装创建资源文件的副本并复制它),其中,x:\IBMVJava 是 VisualAge for Java 版本 4.0 的安装目录,而 project 是与资源相关联的项目的名称。
  8. 在验证人工迁移已成功之后,便可以删除您在步骤 2 和 3 中创建的备份副本。

A.4.0 已知问题与限制

此外,请参考自述文件(可在 CD 的 README 目录中找到),以获取有关最新问题和限制的信息。

A.4.1 与安装相关的已知问题与限制

以下是安装期间您应了解的问题的列表。

A.4.1.1 磁盘限制

A.4.1.2 用户权限

A.4.1.3 TCP/IP 注意事项

A.4.1.4 Shell 扩展 (Windows NT)

如果您接收到一条消息,指示安装程序检测到 Windows NT 的 shell 扩展,则安装不能继续。您应当执行下列步骤:

  1. 务必要有“紧急恢复磁盘”。有关创建此磁盘的指示信息可以在 Windows 帮助文档中找到。
  2. 在命令提示符处输入 regedit.exe
  3. 在“注册表编辑器”中,展开以下键:
    \\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  4. 选择上述键的名称/数据对中的 shell 名。重要事项:记录对此名称记录的数据,在安装 IBM VisualAge for Java 之后,您将需要此数据。
  5. 在菜单栏中,对 shell 名/数据对选择编辑 > 修改
  6. 将 shell 名的值设置为 Explorer.exe。单击确定
  7. 从菜单栏中选择注册表 > 退出
  8. 重新启动并完成 IBM VisualAge for Java 安装。
  9. 在安装完成之后,恢复先前的注册表条目,如下所示:
    a. 在命令提示符处输入 regedit.exe
    b. 在“注册表编辑器”中,展开 \\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 键
    c. 选择上述键的名称/数据对中的 shell 名。
    d. 在菜单栏中,对 shell 名/数据对选择编辑 > 修改
    e. 将 shell 名的值恢复为您在步骤 4 中记录的值。单击确定
    f. 从菜单栏中选择注册表 > 退出

A.4.1.5 从失败的安装恢复

如果安装失败,则必须除去任何已安装的版本 4.0 文件。如果您希望用来安装 VisualAge for Java 的目录是空的,表示安装过程已回滚并除去了任何已安装的文件。您可以删除这个空目录(如果您想这样做的话,但并非一定要这样做)。然而,如果该目录包含文件,则必须再次启动安装过程。它将以维护方式打开,您必须选择除去版本 4.0 的部分安装,然后才能再次尝试安装产品。

您还需要删除以下注册表条目:

\\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\VisualAge for Java for Windows

使用下列指示信息:

  1. 务必要有“紧急恢复磁盘”。有关创建此磁盘的指示信息可以在 Windows 帮助文档中找到。
  2. 在命令提示符处输入 regedit.exe
  3. 在“注册表编辑器”中,展开并选择以下键:
    \\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\VisualAge for Java for Windows\4.0
  4. 从菜单栏对此键选择编辑 > 删除
  5. 当要求您确认删除该键时,选择
  6. 从菜单栏选择注册表 > 退出

如果在安装失败之前已安装了任何 NetQuestion 文件,也必须删除它们。

  1. 打开新的命令提示。通过在您刚刚打开的命令提示中输入以下命令来检查是否已安装任何 NetQuestion 文件:set imninstsrv。此命令将向您提供机器上 NetQuestion 的安装位置。例如,

    IMNINSTSRV=C:\imnnq_nt

    根据安装 VisualAge for Java 的驱动器的不同以及正在使用的操作系统的不同,出现的 NetQuestion 目录位置也会有所不同。如果设置了变量(即,向您提供了 NetQuestion 的安装位置),则继续执行步骤 2。 

    如果您接收到“未定义环境变量 imninstsrv”之类的错误消息,则或者是未安装任何 NetQuestion 文件,或者是 NetQuestion 安装未成功完成。如果发生这种情况,请选择开始 > 查找 > 文件或文件夹并在系统上搜索以下文件:vahelp.cfg。如果在任何名称以 "imnnq" 开头的目录(例如,imnnq_NT 或 imnnq_98)中找到此文件,则删除它。不需要执行步骤 2 和 3。 

  2. 转至 NetQuestion 目录(这是跟在 IMNINSTSRV= 后面的信息)
  3. 输入 vahcfg remove /p vj32

此操作将除去 VisualAge for Java 安装的任何 NetQuestion 文件。这不会影响其他产品(例如,DB2)安装的 NetQuestion 文件。

备份资源库和资源文件(如果还没有这样做的话)。有关如何执行此任务的信息,请参考 A 部分中的 3.1 一节。 

在执行完所有这些步骤之后,重新引导并重新安装产品。在重新安装 VisualAge for Java 之后,如果帮助失败,请参考《故障诊断指南》以获取更多有关从帮助故障中进行恢复的信息。《故障诊断指南》(trshoot.htm) 位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。在安装 VisualAge for Java 之后,它还位于 X:\IBMVJava 中,其中,X:\IBMVJava 是 VisualAge for Java 的安装目录。

A.4.1.6 Windows Installer 错误

以下是安装期间您应了解的 Windows Installer 错误的列表。

错误 1603(仅限于 Windows NT 4.0)

如果您在安装 VisualAge for Java 时接收到错误消息 1603,这指示 Windows Installer 未能初始化,安装不能继续。  

某些产品(如 Symantec 的 VisualCafe)在任何 Windows 平台上安装时,都会自动安装一个名为 sfc.dll 的文件。它只在 Windows 2000 上使用,在 Windows 2000 上,Windows Installer 调用它来进行安全性处理。 

如果一个具有此名称的文件驻留在 Windows NT 4.0 上的 PATH 中,则 Windows Installer 将尝试装入它,尽管 sfc.dll 只应用于 Windows 2000。于是,Windows Installer 将失败。  

要解决此问题,请执行这些步骤:

  1. 选择开始 > 查找 > 文件或文件夹并在系统上搜索 sfc.dll 文件。
  2. 临时地将 sfc.dll 文件(驻留在 Windows NT 4.0 PATH 中的版本)重命名为 sfc.old。
  3. 安装 VisualAge for Java。
  4. 在成功安装 VisualAge for Java 之后,将 sfc.old 重命名为 sfc.dll。

致命的 LoadLibrary() 错误

发生“致命的 LoadLibrary() 错误”的原因是 Windows Installer 没有正确地注册一个或多个 VisualAge for Java 安装内核 (IKernel)。要解决此问题,必须删除 IKernal 文件所在的 InstallShield 目录,然后通过执行下列步骤重新安装 VisualAge for Java:

  1. 如果有必要的话,退出安装。
  2. 删除以下目录:x:\Program Files\Common Files\InstallShield,其中,x 是您尝试在其上安装 VisualAge for Java 的驱动器。
  3. 重新安装产品。 

错误 1631 或内部错误 2755(仅限于 Windows NT 4.0)

如果在 Windows NT 4.0 上安装 VisualAge for Java, 您可能会接收到下列其中一个错误消息:

如果您接收到这些出错信息中的任何一个,即表示可能有的注册表键具有空值。当您启动 VisualAge for Java 安装时,userenv.dll 文件将尝试对各种注册表键进行语法分析,如果有任何键为空值,安装将失败,并发出上述一个出错信息。

要解决这种问题,应在安装 VisualAge for Java 之前除去空环境变量或修改它们(将空值更改为有效值)。在安装 VisualAge for Java 之后,可以将它们设置回最初的值。

注意:请小心谨慎地除去或修改空变量。在除去或修改它们之前,您应当考虑可能出现的任何潜在影响。

内部错误 2381、1303、1310、1313(仅限于 Windows NT)

如果正在尝试安装 VisualAge for Java,并且下列条件中的任何条件或全部条件都成立:

您可能会接收到下列错误消息中的一个或多个:

当对下列文件夹只具有“读取”许可权的时候,已报告发生此问题:

\Program Files\IBM\VisualAge for Java
\WinNT\Installer

要解决此问题,确保您对驱动器或目录具有必需的许可权。为此,请执行下列步骤:

  1. 在“Windows 资源管理器”中,选择适当的驱动器或目录。
  2. 右键单击文件夹并从弹出菜单中选择属性
  3. 选择安全性选项卡。单击权限
  4. 选择 Everyone。从访问类型下拉菜单中选择完全访问
  5. 选择替换子目录的权限复选框。
  6. 单击确定
  7. 当提示您确认是否要替换所有子目录的权限时,单击
  8. 单击确定
  9. 安装 VisualAge for Java。

内部错误 2735 引擎启动

如果您接收到错误 2735,请执行下列步骤来解决它:

  1. 在 Windows 32 系统目录中搜索下列文件:
  2. shd401lc.dll 重命名为 shd401lc.old
  3. shdoclc.dll 重命名为 shdoclc.old
  4. 选择开始 > 运行以打开“运行”对话框。运行下列命令来取消注册这些 .dll 文件。 
  5. 通过从“运行”对话框中运行下列命令来注册这些 DLL:
  6. 安装 VisualAge for Java。

错误 1606/内部错误 2707

如果您接收到以下错误消息,则可能是 Common Administrative Tools 注册表文件的值不正确:

错误 1606。不能访问网络位置 \Profiles\AllUsers\StartMenu\Programs\Administrative Tools\。
内部错误 2707。INSTALLDIR。

在您可以安装 VisualAge for Java 之前,必须编辑 Common Administrative Tools 注册表文件的值。为此,请执行下列步骤:

  1. 从命令提示符处调用 regedit.exe。
  2. 展开并选择键
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folder
  3. 选择 Common Administrative Tools。
  4. 选择编辑 > 修改
  5. 在“值数据”字段中,输入以下内容:%SystemRoot%\Profiles\AllUsers\StartMenu\Programs\Administrative Tools
  6. 单击确定
  7. 从菜单栏选择注册表 > 退出
  8. 安装 VisualAge for Java。

A.4.2 与卸载相关的已知问题与限制

以下是卸载 VisualAge for Java 时您应了解的问题的列表。

A.4.2.1 磁盘空间

Windows 系统驱动器上至少要有 2MB 的可用空间,环境变量 TEMP 或 TMP 必须指向至少带有 5MB 可用空间的有效临时目录。

A.4.2.2 卸载 Distributed Debugger

如果安装了 Distributed Debugger 作为 VisualAge for Java 安装的一部分,则应当在卸载 Distributed Debugger 之前卸载 VisualAge for Java。在卸载 VisualAge for Java 之后,可以通过转至 Debugger 安装目录并运行卸载程序来卸载 Distributed Debugger。

如果已卸载 VisualAge for Java,但不能卸载 Distributed Debugger,则必须删除以下注册表键:

HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/ParentProducts/VisualAge for Java

然后再次尝试卸载 Debugger。如果正在将 Distributed Debugger 与任何其他产品配合使用,请不要执行这些步骤,因为在您删除该注册表键之后,便再也不能使用 Debugger 了。

请执行这些步骤:

  1. 在命令提示符处输入 regedit.exe
  2. 在“注册表编辑器”中,展开并选择以下键:
    HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/ParentProducts/VisualAge for Java
  3. 从菜单栏对此键选择编辑 > 删除
  4. 当要求您确认删除该键时,选择
  5. 从菜单栏选择注册表 > 退出

并且,将以下注册表键的值设置为 1

HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/refcount

A.4.2.3 环境变量 (Windows 98)

当在 Windows 98 上卸载 VisualAge for Java 时,一些环境条目可能会留在 autoexec.bat 文件中。通常,这些遗留条目不会产生任何问题,但如果您卸载并重新安装产品多次,则可能会发生两个问题。可能会有相互冲突的路径语句,使得联机帮助无法工作,也可能会耗尽路径空间,导致您无法成功地重新安装产品。

要解决这些问题:

  1. 备份 autoexec.bat 文件。
  2. 通过执行这些步骤,确定系统上是否有另一程序需要 HTML 搜索引擎(如 DB2):
    a) 卸载 VisualAge for Java 并重新引导系统。
    b) 从命令提示符处输入 regedit.exe,并且,在“注册表编辑器”中,展开 HKEY_LOCAL_MACHINE\SOFTWARE\ 树。如果此树中有一个 IBM 目录,则展开它,查看是否有一个 NetQuestion 目录。如果您看到此目录,则可能是正在将搜索引擎与另一个 IBM 产品配合使用。
  3. 如果没有将 HTML 搜索引擎用于另一产品,请在重新安装 VisualAge for Java 之前,除去 autoexec.bat 文件中的任何 IMN 或 IMQ 条目。
  4. 如果正在将 HTML 搜索引擎用于另一产品,则从 autoexec.bat 文件中删除这些条目的任何重复:
    IMNINST
    IMNINSTSRV
    IMNNQ
    IMNNQ_95
    IMQCONFIGCL
    IMQCONFIGSRV
    并删除下面这一行的重复条目:IF EXIST X:\IMNNQ_95\IMNENV.BAT CALL IMNEV.BAT
  5. 在除去重复条目时,千万不要除去原始条目。如果您不肯定哪些条目是原始条目,则必须确定系统认为 NetQuestion 安装在哪里。请执行这些步骤:
    1. 在命令提示符处输入 regedit.exe
    2. 在“注册表编辑器”中,展开以下键:
      \\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\NetQuestion\Installation Directory
    3. 这个键内部的目录值显示了 NetQuestion 的安装路径。某些环境变量必须包含此目录作为它们的值的一部分,这样 NetQuestion 才能正常工作。

      如果您发现上述任何环境变量包含不同于注册表中的目录作为它们的值的一部分,则删除它们。

A.4.2.4 卸载 NetQuestion

卸载 VisualAge for Java 时,可能不会卸载 NetQuestion。如果未卸载 NetQuestion,而您以后尝试重新安装产品,则可能会发生问题。 

要除去 VisualAge for Java 安装的 NetQuestion 文件,请执行下列步骤。这不会影响其他产品(例如,DB2)安装的 NetQuestion 文件。

  1. 要查找 NetQuestion 目录,请在命令提示符处输入以下命令:set imninstsrv。此命令将向您提供机器上 NetQuestion 的安装位置。例如,

    IMNINSTSRV=C:\imnnq_nt

    根据安装 VisualAge for Java 的驱动器的不同以及正在使用的操作系统的不同,出现的 NetQuestion 目录位置也会有所不同。如果您接收到“未定义环境变量 imninstsrv”之类的错误消息,表示已卸载了所有 NetQuestion 文件。

  2. 转至 NetQuestion 目录(这是跟在 IMNINSTSRV= 后面的信息)
  3. 输入 vahcfg remove /p vj32

这将除去 VisualAge for Java 安装的任何 NetQuestion 文件。

如果以后重新安装 VisualAge for Java,而帮助失败,则请参考《故障诊断指南》以获取更多有关从帮助故障中进行恢复的信息。《故障诊断指南》(trshoot.htm) 位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。在安装 VisualAge for Java 之后,它还位于 X:\IBMVJava 中,其中,X:\IBMVJava 是 VisualAge for Java 的安装目录。

B 部分:VisualAge for Java 企业版

B.1.0 先决条件

B.1.1 一般先决条件

此修订版的“VisualAge for Java 版本 4.0”具有以下硬件和软件先决条件:

如果想要让 WebSphere Application Server 与 DB2 和 VisualAge for Java 并行运行,建议最少使用 512 MB 的 RAM。

如果是在小组环境中工作,则必须使用 EMSRV 版本 7.1。有关从版本 6.x 或 7.0 移至版本 7.1 的信息,参考 C 部分。 

* 注意:VisualAge for Java 不支持 Logitech 滚动鼠标。任何带有将滚动操作重新映射到鼠标的驱动程序的 Logitech 鼠标在用来滚动时将导致系统错误。

B.1.2 特定于组件的先决条件

某些组件具有特定的先决条件:

B.2.0 安装

本节包含有关安装 VisualAge for Java 版本 4.0 的信息。注意:如果是从先前版本的 VisualAge for Java 迁移,在安装 VisualAge for Java 版本 4.0 之前,请参考下面的 3.0 一节。与 Windows 2000 上的安装相关的特殊信息,请参考 2.5 一节。

此外,请参考自述文件(可在产品 CD 的根目录中找到),以获取有关最新问题和限制的信息。

注意:由于 Windows 98 上的 CD-ROM 文件系统 (CDFS) 支持中存在着一项限制,所以,从 CD-ROM 安装特定电子商务连接器可能会失败并导致 下列其中一个或多个错误对话框显示(这取决于您选择的连接器):

任何未安装的文件都存储在一个 zip 文件 (econnfix.zip) 中,该文件位于产品 CD 的根目录中。如果尝试在 Windows 98 上安装 VisualAge for Java 并接收到上述消息中的任何一条,则必须将 econnfix.zip 解压缩 (unzip) 到产品的安装目录中(例如,通过运行命令 unzip econnfix.zip -d c:\Program Files\IBM\VisualAge for Java\,其中,c:\Program Files\IBM\VisualAge for Java\ 是产品的安装目录)。在这些文件就位之后,连接器就能正确地工作。

B.2.1 安装 VisualAge for Java 版本 4.0 企业版

在安装此产品之前,检查下列各项:

如果您尝试在 Windows ME 上安装 VisualAge for Java,则会提示您增大环境空间。在您执行安装之前,必须执行下面概述的步骤,否则,VisualAge for Java 帮助系统将不能正常工作。要增大环境空间,请执行下列步骤:

  1. 退出“安装”屏幕。
  2. 打开“Windows 资源管理器”。浏览至 Windows 目录(例如,C:\Windows)。
  3. 右键单击 Command.com,然后从其弹出菜单中单击属性。单击内存选项卡。
  4. 初始环境框中,将初始环境大小设置为 4,096 字节。单击确定
  5. 关闭“Windows 资源管理器”。
  6. 重新引导计算机。
  7. 重新启动 VisualAge for Java 的安装。

无论您是在安装 VisualAge for Java 小组客户机还是在安装带有本地资源库的客户机,都必须执行下面的指示信息。有关安装小组客户机的详细信息,请参考 2.3 一节,有关安装本地资源库的详细信息,请参考 2.4 一节。

B.2.1.1 从产品 CD 安装 VisualAge for Java 版本 4.0

  1. 如果要从先前版本的 VisualAge for Java 迁移,则在继续进行安装过程之前,请阅读“从先前版本的 VisualAge for Java 迁移”,即本文档的 3.0 一节。
  2. 将 CD-ROM 插入 CD 驱动器。
  3. 如果系统禁用了自动运行,则从 CD 驱动器的根目录运行 setup.exe。
  4. 选择安装产品。选择安装 VisualAge for Java 以开始安装 VisualAge for Java。如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,请参考 B.2.1.1.1 一节以获取有关安装 Distributed Debugger 的信息。
  5. 按照屏幕上的指示信息进行操作。
  6. 启动 VisualAge for Java IDE。

以安静方式进行安装
要以安静方式安装 VisualAge for Java 版本 4.0,请从 ivj40\setup 目录调用以下命令:

setup /s /v/qn

VisualAge for Java 将自动安装在 c:\Program Files\IBM\VisualAge for Java 缺省目录中。

要以安静方式安装至另一目录(例如,d:\IBMVJava40),请从 ivj40\setup 目录中调用以下命令:

setup /s /v"INSTALLDIR=\"d:\IBMVJava40\" /qn"

其中,d:\IBMVJava40 是安装目标目录。

注意:当以安静方式安装 VisualAge for Java 时,您不能连接至共享资源库;当以安静方式执行安装时,只能连接至本地资源库。如果您想要以安静方式进行安装,并且仍在小组环境中工作,则应当以本地方式进行安装,并在安装产品和启动 IDE 之后连接至共享资源库。请参考 pdf 目录中的 team.pdf 文件以获取有关如何以安静方式安装并在小组环境中工作的指示信息。这个 pdf 目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。如果没有下载包含 PDF 的部件,就没有这个目录。

B.2.1.1.1 从产品 CD 安装 Distributed Debugger
如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,您应当安装 Distributed Debugger。Distributed Debugger 在下列操作系统上受支持:Windows、AIX、OS/2、HP-UX、Solaris、Linux 和 Linux/390。下面提供了每个操作系统的安装说明。Distributed Debugger 的所有文件都在“附加功能部件”CD 上。

 Distributed Debugger Windows 版

  1. 可以从“附加功能部件”CD 安装 Distributed Debugger在“附加功能部件安装”屏幕中,选择安装产品,然后选择安装 Distributed Debugger
Distributed Debugger AIX 版  
  1. 创建一个临时目录,例如 /tmp/idebug。
  2. 将 idebug.tar.Z 从安装媒体复制到该临时目录中。
  3. 将当前目录更改为该临时目录。
  4. 发出以下命令,将 idebug.tar.Z 文件解压:uncompress idebug.tar.Z
  5. 发出以下命令,从 idebug.tar 中解压缩安装映象:tar -xvf idebug.tar
  6. 作为 root 用户,发出以下命令:installp -ac -X -V2 -g -N -d idebug
  7. 也可以通过以下命令来使用 SMIT: smitty install_latest

Distributed Debugger OS/2 版

请按照 README_install.txt 中的指示信息进行操作,该文件位于“附加功能部件”CD 上的 Debugger\OS2 子目录中。

Distributed Debugger HP-UX 版

先决条件: 
Java 版本 1.3 对于安装和 Java 调试是必需的。

  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 install.class 复制到临时目录中。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,则应发出命令 cd /tmp/idebug 来打开它。
  4. 作为 root 用户,输入命令:java install.class
Distributed Debugger Solaris 版  
  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 dbgsetup 和 idebug.pkg 复制至该临时目录。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,则应发出 cd /tmp/idebug 命令来打开它。
  4. 通过运行以下命令,使 "dbgsetup" 成为可执行文件:chmod +x dbgsetup
  5. 作为 root 用户,输入以下命令来安装调试器:./dbgsetup idebug.pkg

Distributed Debugger Linux 版 

作为 root 用户,输入以下命令来安装调试器:rpm -Uvh DERJPICL-9-1.i386.rpm

Distributed Debugger Linux/390 版 

作为 root 用户,输入以下命令来安装调试器:rpm -Uvh DERJPICL-9-1.s390.rpm

Distributed Debugger OS/390 版

  1. 安装 Distributed Debugger Windows 版。
  2. 请按照 README_install.txt 中的指示信息进行操作,该文件位于产品 CD 上的 Debugger\OS390 子目录中。

B.2.1.1.2 安装 J2EE 的测试版 
VisualAge for Java 的本发行版包含“Java 2 平台企业版”(J2EE(TM)) 的若干个组件的测试版。Sun 公司尚未正式发布这些 J2EE 组件。明确地说,本发行版的 VisualAge for Java 包括下列 J2EE 组件的“测试”版:

测试版组件放在“附加功能部件”CD上的 extras\BetaJ2EEConnectors 子目录中。如果您想要使用这些测试版组件,请参考 BetaJ2EEConnectors 子目录中的自述文件 (README),该文件包含这些组件的安装说明。  

B.2.1.2. 从 VisualAge for Java 版本 4.0 的电子映象安装
为了缩短下载时间,VisualAge for Java 企业版 Windows 版的版本 4.0 的电子映象分成了许多部分。

B.2.1.2.1 IDE
“集成开发环境”有 14 个可下载部件。所有这 14 个部件都是自解压文档。您必须安装前两个;其余的是可选的。有关每个压缩文档所包含的内容的详细信息,请参考下面的列表。

在下载前两个部件以及您想要的可选文件之后,请运行每个自解压文档,并确保将每个压缩文档都解压缩到同一临时目录中。在解压缩所有部件之后,转至该临时目录并运行 setup.exe。按照屏幕上的指示信息进行操作并启动 IDE。

如果您希望在任何非英语语言环境中工作,在运行 setup.exe 之前,必须下载正确的部件并运行用于您的语言环境的自解压文档。在安装 VisualAge for Java 之后,便不能再更改或添加语言。

如果正在使用 VisualAge for Java 的电子映象,则不能在初始安装后使用“添加/删除程序” 对话框(开始 > 设置 > 控制面板 > 添加/删除程序)安装附加 VisualAge for Java 组件。 如果试图这样做的话,会接收到一条出错信息并无法安装任何附加组件。必须在解压缩下载部件的路径中运行 setup.exe,才能将所有附加组件添加至 VisualAge for Java。

下面是每个部件的描述:

B.2.1.2.2. Distributed Debugger
对于 Distributed Debugger 支持的每个目标操作系统都有一个可单独安装的部件。如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,您应当下载并安装 Distributed Debugger。下面提供了用于每个操作系统的安装说明。您还可以在每个部件附带包括的 readme-1st.txt 文件中找到这些指示信息和关于许可证协议的信息。

VisualAge for Java-Distributed Debugger Windows 版包含用于 Windows 的用户界面和调试引擎。此部件是一个自解压文档。要进行安装,请执行下列步骤:

  1. 如果您已下载并解压缩 VisualAge for Java,则运行 setup.exe 并选择安装产品。然后选择安装 Distributed Debugger。 
  2. 如果您想要安装 Distributed Debugger,而不安装 VisualAge for Java,请从命令提示符处打开 DebugDirectory\windows 目录(其中,DebugDirectory 是您解压缩 Distributed Debugger 的目录)并运行以下命令:setup.bat
VisualAge for Java-Distributed Debugger AIX 版包含 AIX 调试引擎。要进行安装,请按照下列指示信息进行操作:
  1. 创建一个临时目录,例如 /tmp/idebug。
  2. 将 idebug.tar.Z 从安装媒体复制到该临时目录中。
  3. 将当前目录更改为该临时目录。
  4. 过发出以下命令,将 idebug.tar.Z 文件解压:uncompress idebug.tar.Z
  5. 发出以下命令,从 idebug.tar 中解压缩安装映象:tar -xvf idebug.tar
  6. 作为 root 用户,发出以下命令:installp -ac -X -V2 -g -N -d idebug
  7. 也可以通过以下命令来使用 SMIT: smitty install_latest

VisualAge for Java-Distributed Debugger OS/2 版包含 OS/2 调试引擎。要进行安装,请按照(Distributed Debugger OS/2 版部件附带包括的)README_install.txt 中的指示信息进行操作。

VisualAge for Java-Distributed Debugger HP-UX 版包含用于 HP-UX 的调试引擎。

先决条件: 
Java 版本 1.3 对于安装和 Java 调试是必需的。

要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作:

  1. 创建一个临时目录,例如,/tmp/idebug。
  2. 将 install.class 复制到临时目录中。
  3. 从命令提示符处打开该临时目录。如果该临时目录是 /tmp/idebug,则应发出命令 cd /tmp/idebug 来打开它。
  4. 作为 root 用户,输入命令:java install.class
VisualAge for Java-Distributed Debugger Solaris 版包含用于“Solaris 操作环境”的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作:
  1. 通过运行以下命令,使 "dbgsetup" 成为可执行文件:chmod +x dbgsetup
  2. 作为 root 用户,输入以下命令来安装调试器:./dbgsetup idebug.pkg

VisualAge for Java-Distributed Debugger Linux 版包含用于 Linux 的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作来安装调试器:

作为 root 用户,输入以下命令:rpm -Uvh DERJPICL-9-1.i386.rpm

VisualAge for Java-Distributed Debugger Linux/390 版包含用于 Linux/390 的调试引擎。要进行安装,请解取 (untar) 该文件并按照下列指示信息进行操作来安装调试器:

作为 root 用户,输入以下命令:rpm -Uvh DERJPICL-9-1.s390.rpm

Distributed Debugger OS/390 版

  1. 安装 Distributed Debugger Windows 版。
  2. 请按照 README_install.txt 中的指示信息进行操作,该文件位于 Windows 的基本安装目录中。

B.2.1.2.3 EMSRV(小组服务器)
VisualAge for Java-EMSRV 7.1
包含用于小组开发环境的资源库服务器程序。这是一个 ZIP 文件格式的部件(压缩文档),它包含用于 Windows、AIX、OS/2、NetWare、HP-UX、Linux 和 Solaris 的服务器代码。要进行安装,请解压缩 (unzip) 此部件并按照 instmigr.htm 中的指示信息进行操作。

B.2.1.2.4 IBM Developer Kit 1.2.2 
VisualAge for Java-IBM Developer Kit 1.2.2
包含 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9,用于 Windows 平台。这是一个自解压文档。要进行安装,请运行此文件,在从压缩文档中解压缩出来之后,此文件会自动启动安装程序,请您遵循指示信息完成安装。 

B.2.2 以后安装附加的组件

在初始安装之后,如要安装附加的 VisualAge for Java 组件,请将 CD-ROM 插入 CD 驱动器,选择安装 VisualAge for Java,并在程序维护屏幕中选择修改。如果系统禁用了自动运行,则必须从 CD 驱动器的根目录运行 setup.exe。即使您有 VisualAge for Java 的电子版本,也必须人工运行 setup.exe,然后执行相同的步骤。

所有组件都将列示在“编辑功能部件”窗口中,并带有其当前安装状态的指示信息。红色的 'X' 指示当前尚未安装的组件。您可以选择安装这些组件。请不要选择任何未标有红色 'X' 的组件,因为它们已经安装好了。 

不能安装 VisualAge for Java 版本 4.0 的第二个实例。如果不首先卸载产品,便不能更改安装语言。

B.2.3 安装 VisualAge for Java 小组客户机

在开发小组的每个成员可以执行这些步骤之前,EMSRV 管理员必须设置并启动服务器、测试客户机连接并向资源库用户列表添加小组开发者。有关执行这些任务的信息,请参考本指南中的 C 部分。C 部分还提供了有关迁移小组资源库的信息。

在以下指示信息中,假定服务器上安装的共享资源库名为 ivj.dat。服务器上必须已安装 EMSRV 版本 7.1。如果您尝试连接先前版本的 EMSRV,则可能会接收到一条错误消息。

  1. 在开始安装 VisualAge for Java 版本 4.0 之前,请管理员提供下列信息:
  2. 启动 VisualAge for Java 版本 4.0 的安装。有关安装的详细信息,请参考 2.1 一节。如果是从先前版本的 VisualAge for Java 迁移,请参考 3.0 一节,以获取有关迁移过程的详细信息。
  3. 当得到安装程序的提示时,指定您希望使用驻留在服务器上的资源库。如果您希望在您的工作站上存放本地资源库,以便以独立方式工作,而不是总是作为与共享资源库相连的客户机工作,请参阅下面 2.4 一节中的备用指示信息。提供管理员向您提供的服务器 TCP/IP 主机名(或 IP 地址)和资源库名。如果管理员在启动 EMSRV 程序时未指定工作目录,则您将需要用该文件的服务器路径信息完全限定资源库的名称。安装程序将自动把服务器地址和资源库信息插入到客户机的 ide.ini 文件中。
  4. 将要求您从管理员设置的资源库用户列表中选择工作区所有者名。请选择您的用户名。如果已启用密码保护,则您将需要提供用户密码。

    将有一个进展栏指示正在将工作区与资源库相连。如果您没有看到用户列表,而是看到了错误消息,它指示发生了不可恢复错误,则表示可能发生了下列其中一种情况:
    1. 服务器未活动。
    2. 您在工作站上安装 VisualAge for Java 时指定了不正确的服务器名。
    3. 您在安装期间指定了不正确的资源库名。

    您可以通过编辑小组客户机上的 ide.ini 文件校正服务器或资源库信息。

B.2.4 安装带有独立资源库的客户机

您可能希望在您的工作站上存放您自己的 VisualAge for Java 源代码资源库,以便在未与共享资源库相连时使用。在这种情况下,当您在工作站上安装 VisualAge for Java 版本 4.0 时,请指定您的资源库在本地机器上,而不是在服务器上。安装程序将为您创建一个资源库。

当您要使用小组服务器上的共享资源库时,请参考联机帮助或 team.pdf 文件。team.pdf 文件位于 pdf 目录中。pdf 目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。如果没有下载包含 PDF 的部件,就没有这个目录。

B.2.5 与 Windows 2000 相关的安装和使用注意事项  

VisualAge for Java 的本发行版继续提供对 Windows 2000 的容错支持(由 Microsoft 定义)。

缺省安装目录是 <Program Files>\IBM\VisualAge for Java。对于 Windows 2000,在缺省情况下,面向 <ProgramFiles> 的安装只能由“管理员”和“标准”(高级)用户执行。“普通”(受限)用户不能写入此位置。

根据 VisualAge for Java 的当前设计,如果将产品安装至此位置,且将要由“普通”(受限)用户使用,则必须更改 <ProgramFiles> 下的 IBM 或 IBM\VisualAge for Java 目录的安全性设置,以允许普通用户进行写访问。否则,当尝试启动 IDE 时,或在 IDE 内使用某些 VisualAge for Java 工具时,会发生故障。

AS/400 Enterprise Toolkit 的服务器列表现在存储为 "<ProgramFiles>\IBM\shared files\fvdctcp.txt"。同样,在缺省情况下,此位置受到保护,不能由“普通”用户写入。如果没有足够权限的用户尝试通过任何 AS/400 智能向导的“添加/修改服务器列表”按钮创建或更新服务器列表,则文件创建或更新将失败,并且其 Java 代码中将发生 IO 错误,这可能显示在日志或控制台中,也可能不显示。

系统管理员必须确定是授予普通用户对此位置的写访问权,还是使其保持受保护状态并人工装入文件,以防未经授权的用户更新该文件。

B.2.6 安装 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9 

如果 VisualAge for Java 是从产品 CD 安装的,则必须从 IBM Developer Kit 目录运行 install.exe 才能安装 IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9。此目录位于“附加功能部件”CD 上。如果您有 VisualAge for Java 的电子版本,此目录也会位于临时目录(解压缩部件的目标位置)中,但不需要运行 install.exe,因为在从下载的 IBM Developer Kit 压缩文档中解压缩 (unzip) 安装程序之后,它会自动启动。 

有关 IBM Developer Kit 的详细信息,请参考 IBM Developer Kit 目录中的自述文件 (README)。

B.3.0 从先前版本的 VisualAge for Java 迁移

在开始迁移过程之前,请参考 D 部分E 部分,以了解有关特定于组件的迁移信息和一般迁移信息。

VisualAge for Java 版本 4.0 升级将在安装期间执行资源库更新,以使资源库中的系统类库处于正确的发行版级别。为此,要求在此升级期间可以对资源库执行读写访问。在此操作期间,不会修改任何用户代码。

如果是从先前版本的 VisualAge for Java 企业版迁移,而您是在独立环境(而不是小组环境)中工作,并且将继续在独立环境中工作,请遵照本文档的 A 部分中有关企业版的迁移指示信息。

注意:在从 VisualAge for Java 版本 3.5 或版本 3.5.3 迁移至版本 4.0 时,安装过程可能会看上去已挂起。发生这种情况的原因是 "DoCosting" 函数(它将 3.5 版的文件与 4.0 版的文件作比较)会需要最多三分钟的时间来执行,因而导致安装过程看上去象是已挂起。

如果是从小组环境迁移或迁移至小组环境,在开始迁移过程之前,请考虑下列问题。

进行迁移时所需执行的步骤取决于您的环境以及对上述问题的回答。

以下迁移方案是最复杂的方案之一。在本方案中,您有多个共享资源库和 N 个拥有版本 3.5 或版本 3.5.3 本地资源库的开发者。您想要使用新的版本 4.0 资源库,但也想继续使用旧的共享资源库中的所有数据。 

注意:此方案处理的是版本 3.5 或版本 3.5.3 (Java 2) 本地资源库,而不是 JDK 1.1.x 本地资源库。如果想将 JDK 1.1.x 本地资源库信息导入到版本 4.0 资源库中,请遵循 A 部分的 3.2 一节中的指示信息。 

  1. 将 EMSRV 升级为版本 7.1。小组管理员必须安装 EMSRV 版本 7.1。请参考 C 部分的 2 一节,以获取有关如何执行此任务的指示信息。
  2. 创建用户数据的备份副本。
    1. 将项目和包版本化。只有已版本化的项目和包才能导入到 VisualAge for Java 版本 4.0 资源库中。请参考 VisualAge for Java 联机帮助,以获取有关版本化的指示信息。
    2. 将您的资源库保存到 VisualAge for Java 目录树之外的新位置中。资源库的文件名和路径是 x:\IBMVJava\ide\repository\ivj.dat,其中 x:\IBMVJava 是 VisualAge for Java 的安装目录。
      注意:如果正在从版本 3.5 或版本 3.5.3 迁移,则资源库还包括项目资源文件的已版本化副本,它们位于以下目录中:x:\IBMVJava\ide\repository\ivj.dat.pr。必须将 ivj.dat.pr 目录的一个副本保存在 VisualAge for Java 目录树之外的位置。
  3. 小组管理员执行 VisualAge for Java 版本 4.0 的完整安装,包括安装本地资源库。然后,管理员将本地资源库的整个内容导出到所有共享资源库中。有关如何执行此任务的详细信息,请参考 B 部分中的 3.1 一节。
  4. 所有版本 3.5 或版本 3.5.3 用户都以本地方式安装版本 4.0,这将自动升级 N 个本地资源库。

迁移过程现已完成,用户可以根据需要在本地资源库或共享资源库之间切换。注意:如果从小组环境迁移至本地环境,必须以人工方式将项目从旧的共享资源库导出到本地资源库中。并且,如果以前有本地资源库,必须将想要使用的任何项目从旧的本地资源库导入到新的版本 4.0 本地资源库中。

B.3.1 从 VisualAge for Java 的先前版本迁移共享资源库

在可以执行下列步骤之前,必须升级至 EMSRV 7.1。可以在 C.3.1 一节中找到有关如何执行此任务的指示信息。 

可以升级版本 2.0 或 3.0x(基于 JDK 1.1)或 3.0x Early Adopters 或 3.5(基于 JDK 1.2)共享资源库,使其配合 VisualAge for Java 版本 4.0 工作。在下面的步骤中,小组管理员执行 VisualAge for Java 版本 4.0 的完整安装,使用的是本地资源库。然后,管理员将本地资源库的整个内容导出到所有共享资源库中。

要升级服务器上现有的资源库,使其配合 VisualAge for Java 版本 4.0 工作,请执行这些步骤:

  1. 作为带有本地资源库的完整安装来安装 VisualAge for Java 版本 4.0。请参考 B 部分中的 2.0 一节,以获取有关如何执行此任务的指示信息。
  2. 启动版本 4.0 IDE。您将连接到本地资源库。
  3. 在“工作台”中,选择文件 > 导出,然后选择资源库单选按钮并单击下一步。选择带有共享资源库的 EMSRV 服务器。在带有共享资源库的 EMSRV 服务器的地址字段中输入服务器的 IP 地址或主机名。
  4. 单击浏览来定位共享资源库,或在资源库名字段中输入共享资源库的路径和文件名。
  5. 选择项目。单击详细信息以查看可以从源资源库导出的已版本化的项目的列表。
  6. 选择全部项目版本并导出它们。
  7. 单击完成

将所有项目都复制到共享资源库中。还导出了项目资源文件。如果正在导出至的资源库名为 sample.dat,则项目资源会导出至名为 sample.dat.pr 的文件夹。

B.4.0 已知限制与问题

此外,请参考自述文件(可在 CD 的 README 目录中找到),以获取有关最新的已知问题和限制的信息。

B.4.1 与安装相关的已知限制与问题  

以下是安装 VisualAge for Java 时您应了解的问题的列表。

B.4.1.1 磁盘限制

B.4.1.2 用户权限

B.4.1.3 TCP/IP 注意事项

B.4.1.4 Shell 扩展 (Windows NT)

如果您接收到一条消息,指示安装程序检测到 Shell Extension for Windows NT,则安装不能继续。您应当执行下列步骤:

  1. 确保您有“紧急恢复磁盘”。有关创建此磁盘的指示信息可以在 Windows 帮助文档中找到。
  2. 在命令提示符处输入 regedit.exe
  3. 在“注册表编辑器”中,展开以下键:
    \\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  4. 选择上述键的名称/数据对中的 shell 名。重要事项:记录对此名称记录的数据,在安装 IBM VisualAge for Java 之后,您将需要此数据。
  5. 在菜单栏中,对 shell 名/数据对选择编辑 > 修改
  6. 将 shell 名的值设置为 Explorer.exe。单击确定
  7. 从菜单栏中选择注册表 > 退出
  8. 重新启动并完成 IBM VisualAge for Java 安装。
  9. 在安装完成之后,恢复先前的注册表条目,如下所示:
    a. 在命令提示符处输入 regedit.exe
    b. 在“注册表编辑器”中,展开 \\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 键
    c. 选择上述键的名称/数据对中的 shell 名。
    d. 在菜单栏中,对 shell 名/数据对选择编辑 > 修改
    e. 将 shell 名的值恢复为您在步骤 4 中记录的值。单击确定
    f. 从菜单栏中选择注册表 > 退出

B.4.1.5 从失败的安装恢复

如果安装失败,则必须除去任何已安装的版本 4.0 文件。如果您希望用来安装 VisualAge for Java 的目录是空的,表示安装过程已回滚并除去了任何已安装的文件。您可以删除这个空目录(如果您想这样做的话,但并非一定要这样做)。然而,如果该目录包含文件,则必须再次启动安装过程。它将以维护方式打开,您必须选择除去版本 4.0 的部分安装,然后才能再次尝试安装产品。

您还需要删除以下注册表条目:

\\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\VisualAge for Java for Windows

使用下列指示信息:

  1. 务必要有“紧急恢复磁盘”。有关创建此磁盘的指示信息可以在 Windows 帮助文档中找到。
  2. 在命令提示符处输入 regedit.exe
  3. 在“注册表编辑器”中,展开并选择以下键:
    \\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\VisualAge for Java for Windows\4.0
  4. 从菜单栏对此键选择编辑 > 删除
  5. 当要求您确认删除该键时,选择
  6. 从菜单栏选择注册表 > 退出

如果在安装失败之前已安装了任何 NetQuestion 文件,也必须删除它们。

  1. 打开新的命令提示。通过在您刚刚打开的命令提示中输入以下命令来检查是否已安装任何 NetQuestion 文件:set imninstsrv。此命令将向您提供机器上 NetQuestion 的安装位置。例如,

    IMNINSTSRV=C:\imnnq_nt

    根据安装 VisualAge for Java 的驱动器的不同以及正在使用的操作系统的不同,出现的 NetQuestion 目录位置也会有所不同。如果设置了变量(即,向您提供了 NetQuestion 的安装位置),则继续执行步骤 2。 

    如果您接收到“未定义环境变量 imninstsrv”之类的错误消息,则或者是未安装任何 NetQuestion 文件,或者是 NetQuestion 安装未成功完成。如果发生这种情况,请选择开始 > 查找 > 文件或文件夹并在系统上搜索以下文件:vahelp.cfg。如果在任何名称以 "imnnq" 开头的目录(例如,imnnq_NT 或 imnnq_98)中找到此文件,则删除它。不需要执行步骤 2 和 3。 

  2. 转至 NetQuestion 目录(这是跟在 IMNINSTSRV= 后面的信息)
  3. 输入 vahcfg remove /p vj32

这将除去 VisualAge for Java 安装的任何 NetQuestion 文件。这不会影响其他产品(例如,DB2)安装的 NetQuestion 文件。

备份资源库和资源文件(如果还没有这样做的话)。有关如何执行此任务的信息,请参考 B 部分中的 3.0 一节。 

在执行所有这些步骤之后,重新引导并重新安装产品。在重新安装 VisualAge for Java 之后,如果帮助失败,请参考《故障诊断指南》以获取更多有关从帮助故障中进行恢复的信息。《故障诊断指南》(trshoot.htm) 位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。在安装 VisualAge for Java 之后,它还位于 X:\IBMVJava 中,其中,X:\IBMVJava 是 VisualAge for Java 的安装目录。

B.4.1.6 CICS 事务网关

当您安装 VisualAge for Java 时,如果机器上安装了某个版本的“CICS 事务网关”,则 VisualAge 将使用这个版本,而不是安装它自己的版本。

B.4.1.7 Windows Installer 错误

以下是安装期间您应了解的 Windows Installer 错误的列表。

错误 1603(仅限于 Windows NT 4.0)

如果您在安装 VisualAge for Java 时接收到错误消息 1603,这指示 Windows Installer 未能初始化,安装不能继续。  

某些产品(如 Symantec 的 VisualCafe)在任何 Windows 平台上安装时,都会自动安装一个名为 sfc.dll 的文件。然而,它只在 Windows 2000 才用得上,在 Windows 2000 上,Windows Installer 调用它来进行安全性处理。 

如果一个具有此名称的文件驻留在 Windows NT 4.0 上的 PATH 中,则 Windows Installer 将尝试装入它,尽管 sfc.dll 只应用于 Windows 2000。于是,Windows Installer 将失败。  

要解决此问题,请执行这些步骤:

  1. 选择开始 > 查找 > 文件或文件夹并在系统上搜索 sfc.dll 文件。
  2. 临时地将 sfc.dll 文件(驻留在 Windows NT 4.0 PATH 中的版本)重命名为 sfc.old。
  3. 安装 VisualAge for Java。
  4. 在成功安装 VisualAge for Java 之后,将 sfc.old 重命名为 sfc.dll。

致命的 LoadLibrary() 错误

发生“致命的 LoadLibrary() 错误”的原因是 Windows Installer 没有正确地注册一个或多个 VisualAge for Java 安装内核 (IKernel)。要解决此问题,必须删除 IKernal 文件所在的 InstallShield 目录,然后通过执行下列步骤重新安装 VisualAge for Java:

  1. 如果有必要的话,退出安装。
  2. 删除以下目录:x:\Program Files\Common Files\InstallShield,其中,x 是您尝试在其上安装 VisualAge for Java 的驱动器。
  3. 重新安装产品。 

错误 1631 或内部错误 2755(仅限于 Windows NT 4.0)

如果在 Windows NT 4.0 上安装 VisualAge for Java, 您可能会接收到下列其中一个错误消息:

如果接收到这些错误消息中的任何一个,即表示可能有具有空值的注册表键。当您启动 VisualAge for Java 安装时,userenv.dll 文件将尝试对各种注册表键进行语法分析,如果有任何键为空值,安装将失败,并发出上述一个出错信息。

要解决这种问题,应在安装 VisualAge for Java 之前除去空环境变量或修改它们(将空值更改为有效值)。在安装 VisualAge for Java 之后,可以将它们设置回最初的值。

注意:请小心谨慎地除去或修改空变量。在除去或修改它们之前,您应当考虑可能出现的任何潜在影响。

内部错误 2381、1303、1310、1313(仅限于 Windows NT)

如果您正在尝试安装 VisualAge for Java,并且下列条件中的任何条件或全部条件都成立:

您可能会接收到下列错误消息中的一个或多个:

当对下列文件夹只具有“读取”许可权的时候,已报告发生此问题:

\Program Files\IBM\VisualAge for Java
\WinNT\Installer

要解决此问题,确保您对驱动器或目录具有必需的许可权。为此,请执行下列步骤:

  1. 在“Windows 资源管理器”中,选择适当的驱动器或目录。
  2. 右键单击文件夹并从弹出菜单中选择属性
  3. 选择安全性选项卡。单击权限
  4. 选择 Everyone。从访问类型下拉菜单中选择完全访问
  5. 选择替换子目录的权限复选框。
  6. 单击确定
  7. 当提示您确认是否要替换所有子目录的权限时,单击
  8. 单击确定
  9. 安装 VisualAge for Java。

内部错误 2735 引擎启动

如果您接收到错误 2735,请执行下列步骤来解决它:

  1. 在 Windows 32 系统目录中搜索下列文件:
  2. shd401lc.dll 重命名为 shd401lc.old
  3. shdoclc.dll 重命名为 shdoclc.old
  4. 选择开始 > 运行以打开“运行”对话框。运行下列命令来取消注册这些 .dll 文件。 
  5. 通过从“运行”对话框中运行下列命令来注册这些 DLL:
  6. 安装 VisualAge for Java。

错误 1606/内部错误 2707

如果您接收到以下错误消息,则可能是 Common Administrative Tools 注册表文件的值不正确:

错误 1606。不能访问网络位置 \Profiles\AllUsers\StartMenu\Programs\Administrative Tools\。
内部错误 2707。INSTALLDIR。

在您可以安装 VisualAge for Java 之前,必须编辑 Common Administrative Tools 注册表文件的值。为此,请执行下列步骤:

  1. 从命令提示符处调用 regedit.exe。
  2. 展开并选择键
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folder
  3. 选择 Common Administrative Tools。
  4. 选择编辑 > 修改
  5. 在“值数据”字段中,输入以下内容:%SystemRoot%\Profiles\AllUsers\StartMenu\Programs\Administrative Tools
  6. 单击确定
  7. 从菜单栏选择注册表 > 退出
  8. 安装 VisualAge for Java。

B.4.2 与卸载相关的已知限制与问题 

以下是卸载期间您应了解的事项的列表。

B.4.2.1 磁盘空间

Windows 系统驱动器上至少要有 2MB 的可用空间,环境变量 TEMP 或 TMP 必须指向至少带有 5MB 可用空间的有效临时目录。

B.4.2.2 卸载 Distributed Debugger

如果安装了 Distributed Debugger 作为 VisualAge for Java 安装的一部分,则应当在卸载 Distributed Debugger 之前卸载 VisualAge for Java。在卸载 VisualAge for Java 之后,可以通过转至 Debugger 安装目录并运行卸载程序来卸载 Distributed Debugger。

如果已卸载 VisualAge for Java,但不能卸载 Distributed Debugger,则必须删除以下注册表键:

HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/ParentProducts/VisualAge for Java

然后再次尝试卸载 Debugger。如果正在将 Distributed Debugger 与任何其他产品配合使用,请不要执行这些步骤,因为在您删除该注册表键之后,便再也不能使用 Debugger 了。

请执行这些步骤:

  1. 在命令提示符处输入 regedit.exe
  2. 在“注册表编辑器”中,展开并选择以下键:
    HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/ParentProducts/VisualAge for Java
  3. 从菜单栏对此键选择编辑 > 删除
  4. 当要求您确认删除该键时,选择
  5. 从菜单栏选择注册表 > 退出

并且,将以下注册表键的值设置为 1

HKEY_LOCAL_MACHINE/SOFTWARE/IBM/IBM Distributed Debugger/CurrentVersion/install/refcount

B.4.2.3 环境变量 (Windows 98)

当在 Windows 98 上卸载 VisualAge for Java 时,一些环境条目可能会留在 autoexec.bat 文件中。通常,这些遗留条目不会产生任何问题,但如果您卸载并重新安装产品多次,则可能会发生两个问题。可能会有相互冲突的路径语句,使得联机帮助无法工作,也可能会耗尽路径空间,导致您无法成功地重新安装产品。

要解决这些问题:

  1. 备份 autoexec.bat 文件。
  2. 通过执行这些步骤,确定系统上是否有另一程序需要 HTML 搜索引擎(如 DB2):
    a) 卸载 VisualAge for Java 并重新引导系统。
    b) 在命令提示符处输入 regedit.exe,并且,在“注册表编辑器”中,展开 HKEY_LOCAL_MACHINE\SOFTWARE\ 树。如果此树中有一个 IBM 目录,则展开它,查看是否有一个 NetQuestion 目录。如果您看到此目录,则可能是正在将搜索引擎与另一个 IBM 产品配合使用。
  3. 如果没有将 HTML 搜索引擎用于另一产品,请在重新安装 VisualAge for Java 之前,除去 autoexec.bat 文件中的任何 IMN 或 IMQ 条目。
  4. 如果正在将 HTML 搜索引擎用于另一产品,则从 autoexec.bat 文件中删除这些条目的任何重复:

    IMNINST
    IMNINSTSRV
    IMNNQ
    IMNNQ_95
    IMQCONFIGCL
    IMQCONFIGSRV
    并删除下面这一行的重复条目:IF EXIST X:\IMNNQ_95\IMNENV.BAT CALL IMNEV.BAT
  5. 在除去重复条目时,千万不要除去原始条目。如果您不肯定哪些条目是原始条目,则必须确定系统认为 NetQuestion 安装在哪里。请执行这些步骤:
    1. 在命令提示符处输入 regedit.exe
    2. 在“注册表编辑器”中,展开键 \\HKEY_LOCAL_MACHINE\SOFTWARE\IBM\NetQuestion\Installation Directory
    3. 这个键内部的目录值显示了 NetQuestion 的安装路径。某些环境变量必须包含此目录作为它们的值的一部分,这样 NetQuestion 才能正常工作。

      如果您发现上述任何环境变量包含不同于注册表中的目录作为它们的值的一部分,则删除它们。

B.4.2.4 卸载 NetQuestion

卸载 VisualAge for Java 时,可能不会卸载 NetQuestion。如果未卸载 NetQuestion,而您以后尝试重新安装产品,则可能会发生问题。 

要除去 VisualAge for Java 安装的 NetQuestion 文件,请执行下列步骤。这不会影响其他产品(例如,DB2)安装的 NetQuestion 文件。

  1. 要查找 NetQuestion 目录,请在命令提示符处输入以下命令:set imninstsrv。此命令将向您提供机器上 NetQuestion 的安装位置。例如,

    IMNINSTSRV=C:\imnnq_nt

    根据安装 VisualAge for Java 的驱动器的不同以及正在使用的操作系统的不同,出现的 NetQuestion 目录位置也会有所不同。如果您接收到“未定义环境变量 imninstsrv”之类的错误消息,表示已卸载了所有 NetQuestion 文件。

  2. 转至 NetQuestion 目录(这是跟在 IMNINSTSRV= 后面的信息)
  3. 输入 vahcfg remove /p vj32

这将除去 VisualAge for Java 安装的任何 NetQuestion 文件。

如果以后重新安装 VisualAge for Java,而帮助失败,则请参考《故障诊断指南》以获取更多有关从帮助故障中进行恢复的信息。《故障诊断指南》(trshoot.htm) 位于“VisualAge for Java 专业版”产品 CD 和“VisualAge for Java 企业版附加功能部件”CD 上。在安装 VisualAge for Java 之后,它还位于 X:\IBMVJava 中,其中,X:\IBMVJava 是 VisualAge for Java 的安装目录。

C 部分:EMSRV

有关安装 VisualAge for Java 客户机的信息,请参考本指南的 B 部分。有关设置和管理服务器的信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),此文件可以在“附加功能部件”CD 上的 TeamServer\docs 目录中找到,或者,如果您有电子版本的 VisualAge for Java,也可以在临时目录(您解压缩部件的目标位置)中找到此文件。

如果使用的是 VisualAge for Java 的企业版,且您计划在小组环境中工作,则必须使用 EMSRV 版本 7.1。

所有 EMSRV 文件都放在“附加功能部件”CD 上。

C.1.0 先决条件

在安装 EMSRV 之前,另请参考 C 部分末尾有关“已知问题与限制”的那一节。

C.1.1 支持平台

下列操作系统平台支持 EMSRV 服务器:

* 注意:HP-UX 只有在 700 级的工作站机器上才受支持。它已在 HP-UX 9000/715/60 机器和 HP-UX 9000/782/200+ 机器上通过测试。因为 800 级(服务器)机器具有不同的体系结构,需要不同的二进制,所以 EMSRV 在 800 级的机器上不受支持。

+ 有关如何获取此补丁程序的信息,请参考 C.1.4 一节。

IBM 不再在 Netware 4.11 或 Netware 5.0 上支持 EMSRV,但如果在装入 EMSRV.NLM 之前装入 CLIBAUX.NLM,则 EMSRV 可以在该平台上运行。CLIBAUX.NLM 附带包括在 Novell 的“支持包”8a 中,但也可以单独地从 Novell 的 CLIBAUX1.EXE 文件中获取,该文件可以在以下位置处找到:

http://support.novell.com/cgi-bin/search/download?/pub/updates/nw/nw42/clibaux1.exe

不再支持 SMP 硬件

** 重要注意事项:在带有多个处理器的机器上运行 EMSRV Windows NT/2000 版的任何发行版都可能会导致资源库损坏。

在 SMP 硬件(带有多个处理器的机器)上运行的 Windows NT/2000 服务器上,不再支持 EMSRV。我们决定不再支持 SMP 硬件是因为不断有报告指出资源库的损坏与 Windows 服务器和 SMP 硬件相关。EMSRV 继续对所有其他操作系统支持 SMP 硬件。

IBM 不对因为在基于 SMP 硬件运行的 Windows NT/2000 服务器上使用 EMSRV 而可能遭受的损失负责,包括但不限于根据第三方追讨而声称遭受的损失。在任何情况下,IBM、其供应商、代理和雇员都不对可能是因为在基于 SMP 硬件运行的 Windows NT/2000 服务器上使用 EMSRV 而导致的任何间接、特殊、惩罚性、警戒性或由此而产生的损失负责。

如果想要在基于 SMP 硬件运行的服务器上使用 EMSRV,必须在启动 EMSRV 时使用 -mp 参数。从而忽略对 SMP 硬件的检查。这样,您将在不受支持的平台上运行 EMSRV,以后,如果资源库发生损坏,您必须负起全部责任(IBM 不承担任何类型的责任或义务)。

EMSRV 不会应用额外的处理器,这是因为,事实上 EMSRV 是一个输入M输出受限的进程,而不是处理器受限的进程。因此,EMSRV 的性能不受服务器上处理器数目的影响。

C.1.2 TCP/IP

必须在服务器上安装和配置 TCP/IP。

C.1.3 运行 EMSRV 所需的 Novell 补丁程序

我们建议您获取并应用“NetWare 最小补丁程序列表”。这些补丁程序文件可以在 http://support.novell.com/misc/patlst.htm 获得。您必须选择并应用适合于您所使用的 NetWare 版本的补丁程序。

C.1.4 在 Solaris 上运行 EMSRV 所需的补丁程序

PAM 的 Solaris 版本 2.6 实现中有一处错误,导致 EMSRV 不能正常工作。如果是在 Solaris 版本 2.6 上使用 EMSRV,必须应用补丁程序 106257-05。该补丁程序可以在以下位置处获得:

http://sunsolve.sun.com/pub-cgi/retrieve.pl?doc=fpatches%2F106257&zone_32=PAM

此补丁程序所修正的特定错误是:

4092227 pam_conv appdata_ptr 成员没有象记载的那样被传送给 conv() 函数

如果使用的是 Solaris 的版本 7,则此补丁程序不是必需的。

C.1.5 支持的文件系统

EMSRV 已在下列文件系统上通过测试和鉴定:

NetWare

OS/2

Windows NT 和 Windows 2000

Solaris

HP-UX

AIX

Linux

EMSRV 只支持以本地方式安装的文件系统。

C.2.0 安装

本节包含用于安装 EMSRV 资源库服务器程序和共享资源库的指示信息。有关启动服务器的指示信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。

C.2.1 安装 EMSRV Windows(R) 版

设置 EMSRV Windows 版
在 Windows 上安装 EMSRV 之前,您应当注意下列关于文件类型的事实:

在 Windows 上安装 EMSRV
要在 Windows NT 或 Windows 2000 服务器上安装 EMSRV 资源库服务器程序和共享资源库,请执行这些步骤:

  1. 从“附加功能部件”CD 上的 TeamServer/Windows 目录运行 setup.exe。
  2. 按照屏幕上的指示进行操作。当提示选择安装目录时,选择 PATH 中的一个子目录或创建一个子目录并将其添加至 PATH。 我们建议将它们放在带有大量可用空间的位置中,这是因为将把 emsrv.log 文件写到您选择的子目录中。
  3. 将下列各项从 ide.zip 文件解压缩到期望的目录中: 

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

这个目录就是您要用来存储共享源代码库的地方。以后,当启动服务器时,您将使用 -W EMSRV 启动参数来将这个子目录指定为 EMSRV 的工作目录。

EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 目录中的整个目录树。始终应当将 ivj.dat.pr 目录复制到 ivj.dat 所在的目录中,否则,您将无法访问项目资源。

您可以选择重命名资源库文件,例如重命名为 team1.dat。如果在将资源库复制到服务器后将其重命名,则必须相应地将项目资源目录重命名。例如,如果将资源库重命名为 team1.dat,则必须将项目资源目录的名称更改为 team1.dat.pr。

当小组成员安装 VisualAge for Java 客户机代码时,将需要指定资源库文件名。它们还将需要指定服务器上的路径。

  1. 如果您希望通过使用 passwd.dat 文件启用密码检查,则将 passwd.dat 文件从 TeamServer 目录复制到 ivj.dat 所在的目录中。有关可用的密码检查类型的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。
  2. 验证 TCP/IP 是否已安装并正确地与 LAN 适配器绑定。通过使用 ping 命令(例如,ping IP 地址/主机名)来从 LAN 上的工作站与服务器通信,可以验证此绑定。
  3. 在 Windows NT 注册表中安装 EMSRV(可选),对 EMSRV 用户授权,并启动 EMSRV。这些主题在“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm)中有所描述。
C.2.1.1 将 EMSRV 作为 Windows 注册表中的服务来安装

如果您希望将 EMSRV 作为服务来启动,而不是从命令提示符处启动,则可以将 EMSRV 安装在 Windows 注册表中。将 EMSRV 作为服务来安装有两个优点:

提示:如果 EMSRV 作为服务启动,则缺省的 EMSRV 工作目录是 Windows NT 或 Windows 2000 下面的 system32\directory。建议您在将 EMSRV 作为服务来在 Windows NT 或 Windows 2000 注册表中安装时,使用 -W 参数更改此缺省目录

重要事项:在 SMP 硬件(带有多个处理器的机器)上运行的 Windows NT/2000 服务器上,不再支持 EMSRV。我们决定不再支持 SMP 硬件是因为不断有报告指出库损坏与 Windows 服务器和 SMP 硬件相关。EMSRV 继续对所有其他操作系统支持 SMP 硬件。 

IBM 不对因为在基于 SMP 硬件运行的 Windows NT/2000 服务器上使用 EMSRV 而可能遭受的损失负责,包括但不限于根据第三方追讨而声称遭受的损失。在任何情况下,IBM、其供应商、代理和雇员都不对可能是因为在基于 SMP 硬件运行的 Windows NT/2000 服务器上使用 EMSRV 而导致的任何间接、特殊、惩罚性、警戒性或由此而产生的损失负责。

如果想要在 SMP 硬件上将 EMSRV 作为 Windows NT/2000 服务来安装和启动,必须使用 -mp 参数安装该服务。从而忽略对 SMP 硬件的检查。这样,您将在不受支持的平台上运行 EMSRV,以后,如果资源库发生损坏,您必须负起全部责任(IBM 不承担任何类型的责任或义务)。

如果不使用 -mp 参数安装该服务,该服务不会启动,并且,您将接收到以下出错信息:

未能在 \\host 上启动 EMSRV 服务
错误 2140:发生 Windows NT 内部错误。

如果您再次尝试将 EMSRV 作为服务来安装(例如,添加 -mp 参数),则能够成功地安装该服务,但您将接收到以下错误:

未能将消息文件 emsrvmsg.dll 复制至 C:\WINNT\System32\emsrvmsg.dll

--- OS 错误 1224:未能对打开了用户映射节的文件执行请求的操作。确保该 DLL 与 EMSRV.EXE 在同一目录中。

您可以忽略这个错误消息,这是因为先前安装该服务时,已安装了该 DLL。

要将 EMSRV 作为服务来安装:

  1. 从命令提示符处,转至 EMSRV 可执行程序的安装目录。
  2. 发出命令 emsrv -install [parameter2] [parameter3] ... 第一个参数必须是 -install;其余参数是您为环境选择的 EMSRV 启动参数。

    以下是此命令的一个示例:

    emsrv -install -u joe -p donttell -W j:\sharedrep -rn

    此示例将 EMSRV 作为服务安装在 Windows 注册表中,使用 joe 作为 EMSRV 用户名,并使用 donttell 作为 joe 的密码。在缺省情况下,EMSRV 工作目录将是 j:\sharedrep,并将强制本机密码验证。

    将有一条消息确认 EMSRV 已安装完毕。
  3. 步骤 a 和 b 对于 Windows NT 和 Windows 2000 稍有不同。
    a) 在 Windows NT“控制面板”中,双击服务。将出现“服务”对话框。从服务列表中选择 EMSRV。 
    b) 在 Windows 2000“控制面板”中,双击管理工具。双击服务。双击 EMSRV
    在这里,您可以人工启动它。EMSRV 现在作为服务安装在注册表中,已将必需的 DLL 复制到了系统目录中。
  4. 在“启动参数”文本框中,输入您想要使用的 EMSRV 启动参数。如果指定要让 EMSRV 使用的工作目录,必须为路径中的每个反斜杠多输入一个反斜杠。例如:

    -u emsrvacc -p secret -W d:\\javateam
  5. 单击启动。将出现一条消息,通知您 EMSRV 正在启动。

有关启动 EMSRV 的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。

在缺省情况下,每当 EMSRV 启动时,都会使用您提供的参数。如果从 Windows 的“控制面板”的服务图标以人工方式启动 EMSRV,则还可以覆盖这些参数或添加参数。

C.2.2 安装 EMSRV NetWare 版

设置 EMSRV Netware 版
在 Netware 上安装 EMSRV 之前,您应当注意下列限制:

在 Netware 上安装 EMSRV
要在 NetWare 上安装 EMSRV 库服务器程序和共享资源库,请执行这些步骤:

  1. 在 TeamServer\Netware 目录中,将下列程序文件复制到服务器上的 SYS:\SYSTEM 目录中:
  2. 将下列各项从 ide.zip 文件解压缩到服务器上的期望目录中:

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

以后,当启动服务器时,您将使用 -W EMSRV 启动参数来将这个子目录指定为 EMSRV 的工作目录。EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 目录中的整个目录树。始终应当将 ivj.dat.pr 目录复制到 ivj.dat 所在的目录中,否则,您将无法访问项目资源。

您可以选择重命名资源库文件,例如重命名为 team1.dat。如果在将资源库复制到服务器后将其重命名,则必须相应地将项目资源目录重命名。例如,如果将资源库重命名为 team1.dat,则必须将项目资源目录的名称更改为 team1.dat.pr。

当小组成员安装 VisualAge for Java 客户机代码时,将需要指定资源库文件名和位置。

  1. 将样本密码文件 passwd.dat 从 TeamServer 目录复制到复制的 ivj.dat 所在的目录中。 
  2. 验证 NetWare TCPIP.NLM 是否已装入并正确地与 LAN 适配器绑定。通过使用 ping 命令(例如,ping IP 地址/主机名)实用程序来从 LAN 上的工作站与产品通信,可以验证此绑定。
  3. 要确保在查询 EMSRV 时主机名会出现在 EMADMIN 输出中,请检查解析程序是否已正确地设置为启用逆向 DNS 查找。并确保已正确设置 RESOLV.CFG 文件(位于 sys:\etc 中)。下面是如何设置文件的样本: 
    domain javadev.com
    nameserver 192.168.73.150
  4. 有关启动产品的指示信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。

C.2.3 安装 EMSRV OS/2 Warp 版

注意:OS/2 不再作为开发平台而受支持。有关详细信息,参考 E 部分。

设置 EMSRV OS/2 版
在 OS/2 上安装 EMSRV 之前,您应当注意下列各项:

在 OS/2 上安装 EMSRV 
要在 OS/2 服务器上安装 EMSRV 库服务器程序和共享资源库,请执行这些步骤:

  1. 将下列三个文件从 TeamServer 目录复制到 OS/2 计算机上的期望目录中:

    将这些文件放在作为 PATH 一部分的子目录中,或创建一个子目录并将其添加至 PATH。我们建议将它们放在带有大量可用空间的位置中,这是因为将把 emsrv.log 文件写到放置这些文件的子目录中。

  2. 将下列各项从 ide.zip 文件中解压缩到放置您在步骤 1 中复制的文件的子目录中:

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

    这个子目录就是您要用来存储共享源代码库的地方。以后,当启动服务器时,您将使用 -W EMSRV 启动参数来将这个子目录指定为 EMSRV 的工作目录。

    EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 目录中的整个目录树。始终应当将 ivj.dat.pr 目录复制到 ivj.dat 所在的目录中,否则,您将无法访问项目资源。

    您可以选择重命名资源库文件,例如重命名为 team1.dat。如果在将资源库复制到服务器后将其重命名,则必须相应地将项目资源目录重命名。例如,如果将资源库重命名为 team1.dat,则必须将项目资源目录的名称更改为 team1.dat.pr。

    当小组成员安装 VisualAge for Java 客户机代码时,将需要指定资源库文件名。

  3. 如果您希望通过使用 passwd.dat 文件启用密码检查,则将 passwd.dat 文件从 TeamServer 目录复制到 ivj.dat 所在的目录中。有关可用的密码检查类型的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。
  4. 验证 TCP/IP 是否已安装并正确地与 LAN 适配器绑定。通过使用 ping 命令(例如,ping IP 地址/主机名)来从 LAN 上的工作站与服务器通信,可以验证此绑定。
  5. 要启动服务器,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm)中有关在 OS/2 上启动 EMSRV 的指示信息。

C.2.4 安装 EMSRV AIX 版

设置 EMSRV AIX 版
在 AIX 上安装 EMSRV 之前,您应当注意下列特征:

在 AIX 上安装 EMSRV
在下面的步骤中,“EMSRV 用户”指的是启动 EMSRV 程序的用户。

必须将下列文件从 TeamServer 目录复制到您的机器上:

将这些文件放在作为 PATH 一部分的子目录中,或创建一个子目录并将其添加至 PATH。我们建议将它们放在带有大量可用空间的位置中,这是因为将把 emsrv.log 文件写到放置这些文件的子目录中。

请执行这些步骤来在 AIX 机器上设置 EMSRV:

  1. EMSRV 用户或系统管理员(root 用户)预留用来存储库的磁盘空间。
  2. 可以通过将下列各项从 ide.zip 文件解压缩到步骤 1 预留的磁盘空间来设置初始库。

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

    EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 目录中的整个目录树。始终应当将 ivj.dat.pr 目录复制到 ivj.dat 所在的目录中,否则,您将无法访问项目资源。这些目录必须为 EMSRV 用户设置 rw 和 x(搜索)位。

  3. 将文件所有者更改为 EMSRV 用户或系统管理员。如果您计划使用多个资源库,请复制 ivj.dat,使用不同的名称,但保留相同的后缀 (.dat)。如果创建了资源库的重复副本,则必须创建 ivj.dat.pr 目录的重复副本,并将名称更改为与相关联的资源库相匹配。例如,如果创建了名为 "team.dat" 的重复副本,则必须创建名为 "team.dat.pr" 的重复项目资源目录。
    EMSRV 用户或系统管理员应当转至存储库的目录,并使用适当的标志启动 EMSRV 程序。有关 EMSRV 标志的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。
  4. EMSRV 用户或系统管理员将小组资源库的位置和名称告知小组成员。当小组成员安装他们的客户机代码时,需要此信息。
  5. 要启动服务器,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm)中的指示信息。

在 UNIX 平台上,对用户进行认证需要 root 访问。root 用户无需启动 EMSRV 便可完成此操作。这样做会危及安全性,这是因为 EMSRV 会对所有文件系统具有彻底的访问权。

相反,您应当将 EMSRV 可执行程序的所有者更改为 "root" 并设置可执行程序的 SUID 位。这可以这样完成:

chown root emsrv
chmod u+s emsrv

当 EMSRV 尝试对用户进行认证时,它临时地将正在运行的 EMSRV 进程的权限更改为可执行程序的所有者的权限。认证完成后,正在运行的 EMSRV 进程的权限将会更改回启动 EMSRV 的用户的权限。这对每个进程(每个客户机)发生,因此,当认证客户机时,只有服务该客户机的进程才具有临时的 root 访问。

无论 EMSRV 实际上如何实现认证,用于认证的 root 访问都是必需的。PAM 之类的接口只提供了一个公共 API 来允许应用程序支持多种认证方法,每种认证方法的特定配置必须仍是正确的。 

C.2.5 EMSRV HP-UX 版或 Solaris 版

C.2.5.1 设置 EMSRV HP-UX 版或 Solaris 版
在 Solaris 或 HP-UX 上安装 EMSRV 之前,您应当注意下列需求:

对于 Solaris

对于 HP-UX 

C.2.5.2 安装 EMSRV HP-UX 版或 Solaris 版
在下面的步骤中,“EMSRV 用户”指的是启动 EMSRV 程序的用户。

必须将下列文件从 TeamServer 目录复制到您的机器上:

对于 HP-UX:

对于 Solaris:

将这些文件放在作为 PATH 一部分的子目录中,或创建一个子目录并将其添加至 PATH。我们建议将它们放在带有大量可用空间的位置中,这是因为将把 emsrv.log 文件写到放置这些文件的子目录中。

请执行这些步骤来在 Solaris 或 HP-UX 机器上设置 EMSRV:

  1. EMSRV 用户或系统管理员(root 用户)预留用来存储库的磁盘空间。
  2. 可以通过将下列各项从 ide.zip 文件解压缩到步骤 1 预留的磁盘空间来设置初始库。

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

    EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 中的整个目录树。始终应当将 ivj.dat.pr 复制到 ivj.dat 所在的目录中,否则,将无法访问项目资源。这些目录必须为 EMSRV 用户设置 rw 和 x(搜索)位。

  3. 将文件所有者更改为 EMSRV 用户或系统管理员。如果您计划使用多个资源库,请复制 ivj.dat,使用不同的名称,但保留相同的后缀 (.dat)。如果创建了资源库的重复副本,则必须创建 ivj.dat.pr 目录的重复副本,并将名称更改为与相关联的资源库相匹配。例如,如果创建了名为 "team.dat" 的重复副本,则必须创建名为 "team.dat.pr" 的重复项目资源目录。
    EMSRV 用户或系统管理员应当转至存储库的目录,并使用适当的标志启动 EMSRV 程序。有关 EMSRV 标志的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。
  4. EMSRV 用户或系统管理员将小组资源库的位置和名称告知小组成员。当小组成员安装他们的客户机代码时,需要此信息。
  5. 要启动服务器,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm)中的指示信息。

在 UNIX 平台上,对用户进行认证需要 root 访问。root 用户无需启动 EMSRV 便可完成此操作。这样做会危及安全性,这是因为 EMSRV 会对所有文件系统具有彻底的访问权。

相反,您应当将 EMSRV 可执行程序的所有者更改为 "root" 并设置可执行程序的 SUID 位。这可以这样完成:

chown root emsrv
chmod u+s emsrv

当 EMSRV 尝试对用户进行认证时,它临时地将正在运行的 EMSRV 进程的权限更改为可执行程序的所有者的权限。认证完成后,正在运行的 EMSRV 进程的权限将会更改回启动 EMSRV 的用户的权限。这对每个进程(每个客户机)发生,因此,当认证客户机时,只有服务该客户机的进程才具有临时的 root 访问。

无论 EMSRV 实际上如何实现认证,用于认证的 root 访问都是必需的。PAM 之类的接口只提供了一个公共 API 来允许应用程序支持多种认证方法,每种认证方法的特定配置必须仍是正确的。 

C.2.6 EMSRV Linux 版

C.2.6.1 设置 EMSRV Linux 版
在 Linux 上安装 EMSRV 之前,您应当注意下列信息:

C.2.6.2 安装 EMSRV Linux 版
在下面的步骤中,“EMSRV 用户”指的是启动 EMSRV 程序的用户。

必须将下列文件从 TeamServer 目录复制到您的机器上:

将这些文件放在作为 PATH 一部分的子目录中,或创建一个子目录并将其添加至 PATH。我们建议将它们放在带有大量可用空间的位置中,这是因为将把 emsrv.log 文件写到放置这些文件的子目录中。

请执行这些步骤来在 Linux 机器上设置 EMSRV:

  1. EMSRV 用户或系统管理员(root 用户)预留用来存储库的磁盘空间。
  2. 可以通过将下列各项从 ide.zip 文件解压缩到步骤 1 预留的磁盘空间来设置初始库。

    ide.zip 文件位于 ivj40\backup 目录中,该目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。

    EMSRV 必须要有足够的权限来读取、写入和搜索 ivj.dat.pr 目录中的整个目录树。始终应当将 ivj.dat.pr 目录复制到 ivj.dat 所在的目录中,否则,您将无法访问项目资源。这些目录必须为 EMSRV 用户设置 rw 和 x(搜索)位。

  3. 将文件所有者更改为 EMSRV 用户或系统管理员。如果您计划使用多个资源库,请复制 ivj.dat,使用不同的名称,但保留相同的后缀 (.dat)。如果创建了资源库的重复副本,则必须创建 ivj.dat.pr 目录的重复副本,并将名称更改为与相关联的资源库相匹配。例如,如果创建了名为 "team.dat" 的重复副本,则必须创建名为 "team.dat.pr" 的重复项目资源目录。
    EMSRV 用户或系统管理员应当转至存储库的目录,并使用适当的标志启动 EMSRV 程序。有关 EMSRV 标志的更多信息,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm),该文件可以在 TeamServer\docs 目录中找到。
  4. EMSRV 用户或系统管理员将小组资源库的位置和名称告知小组成员。当小组成员安装他们的客户机代码时,需要此信息。
  5. 要启动服务器,请参考“服务器设置与管理”文件 emsrv71.htm(对于除英语之外的所有语言,是 emsrv70.htm)中的指示信息。

在 UNIX 平台上,对用户进行认证需要 root 访问。root 用户无需启动 EMSRV 便可完成此操作。这样做会危及安全性,这是因为 EMSRV 会对所有文件系统具有彻底的访问权。

相反,您应当将 EMSRV 可执行程序的所有者更改为 "root" 并设置可执行程序的 SUID 位。这可以这样完成:

chown root emsrv
chmod u+s emsrv

当 EMSRV 尝试对用户进行认证时,它临时地将正在运行的 EMSRV 进程的权限更改为可执行程序的所有者的权限。认证完成后,正在运行的 EMSRV 进程的权限将会更改回启动 EMSRV 的用户的权限。这对每个进程(每个客户机)发生,因此,当认证客户机时,只有服务该客户机的进程才具有临时的 root 访问。

无论 EMSRV 实际上如何实现认证,用于认证的 root 访问都是必需的。PAM 之类的接口只提供了一个公共 API 来允许应用程序支持多种认证方法,每种认证方法的特定配置必须仍是正确的。 

C.3.0 迁移 

C.3.1 从 EMSRV 的版本 6.x 或版本 7.0 迁移至版本 7.1

如果当前安装的是 EMSRV 的版本 6.x 或版本 7.0,并想要安装 EMSRV 的版本 7.1,则可以卸载 EMSRV 的版本 6.x/7.0 并安装版本 7.1,也可以保留旧版本的 EMSRV 并安装 EMSRV 7.1。

必须安装版本 7.1 才能配合 VisualAge for Java 版本 4.0 工作。 

要从 EMSRV 版本 6.x/7.0 移至 EMSRV 版本 7.1,请执行这些步骤:

  1. 备份资源库。
  2. 关闭 EMSRV 6.x/7.0。
  3. 安装 EMSRV 7.1。
  4. 启动 EMSRV 7.1。 

EMSRV 7.1 与 EMSRV 6.x/7.0 兼容。例如,如果您正在先前版本的 VisualAge for Java(它使用 EMSRV 6.x/7.0)中工作,则可以从先前版本连接到在 EMSRV 7.1 下运行的共享资源库。 

C.4.0 为小组开发作准备  

此时,您已安装好了资源库服务器程序和一个共享源代码资源库。要完成设置小组开发环境,必须启动服务器,从 VisualAge for Java 客户机连接它,并向资源库用户列表添加用户。

如果已经在工作站上安装了 VisualAge for Java 客户机,则可以参考联机帮助,以了解更多有关设置小组开发环境的信息。否则,参考 pdf 目录中的 team.pdf。pdf 目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。 如果没有下载包含 PDF 的部件,就没有这个目录。

在以下指示信息中,假定服务器上安装的共享资源库名为 ivj.dat。当启动资源库服务器程序时,管理员应提供 ivj.dat 文件的路径作为 EMSRV 工作目录。

C.4.1 准备小组服务器

在小组开发者可以使用共享资源库之前,管理员必须设置 VisualAge for Java 服务器并启动 EMSRV 库服务器程序。在服务器就绪之前,如果某些开发者希望开始使用 VisualAge for Java 版本 4.0,他们可以首先作为独立用户安装,以后再连接共享资源库。

C.4.2 测试客户机连接

为了确认服务器已成功启动,管理员应当从一个“VisualAge for Java 企业版”版本 4.0 客户机连接共享资源库。此操作将确认服务器的 TCP/IP 连接正在正常地工作、EMSRV 已使用正确的参数启动,且管理员知道客户机安装期间必须提供的服务器信息。

有关连接共享资源库的信息,请参考 VisualAge for Java 联机帮助或 team.pdf 文件中的“连接共享资源库”。team.pdf 文件位于 pdf 目录中。pdf 目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。 如果没有下载包含 PDF 的部件,就没有这个目录。

C.4.3 向资源库用户列表添加用户

当客户机首次连接共享资源库时,会提示用户提供工作区所有者名。如果不首先从资源库用户列表中选择有效的工作区所有者名,用户便不能启动 IDE。

在缺省情况下,VisualAge for Java 版本 4.0 在它的资源库用户列表中有一个名为“管理员”的用户。最初,每个用户都可以选择“管理员”作为工作区所有者名;然而,强烈建议每个用户立即提供唯一的名称来连接服务器。在 VisualAge for Java 小组开发环境中,更改控制基于已定义的用户角色,这意味着应当唯一地标识每个开发者。要达到这个目标,管理员必须将每一个人添加至资源库用户列表。(唯一一个可以将其他名称添加至资源库用户列表的 VisualAge for Java 用户便是“管理员”。)如果使用本机密码验证,则属于每个用户的唯一名称应当与一个系统用户名相对应。

有关向资源库列表添加用户的信息,参考 VisualAge for Java 小组联机帮助或 pdf 目录中的 team.pdf 文件。pdf 目录位于“VisualAge for Java 企业版附加功能部件”CD 上。如果您有电子版本的 VisualAge for Java,则可以在临时目录(解压缩部件的目标位置)中找到它。如果没有下载包含 PDF 的部件,就没有这个目录。

既然服务器已设置好并已就绪,用户应当继续安装他们的 VisualAge for Java 客户机。有关安装 VisualAge for Java 小组客户机的信息可以在本指南的 B 部分中找到。

C.5.0 限制与已知问题 (EMSRV) 

C.5.1 在低带宽、高等待时间网络连接上的性能

EMSRV 客户机与 EMSRV 之间使用的协议通常会使信息包以高速率传送至服务器。这是因为大多数的处理都是在客户机上完成的。EMSRV 处理的请求中的大多数是 I/O 请求(例如,记录锁定、读取和写入请求)。

这种体系结构的结果是,客户机端的性能对网络的等待时间来说非常敏感。少于 5 毫秒的等待时间(通过往返或 'ping' 信息包时间进行评测)可以认为是可接受的性能。LAN 等待时间通常少于 1 毫秒,但 WAN 连接或电话线上的拨号调制解调器连接的等待时间可能高达 500 毫秒。即使对于高速 DSL、电缆、帧中继或 ISDN 连接,等待时间也受两个端点之间的距离的影响。

通常,基于电话线的拨号调制解调器连接上的性能都会产生不可接受的性能,这是因为该类连接的等待时间通常为 200 毫秒或更多。除非客户机与服务器之间的距离是几百公里以内,否则高速连接也会产生不可接受的性能。

EMSRV 协议与带宽并没有特别的关系,但带宽使用率受同时使用连接的客户机数的影响。

C.5.2 TCP/IP 连接限制

对 EMSRV 的客户机连接的缺省限制是 512。在启动 EMSRV 时,可以使用 -M 命令行选项更改此限制。

此数目主要受内存限制,但在达到内存限制之前,某些 TCP/IP 堆栈会用尽流套接字。通常,此数目大于 100,但它随每个堆栈的不同而有所变化。

C.5.3 检测意外断开的连接

EMSRV 使用 TCP/IP KEEPALIVE 计时器来检测当客户机崩溃或重新引导时意外断开的连接。某些 TCP/IP 堆栈允许更改 KEEPALIVE 超时。通常,缺省设置是 120 分钟。

可以使用 EMADMIN 来列示连接并标识出自从上次请求后长时间没有与服务器交互的连接。可以使用 EMADMIN STOP 命令和 -k 选项关闭这样的连接。

C.5.4 交换 EMSRV 和 EMSRV 实用程序的不同版本

VisualAge for Java 版本 4.0 包含版本 7.1 的 EMSRV 和版本 7.0 的 EMADMIN 实用程序。

必须将 EMADMIN 7.0 与 EMSRV 7.1 配合使用。EMADMIN 7.0 不能正确地与早于 7.0 的 EMSRV 发行版配合工作。

C.5.5 PAM 限制

在 Linux 和 Solaris 平台上,认证是使用 PAM(密码认证模块)实现的。虽然在理论上允许通过更改相关的 PAM 配置文件来将任何 PAM(模块)与 EMSRV 配合使用,但实际上并不可能。

EMSRV 并非以完全与 PAM 体系结构相兼容的方式与客户机通信。因此,仅当模块最初提示输入文本密码(最初由客户机提供)时,EMSRV 认证才工作。

C.5.6 不能使用带有非 ASCII 字符的密码来对 EMSRV 执行认证 

由于 Microsoft C 运行时库中有故障,为响应以下提示:

“输入启动 EMSRV 的用户的密码”

而输入的包含非 ASCII 字符的任何密码都无法正确地解释。解决办法是在运行 EMADMIN 时使用 -p 选项提供密码。

C.5.7 当在 NetWare 日文版上运行时,菜单和窗口中有乱码

EMSRV NetWare 版 NLM 使用 Novell 的 NLM User Interface Developer Components (NWSNUT)。当在 NetWare 日文版上运行时,NWSNUT 菜单和窗口中使用的图形字符不可用,显示为乱码。这在 EMSRV NLM 和 NetWare 中都不是一个错误,但却是 Shift-JIS 代码页的一个限制。

C.5.8 EMADMIN 不复制存储的资源目录  

当使用 EMADMIN 7.0 来复制 VisualAge for Java 4.0 资源库时,它不复制相应的存储项目资源目录。您必须人工复制存储的项目资源目录。

D 部分:特定于组件的迁移信息

有关重要的 Swing 类迁移信息,请参考 18.0 一节。

D.1.0 CICS 事务处理服务器 (CICS TS)

此版本的 VisualAge for Java 不支持“CICS(R) 事务处理服务器”。此版本未包含支持 CICS TS 1.3 及更低版本所需的类。您尝试从较早版本的 VisualAge for Java 迁移的任何 CICS TS 应用程序都不能在版本 4.0 中工作,应当从版本 4.0 工作区和资源库中删除。

如果您想要使用 CICS TS 1.3 或更低版本,则必须继续使用 VisualAge for Java 的较旧版本(3.02 和更旧版本)。目前,如果您想要使用 JCICS 接口或需要 IIOP 的 CICS 支持,也必须使用 VisualAge for Java 的较旧版本(3.02 和更旧版本)。我们不支持“CICS 事务处理服务器”,因为它基于 JDK 1.1.x。

D.2.0 Data Access Bean

D.2.1. 从 VisualAge for Java 的版本 2.0 或 3.0x 迁移

Data Access Bean 使用 Swing 组件和接口。使用 Bean 开发的所有应用程序都必须从旧的 JDK 1.1.x Swing 包迁移至新的 J2SDK v.1.2.2. Swing 包。 为此,在安装完 VisualAge for Java 版本 4.0 之后选择受影响的类和包, 打开“修正/迁移智能向导”;并选择包括 JDK1.2 重命名包复选框。这会对 Swing 添加适当的“源/目标”条目,并允许您自动将 Swing 参考迁移至 Java 2 SDK。迁移时发生的任何错误都将记录在“日志”窗口中。

有关如何正确地迁移应用程序的更多信息,参考“可视化组合编辑器”联机帮助文件“类或包引用的修正/迁移指南”及相关的任务文件“修复类或包引用”。

D.2.2. 从 VisualAge for Java 的版本 3.5 迁移

如果是从 VisualAge for Java 版本 3.5 迁移,则无需执行任何额外的步骤来迁移 Data Access Bean,因为版本 3.5 中的 Data Access Bean 使用的是 J2SDK v.1.2.2 的 Swing 包。

D.3.0 Data Access Builder

Data Access Builder 不再包括在 VisualAge for Java 中。如果您想继续使用 Data Access Builder,则必须继续在先前版本的 VisualAge for Java 中工作。

VisualAge for Java 版本 4.0 中没有任何新功能部件直接替换先前由 Data Access Builder 提供的功能,但 VisualAge for Java 中有三个组件提供了类似的功能-Data Access Bean、Persistence Builder 和 Enterprise JavaBean Development Environment。每个功能部件都提供了不同的创建数据访问类的方法。 

不能将代码迁移至 VisualAge for Java 版本 4.0 并在任何这些工具中使用它。如果要在版本 4.0 中使用应用程序,必须重建它们。请使用最适合于您的代码开发主目标和应用程序用途的功能部件。

作为本指南的附录,提供了 Data Access Builder、Data Access Bean 和 Persistence Builder 的比较。 

D.4.0 EJB(TM) Development Environment

D.4.1 从 VisualAge for Java 版本 2.0 企业更新版迁移 Enterprise Bean

如果在 VisualAge for Java 版本 2.0 企业更新版中创建了 Enterprise Bean,并且您想要在 VisualAge for Java 版本 4.0 中使用它们,则需要在 VisualAge for Java 版本 2.0 企业更新版的当前版本中完成下列活动:

  1. 在“模式浏览器”中,保存任何未保存的模式。
  2. 在“映射浏览器”中,保存任何未保存的映射。
  3. 如果在上次生成部署码之后已对模式或映射作了任何新的更改,请删除部署码,然后重新生成它并进行测试。
  4. 将包(包括模式和映射包)和项目版本化,然后以 .dat 格式导出项目。

要在 VisualAge for Java 版本 4.0 中完成迁移 Enterprise Bean 代码,请执行下面“方案 1”或“方案 2”中的步骤,这取决于您是从资源库中导入(建议)还是从 JAR 文件中导入。

方案 1 -从资源库导入
如果是从资源库中导入 Bean,则执行这些步骤:

  1. 将包含 Enterprise Bean、模式和映射的项目从资源库添加到工作区中。错误图标将出现在某些装入的类旁边。
  2. 创建每个项目的开放版本。并创建任何包含以前生成的类的包的开放版本。
  3. 使用“模式”浏览器和“映射”浏览器来将所有可用的模式和映射装入到工作区中,然后重新生成部署类。
  4. 如果没有创建和保存模式和映射,则创建缺省模式和映射,并重新生成部署代码。
  5. 如果您计划只在版本 4.0 中工作,则请删除“项目”页面中您早先使用版本 2.0 企业更新版的 EJB Development Environment 生成的任何现存 EJB 测试客户机类。这些类将包含错误,并且,因为 EJB 测试客户机不再使用生成的类,所以它们不能在版本 4.0 中工作。(注意,在删除测试客户机类之前,它们并不出现在 EJB 页面的“EJB 类型”窗格中,因此,您需要检查“项目”页面以确定是否有任何需要删除的测试客户机类。)

您可以在 EJB Development Environment 的 VisualAge for Java 联机帮助中找到更多有关如何执行这些步骤的信息。

方案 2 -从 JAR 文件导入
如果已将 Enterprise Bean 导出至 JAR 文件,则执行这些步骤:

  1. 在 EJB 页面上,选择 EJB > 导入 Enterprise Bean 以将 JAR 文件导入到 VisualAge for Java 版本 4.0 工作区中。
  2. 因为 JAR 文件不包含必需的映射,所以错误图标将出现在许多导入的类旁边。
  3. 重新生成您拥有的模式、映射、部署类和任何测试客户机。
  4. 如果您计划只在版本 4.0 中工作,则请删除“项目”页面中您早先使用版本 2.0 企业更新版的 EJB Development Environment 生成的任何现存 EJB 测试客户机类。这些类将包含错误,并且,因为 EJB 测试客户机不再使用生成的类,所以它们不能在版本 4.0 中工作。(注意,在删除测试客户机类之前,它们并不出现在 EJB 页面的“EJB 类型”窗格中,因此,您需要检查“项目”页面以确定是否有任何需要删除的测试客户机类。)

您可以在 EJB Development Environment 的 VisualAge for Java 联机帮助中找到更多有关如何执行这些步骤的信息。

D.4.2 从 VisualAge for Java 版本 3.0 或 3.02 迁移 Enterprise Bean

如果有现存的 Enterprise Bean,它带有的部署码是使用 VisualAge for Java 版本 3.0 或版本 3.02 生成的,并且您现在想通过使用 VisualAge for Java 版本 4.0 来使用 Enterprise Bean,则必须将 Enterprise Bean 迁移至版本 4.0,然后显式地删除并重新生成部署码。

然而,在将 Enterprise Bean 代码迁移至版本 4.0 之前,您需要在 VisualAge for Java 的当前版本(版本 3.0 或版本 3.02)中完成下列活动:

  1. 在“模式浏览器”中,保存任何未保存的模式。
  2. 在“映射浏览器”中,保存任何未保存的映射。
  3. 如果在上次生成部署码之后已对模式或映射作了任何新的更改,请删除部署码,然后重新生成它并进行测试。
  4. 将包(包括模式和映射包)和项目版本化,然后以 .dat 格式导出项目。

要迁移 Enterprise Bean 代码,然后重新生成部署码,请在 VisualAge for Java 版本 4.0 中严格按照以下所示的顺序完成下列步骤:

  1. 将项目资源库文件导入到工作区中。
  2. 创建该项目的开放版本。并且,为某些包创建开放版本,这些包中有您想删除的部署码。
  3. 在“工作台”中,单击 EJB 选项卡。
  4. 在 Enterprise Bean 窗格中,选择您想要删除其部署码的 Enterprise Bean 或组。
  5. 选择 EJB > 删除
  6. 单击部署码以删除部署码。
  7. 按照 D.4.3 一节(如果正在从版本 3.0 迁移)或 D.4.4 一节(如果正在从版本 3.02 迁移)中的指示信息进行操作来迁移关联(如果有的话)。
  8. 确保 Bean 类和父 Bean 类不含有任何错误。
  9. 通过完成下列步骤重新生成 EJB Access Bean(如果有的话):
    1. 在“工作台”的 EJB 页面中,选择与要迁移的 Access Bean 相关联的 Enterprise Bean。
    2. 从 EJB 菜单中选择添加 > Access Bean,以打开“创建 Access Bean 智能向导”,然后单击完成按钮。所有对 Access Bean 的必要的迁移更改都会自动产生。 
  10. 重新生成部署码。
  11. 如果您计划只在版本 4.0 中工作,则请删除“项目”页面中您早先使用版本 3.0 或 3.02 的 EJB Development Environment 生成的任何现存 EJB 测试客户机类。这些类将包含错误,并且,因为 EJB 测试客户机不再使用生成的类,所以它们不能在版本 4.0 中工作。(注意,在删除测试客户机类之前,它们并不出现在 EJB 页面的“EJB 类型”窗格中,因此,您需要检查“项目”页面以确定是否有任何需要删除的测试客户机类。)
  12. 如果先前在 VisualAge for Java 版本 3.0、3.02 或 3.5 中创建了客户机 JAR 文件,则应当在 VisualAge for Java 版本 4.0 中重建这些客户机 JAR 文件。

D.4.3 从 VisualAge for Java 版本 3.0 迁移 EJB 关联

当您在版本 3.0 中生成的 EJB 组中添加、编辑或删除关联时,VisualAge for Java 会自动将 EJB 组中的所有关联转换为新的关联格式。要完成迁移过程,手工执行以下更改:

不会自动转换这些方法,这是因为这些方法中很有可能包含手工修改。当在版本 4.0 中创建新的 Bean 时,VisualAge for Java 将自动添加调用。

如果将版本 3.0 或更旧版本的 CMP Entity Bean 导入到已迁移关联的 EJB 组中,然后添加从导入的 CMP Entity Bean 继承的新 Bean,则新的 Bean 的 Bean 类将在若干方法中显示红色的 X。这是因为导入的 Bean 的 Bean 类会丢失 _initLinks、_getLinks 和 _removeLinks 方法。必须手工将这些方法添加到导入的 Bean 的 Bean 类中。

当您准备好将 Enterprise Bean 代码部署至生产应用程序服务器时,您应当确保还部署包含关联及 Access Bean 都需要的运行时代码的运行时 JAR 文件。必须将这个 JAR 文件部署至应用程序服务器,并且应当将其包括在应用程序服务器的类路径中。关于运行时 JAR 文件的其他信息可以在 EJB Development Environment 联机帮助中找到。

D.4.4 从 VisualAge for Java 3.02 迁移 EJB 关联

当您首次打开带有在版本 3.0 的 VisualAge for Java 中创建的关联的 EJB 组时,该组将在生成的链接类旁包含错误图标。当您添加、编辑或删除此类 EJB 组中的关联时,VisualAge for Java 自动修复 EJB 组中所有关联的链接类。即使您没有计划对关联作任何更改,也仍需要在 EJB 页面的属性窗格中选择该关联,并从其弹出菜单中选择编辑以打开关联编辑器。然后,应当单击确定来完成迁移过程。

VisualAge for Java 将自动除去一些在 VisualAge for Java 版本 3.02 中生成的与关联相关的方法。除去的方法那些在给定了关联的特征时,在版本 4.0 中不能正常工作的方法。例如,如果一个角色是主键的一部分,则该角色的设置方法无效。该方法在版本 3.02 中是自动生成的,但不能在版本 4.0 中生成。

D.5.0 Enterprise Access Builder(EAB) 和电子连接器  

D.5.1 Enterprise Access Builder

D.5.1.1 新连接器支持
Enterprise Access Builder 现在支持“公共连接器框架”(CCF) 和“Java 2 企业版 (J2EE) 连接器体系结构”连接器。Enterprise Access Builder 带有用于将 EAB 记录、“命令”、“导航器”和 Session Bean 从 CCF 格式迁移至“J2EE 连接器体系结构”格式的新工具。另外,已将下列智能向导和编辑器更新为反映对“J2EE 连接器体系结构”的新增支持:

有关对 IBM Connectors and Tools for J2EE(TM)-测试版的新增支持以及新 EAB 迁移程序的更多信息,请参考 Enterprise Access Builder 联机帮助。

D.5.1.2 重新生成和编辑记录与“命令”
如果将 EAB 应用程序从先前版本的 VisualAge for Java 迁移至版本 4.0,您可能想重新生成记录和“命令”。如果重新生成它们,它们在版本 4.0 中会执行得更好。 

在前面,如果您选择了“直接”和“短名”,而没有选择 “内部类”,则生成的记录的名称有时会比必需的长度要长。这有时会导致生成的名称超过 Windows 的 255 文件名限制。现在,“根据记录类型创建记录”智能向导已被优化为在已选择上述选项的情况下生成尽可能短的名称。然而,如果使用这些选项来重新生成,由于记录名可能已更改,所以会对应用程序产生影响。

如果“EAB 命令”是在版本 2.0x 中创建的,则不能在“命令编辑器”中编辑它。然而,可以在“可视化组合编辑器”中编辑它。运行时的当前版本向后兼容,所以可以用它运行版本 2.0x 的“命令”。

D.5.1.3 部署应用程序
版本 4.0 是 Enterprise Access Builder (EAB) 的一个过渡发行版。EAB 所基于的旧“公共连接器框架”(CCF) 正在转向新的“J2EE 连接器”体系结构。EAB 文档阐述了这一过渡以及它们之间的差异。对于本发行版,这两种体系结构都受支持。在部署方面,这意味着存在一些差异。请阅读 EAB 文档中的部署节以了解那些详细信息。下面这一段是对部署的简单概述。

对于现存的应用程序,可以继续按过去的方式工作。请使用连接器在运行时需要的 eab\runtime30\eablib.jar、ccf.jar、recjava.jar 和 JAR 文件部署应用程序。对于添加了一些与“J2EE 连接器”体系结构相关的组件(如使用 J2EE 体系结构的记录和“命令”)的新应用程序,请使用 eab\runtime35\eablib.jar 来部署应用程序。它具有双重功能,即这两种体系结构它都支持。另外,您将需要其他只与 J2EE 相关的 JAR 文件,EAB 文档的部署节指定了这些文件。

D.5.2 电子连接器

下一节包含关于 IMS Connect、CICS 连接器和电子连接器迁移的信息。

注意:由于 Windows 98 上的 CD-ROM 文件系统 (CDFS) 支持中存在着一项限制,所以,从 CD-ROM 安装特定电子商务连接器可能会失败并导致 下列其中一个或多个错误对话框显示(这取决于您选择的连接器):

任何未安装的文件都存储在一个 zip 文件 (econnfix.zip) 中,该文件位于产品 CD 的根目录中。如果尝试在 Windows 98 上安装 VisualAge for Java 并接收到上述消息中的任何一条,则必须将 econnfix.zip 解压缩 (unzip) 到产品的安装目录中(例如,通过运行命令 unzip econnfix.zip -d c:\Program Files\IBM\VisualAge for Java\,其中,c:\Program Files\IBM\VisualAge for Java\ 是产品的安装目录)。在这些文件就位之后,连接器就能正确地工作。

D.5.2.1 IMS Connect
对 IMS TCP/IP OTMA Connection (IMS TOC) 的支持将在 2001 年三月停止。我们建议用户从 IMS TOC 迁移至 IMS Connect,并使用它来替代 IMS TOC。

IMS Connect 是一个可以单独获得(VisualAge for Java 并未包括它)、可安装在 SMP 上的 IBM 产品,可以将其与 VisualAge for Java IMS 连接器配合使用来访问 IMS。在从 IMS TOC 迁移至 IMS Connect 之后,可以继续使用所有的 “IMS 连接器 Java 版”程序,无需更改或更新它们。

D.5.2.2 CICS 连接器
已将 ECIInteractionSpec 中的 CICSELUW 标志的行为修改为正确地模仿 CCF Connector 体系结构。在先前发行版中,无论是否存在实“协调者”,此标志在构造器中都缺省为 FALSE,始终确定 LUW 是否已扩展。

在此发行版中,如果存在实“CCF 协调者”(例如,JavaCoordinator),则 CICSELUW 标志在 ECIInteractionSpec 构造器中缺省为 TRUE。除非已明确地在旧的 VisualAge for Java 代码中设置了此特性,否则,在将旧代码迁移至 VisualAge for Java 版本 4.0 之后,旧代码中的 CICSELUW 特性现在将缺省为 TRUE。

当不存在实“协调者”时,则忽略此标志,所有应用程序(包括旧应用程序和您在 VisualAge for Java 版本 4.0 中创建的任何新应用程序)都具有 CICSELUW 标志为 FALSE 时的行为。因此,除非在环境中使用实共同协调者,否则以显式方式设置此标志将不起什么作用。

D.5.2.3 电子连接器迁移
虽然大多数先前版本的 VisualAge for Java 可以与版本 4.0 共存,但不同电子连接器级别的共存不受支持。

从 VisualAge for Java 版本 3.0x 或版本 3.5.x 迁移

如果安装了电子连接器,则需要遵循下面两个迁移方案之一,才能成功地从 VisualAge for Java 的版本 3.0x 或版本 3.5.x 迁移至版本 4.0。

这两个迁移方案之间的差异在于迁移连接器的阶段不同。

在方案 1 中,在初始安装过程中迁移连接器。在完成此方案中的步骤之后,您将得到没有连接器的 VisualAge for Java 版本 3.0x 或版本 3.5.x,它与带有连接器的 VisualAge for Java 版本 4.0 共存。

在方案 2 中,在初始迁移过程之后迁移连接器。在完成此方案中的步骤之后,您将得到没有连接器的 VisualAge for Java 版本 4.0,它与带有连接器的 VisualAge for Java 版本 3.0x 或版本 3.5.x 共存。以后,可以卸载版本 3.0x 或版本 3.5.x 连接器并安装版本 4.0 连接器。

迁移方案 1

  1. 将所有包含连接器或 EAB 代码的版本 3.0x 或版本 3.5.x 项目版本化。
  2. 将这些项目及相关资源导出到 VisualAge for Java 安装树以外的一个目录中。
  3. 从 3.0x 或 3.5.x 工作区中除去所有这些项目。
  4. 从工作区除去所有 CICS、Host-On-Demand、IBM Enterprise Access Builder、Encina(R)、IMS(TM) 和 MQSeries(R) 功能部件
  5. 退出版本 3.0x 或 3.5.x IDE。
  6. 通过执行下面这些步骤,卸载 VisualAge for Java 版本 3.0x 或 3.5.x 的连接器:
    1. 从 Windows 的“开始”菜单选择开始 > 设置 > 控制面板
    2. 双击添加/删除程序。选择安装/卸载选项卡。
    3. 选择 IBM 连接器。单击添加/删除
    4. 确认您想要卸载连接器及其相关组件。
    5. 在“删除程序”窗口中单击确定
  7. 为了防止将来安装连接器时发生冲突和错误,环境变量一定不能包含任何对已除去的连接器的引用。要编辑环境变量:

    Windows NT 和 Windows 2000

    1. 从“开始”菜单中选择设置 > 控制面板
    2. 双击系统图标。选择环境选项卡。
    3. 在 CLASSPATH、PATH 和 NLS PATH 中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。

    Windows 98

    1. 备份 c:\autoexec.bat 文件。
    2. 在命令提示符处,输入 edit c:\ autoexec.bat。 
    3. 在 SET CLASSPATH、SET PATH 和 SET NLS PATH 语句中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。
  8. 安装 VisualAge for Java 版本 4.0。
  9. 将期望的 CICS、Host-On-Demand、IBM Enterprise Access Builder、Encina、IMS 和 MQSeries 功能部件添加至版本 4.0 工作区。
  10. 将项目导入到版本 4.0 工作区中来完成 1.1.x 代码迁移。如果使用 SAP R/3 Access Builder and Connector,请参考这些步骤末尾的注释。 
  11. 在将您希望保留的任何代码迁移到 VisualAge for Java 4.0 中后,便可以卸载 VisualAge for Java 版本 3.0x 或版本 3.5.x。 
如果正在使用 SAP Connector,则必须重新生成以前使用 VisualAge for Java 版本 3.0x 或 3.5.x 生成的类。

Access Builder and Connector for SAP R/3 还提供了一些基于 Swing 1.0.3 的实用程序类(例如,LogonBean)。这些类由基于 Swing 1.1 的类替换。当从版本 3.0x 或版本 3.5.x 迁移至版本 4.0 时,必须将您自己的基于 Swing 1.0.3 的类迁移至级别 1.1,才能继续使用由 Access Builder and Connector for SAP R/3 提供的实用程序类。您可以使用 IDE“修正/迁移”工具来完成此过程。

迁移方案 2

  1. 安装 VisualAge for Java 版本 4.0 而不安装 Enterprise Access Builder for Transactions:
    1. 安装 VisualAge for Java 版本 4.0。按照屏幕上的指示信息进行操作。
    2. 在“安装类型”页面中,选择定制。单击下一步
    3. 选择所有您想要安装的组件,但不要选择 Transactions Access Builder。在选择您想要安装的组件完成之后,单击下一步。如果您在尝试安装 Transactions Access Builder 之后返回到安装屏幕,并且您不想安装连接器,请清除 Transactions Access Builder 复选框并单击下一步
    4. 继续按照屏幕上的指示信息进行操作,完成安装。
      您可以继续使用 VisualAge for Java 版本 3.0x 或版本 3.5.x 的连接器。

当您想要安装 VisualAge for Java 版本 4.0 连接器时,必须按照迁移方案 1 所概述的步骤卸载版本 3.0x/3.5.x 或卸载 3.0x/3.5.x 连接器。在卸载版本 3.0x/3.5.x 连接器或 VisualAge for Java 版本 3.0x/3.5.x 之后,便可以通过执行以下步骤来安装版本 4.0 的连接器:

  1. 安装 VisualAge for Java 版本 4.0。按照屏幕上的指示信息进行操作。
  2. 在“程序维护”页面中,选择修改。单击下一步
  3. 选择 Transaction Access Builder。单击下一步并按照屏幕上的指示信息进行操作,以继续安装组件。
  4. 将连接器添加至 VisualAge for Java IDE。有关如何执行此任务的信息,请参考联机帮助。

从 VisualAge for Java 版本 3.5 或版本 3.5.3 迁移

当从 VisualAge for Java 版本 3.5 或 3.5.3 迁移至 VisualAge for Java 版本 4.0 时,首先必须卸载随 VisualAge for Java 3.5 或 3.5.3 安装的 IBM Connectors,以确保将正确版本的 IBM Connectors 与 VisualAge for Java 4.0 安装在一起。

在除去版本 3.5 或 3.5.3 的 IBM Connectors 之前,如果您尝试安装 VisualAge for Java 版本 4.0,则会显示一个对话框,指出必须首先迁移任何使用 IBM Connectors 的应用程序,然后才能继续版本 4.0 的安装。

要迁移应用程序并卸载版本 3.5 或 3.5.3 的 IBM Connectors,请执行下列步骤。

  1. 将所有包含连接器或 EAB 代码的版本 3.5 或 3.5.3 项目版本化。
  2. 将这些项目及相关资源导出到 VisualAge for Java 安装树以外的一个目录中。
  3. 从 3.5 或 3.5.3 工作区中除去所有这些项目。
  4. 从工作区除去所有 CICS、Host-On-Demand、IBM Enterprise Access Builder、Encina、IMS 和 MQSeries 功能部件。
  5. 退出版本 3.5 或 3.5.3 IDE。
  6. 通过执行下面这些步骤,卸载 VisualAge for Java 版本 3.5 或 3.5.3 的连接器:
    1. 从 Windows 的“开始”菜单选择开始 > 设置 > 控制面板
    2. 双击添加/删除程序。选择安装/卸载选项卡。
    3. 选择IBM Connectors。单击添加/删除
    4. 确认您想要卸载连接器及其相关组件。
    5. 在“删除程序”窗口中单击确定
  7. 为了防止将来安装连接器时发生冲突和错误,环境变量一定不能包含任何对已除去的连接器的引用。要编辑环境变量:

    Windows NT 和 Windows 2000

    1. 从“开始”菜单中选择设置 > 控制面板
    2. 双击系统图标。选择环境选项卡。
    3. 在 CLASSPATH、PATH 和 NLS PATH 中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。

    Windows 98

    1. 备份 c:\autoexec.bat 文件。
    2. 在命令提示符处,输入 edit c:\ autoexec.bat。 
    3. 在 SET CLASSPATH、SET PATH 和 SET NLS PATH 语句中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。
  8. 安装 VisualAge for Java 版本 4.0。
  9. 将期望的 CICS、Host-On-Demand、IBM Enterprise Access Builder、Encina、IMS 和 MQSeries 功能部件添加至版本 4.0 工作区。

卸载连接器

如果卸载 VisualAge for Java 版本 4.0,则会自动卸载连接器。为了防止将来安装连接器时发生冲突和错误,环境变量一定不能包含任何对已除去的连接器的引用。要编辑环境变量,请执行下面的适当步骤:

Windows NT 和 Windows 2000

  1. 从“开始”菜单中选择设置 > 控制面板
  2. 双击系统图标。选择环境选项卡。
  3. 在 CLASSPATH、PATH 和 NLS PATH 中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。

Windows 98

  1. 备份 c:\autoexec.bat 文件。
  2. 在命令提示符处,输入 edit c:\ autoexec.bat。 
  3. 在 SET CLASSPATH、SET PATH 和 SET NLS PATH 语句中,删除任何对 IBM Connectors 或 IBM\Connectors 的引用。

仅限于 Windows 98:在卸载 VisualAge for Java 之后,可能必须要人工删除电子连接器目录(在缺省情况下,这是 C:\IBM Connectors)。 

D.6.0 Enterprise Toolkit for AS/400 (ET/400)

D.6.1 从版本 2.0 的 VisualAge for Java 迁移

在 VisualAge for Java 版本 2.0 下使用 Enterprise Toolkit for AS/400 生成的类与在 VisualAge for Java 版本 4.0 下使用 Enterprise Toolkit for AS/400 生成的 Java 类不兼容。造成这种不兼容的原因是版本 2.0 的 ET/400 Java 类使用 Abstract Windowing Toolkit(AWT),而版本 4.0 的 Java ET/400 类使用 Java 2 SDK Swing。

然而,版本 2.0 中提供的类仍可以在 VisualAge for Java 版本 4.0 附带提供的 com.ibm.ivj.et400.util.awt 包中找到。如果您想要在 VisualAge for Java 版本 4.0 中使用版本 2.0 中生成的类,则必须将版本 2.0 类中的任何引用由 com.ibm.ivj.et400.util 包更改为 com.ibm.ivj.et400.util.awt使用 VisualAge for Java 附带提供的“修正/迁移智能向导”可以完成此操作。迁移期间发生的任何错误都将记录在“日志”窗口中。有关使用此智能向导的信息,请参考联机帮助。

D.6.2 从版本 3.0 或 3.02 的 VisualAge for Java 迁移

如果在 VisualAge for Java 版本 3.0 或 3.02 下使用“ET/400 转换显示文件智能向导”生成了 Java 类,则它们与使用 VisualAge for Java 版本 4.0 的“ET/400 转换显示文件智能向导”所生成 Java 类不兼容。

造成这种不兼容性的原因是版本 3.0 和 3.02 中生成的代码使用不推荐使用的类,如 AS400SVisualTextField 和 Subfile 类,而版本 4.0 中生成的代码使用 JFormatted Bean。所有不推荐使用的类仍可以在 VisualAge for Java 版本 4.0 附带包括的 com.ibm.ivj.et400.util 包中找到。如果您想要使用在版本 3.0 或 3.02 中生成的类,则必须使用“修正/迁移”工具来转换所有被迁移的类,使它们引用新的 Java 2 SDK Swing 包名。这可以通过选择受影响的类、打开“修正/迁移”工具并选择包括 JDK 1.2 重命名的包复选框完成。这将自动迁移对 Java 2 SDK 的 Swing 引用。有关此任务的更多信息,请参考联机帮助。迁移期间发生的任何错误都将记录在“日志”窗口中。

VisualAge for Java 版本 4.0 未附带包括“创建子文件智能向导”。它已被更强大的 DFU Bean 和 JFormattedTable Bean 替换。如果您想要继续使用“创建子文件智能向导”来生成代码,则必须继续使用旧版本(3.02 或更旧版本)的 VisualAge for Java。因为生成的代码所需的类仍然受支持,且可以在 com.ibm.ivj.et400.util 包中找到,所以可以将版本 3.0 或 3.02 中的“创建子文件智能向导”所生成的任何代码迁移至版本 4.0。您必须执行前一段落中记载的步骤来迁移代码。  

D.7.0 Enterprise Toolkit for OS/390 (ET/390)

您应当使用的用于开发 OS/390 应用程序的 ET/390 的版本取决于 OS/390 系统或中间件应用程序上可用的 SDK 级别, 以及 VisualAge for Java(包括 ET/390)支持的 SDK 级别。

在 OS/390 系统和中间件应用程序上,有两个 SDK 级别可用,如下表所示:

系统或中间件应用程序 SDK 级别
OS/390 SDK 1.1.8,1.3.0
WebSphere Application Server, Version 3.0 SDK 1.1.8
CICS 事务处理服务器,版本 1.3 SDK 1.1.8,对于解释型事务和编译型事务
DB2 通用数据库版本 5 和 6 SDK 1.1.8,仅限于编译型存储过程

在 VisualAge for Java 中,产品的不同版本支持不同的 SDK 级别,如下表所示:

VisualAge for Java SDK 级别
版本 3.5、3.5.3 和 4.0 SDK 1.2.2
版本 3.02 SDK 1.1.8

下列各节描述使用不同版本的 ET/390 可以开发的 OS/390 应用程序的类型。

VisualAge for Java 版本 3.5、3.5.3 和 4.0

VisualAge for Java 版本 3.5、3.5.3 和 4.0 中的 ET/390 主要面向下列类型的应用程序:

对于在 WebSphere Application Server 版本 3.0 上运行的解释型应用程序,必须将应用程序类创建为可以配合 SDK 1.1.8 级别的 Java API 工作。在创建它们之后,可以将这些类导出至 NFS 安装的驱动器,以便可以在 OS/390 系统上使用它们。然后,您就可以通过从 VisualAge for Java IDE 中 单击运行 main调试 main 菜单项来执行和调试应用程序。

对于在 OS/390 系统上运行的独立的解释型应用程序,必须将应用程序类创建为可以配合 SDK 1.3.0 级别的 Java API 工作。在创建它们之后,可以将这些类导出至 NFS 安装的驱动器,以便可以在 OS/390 系统上使用它们。然后,您就可以通过从 VisualAge for Java IDE 中 单击运行 main 菜单项来执行和调试应用程序。

关于构建、导出、执行和调试解释型应用程序的详细信息,请参考 ET/390 的联机帮助。

VisualAge for Java 版本 3.02

VisualAge for Java 版本 3.0.2 中的 ET/390 主要面向下列类型的应用程序:

D.8.0 Enterprise Toolkit for Workstations (ET/WS)

Enterprise Toolkit for Workstations (ET/WS) 和高性能编译器 (HPJ) 未包括在此发行版的 VisualAge for Java 中。如果您想继续使用 Enterprise Toolkit for Workstations,必须继续在先前版本(3.02 或更早的版本)的 VisualAge for Java 中工作。

VisualAge for Java 版本 4.0 中没有任何新功能部件可替换先前由 ET/WS 提供的功能。与 ET/WS 附带包括的功能相类似的功能可以在“及时”编译器中找到,该编译器是 Java 虚拟机的一部分。IBM Developer Kit 的 Java 技术版 v1.2.2 的 PTF 9 附带包括了 Java 虚拟机。

JIT 编译器接收字节码并将其编译成直接执行的代码,然后运行程序。字节码得到保留,仍保持可迁移性,但代码(在由 JIT 编译之后)运行得更快。有关的更多信息,请访问 Sun(TM) 公司的 Web 站点 http://java.sun.com

D.9.0 外部版本控制 

在从 VisualAge for Java 版本 3.5 迁移至版本 4.0 之后,可以继续使用在版本 3.5 中用于项目的“外部版本控制”。如果“外部版本控制”图标一开始并未出现,请执行工具 > 外部版本控制 > 刷新项目操作,它们应当就会出现。

可能需要重新启动“工具 API 远程访问”,可以从“选项”对话框中完成。选择窗口 > 选项来打开“选项”对话框。选择工具 API 远程访问并单击工具 API 远程访问按钮来启动它。

D.10.0 IDL Development Environment

如果使用过 IBM Component Broker Series 或 CICS IIOP Server Support 功能部件提供的“IDL 到 Java”编译器,则需要在下列对话框中人工定义“IDL 到 Java”编译器调用字符串:

“选项”对话框(从窗口菜单访问)的“IDL 到 Java 编译”页面。修改命令字段中的字符串。

“更改 IDL 到 Java 编译选项”对话框。在 IDL 页面中,选择 IDL > 更改编译选项。修改命令字段中的字符串。

有关修改字符串和打开 IDL 页面的更多信息,参考 IDL Development Environment 的联机文档。

有关 CICS IIOP 支持的信息,请参阅 D 部分的 1.0 一节。

D.11.0 集成开发环境

自从版本 3.5 之后,JDK 级别已更改(现在是 JDK 1.2.2 PTF 9)。

如果您修改了 VisualAge for Java 版本 3.5 的“Java 类库”(替换了其中的任何包或类,或向其添加了任何包和类),迁移之后,这些修改不会在版本 4.0 的“Java 类库”中自动重新生成;您将必须以人工方式再次修改“Java 类库”。 

在版本 3.5 之前,VisualAge for Java 中的“Java 类库”完全是只读的。

D.12.0 JSP/小服务程序开发环境

如果是从先前版本的 VisualAge for Java 迁移至 VisualAge for Java 4.0,下面两个文件将被新版本覆盖,对它们所作的任何更改都将丢失:

您可能想在迁移至版本 4.0 之前备份所有这些文件,然后在升级至 VisualAge for Java 版本 4.0 后将旧更改添加至这些文件的新版本。不应该简单地复制这些文件的旧版本来覆盖它们的新版本,因为新版本包含这些文件的旧版本所没有的信息。 

D.13.0 迁移辅助程序 ActiveX 版

“迁移辅助程序 ActiveX 版”未包括在此发行版的 VisualAge for Java 中。通过执行 B 部分中阐述的一般迁移步骤,可以将您在先前版本(3.02 或更旧版本)的 VisualAge for Java 中使用“迁移辅助程序”创建的代码迁移至版本 4.0。VisualAge for Java 版本 4.0 中没有任何新功能部件替换了先前由“迁移辅助程序 ActiveX 版”提供的功能。 

D.14.0 Persistence Builder  

注意:无需对 VisualAge for Java 版本 4.0 应用 Persistence Builder 的修订包 3.5.1 或修订包 3.5.2(可以从 VADD 获得)。这些程序修订已合并到版本 4.0 的代码中。

必须使用 VisualAge for Java 来重新生成由 Persistence Builder 的任何前发行版生成的代码。

D.14.1 明确地从版本 2.0 升级

如果是从 VisualAge for Java 版本 2.0 升级,执行下列操作:

  1. 将与 Persistence Builder 应用程序相关的所有项目版本化。
  2. 在将代码迁移至 VisualAge for Java 版本 4.0 之后,将项目添加至版本 4.0 工作区。因为某些转换器不再与 VisualAge for Java 包括在一起,所以会遇到与服务类相关的问题。要校正这些问题,为您的对象模型生成“数据服务类和接口”,然后代码生成服务将解决这些问题。
  3. 转换器的超类已移至项目:VisualAge Persistence Common Runtime。您必须把编写器的超类更改为:com.ibm.vap.converters.VapAbstractConverter。
  4. 编写器超类也已移至新项目。您将必须把编写器的超类更改为:com.ibm.vap.composers.VapAttributeComposer。

有关执行这些步骤的更多信息,参考 Persistence Builder 的联机文档。

D.14.2 从所有先前版本(包括版本 2.0)升级 

当从“模型浏览器”装入可用的模型、映射或模式时,元数据内部便发生了更改。于是,您不能可靠地将元数据装入到发行版级别低于版本 4.0 的工作区中。模型、映射或模式将显示为混乱。保存模型、映射或模式。

注意:仅当正在从 VisualAge for Java 的版本 2.0 或 3.0x 迁移时,以下信息才适用。如果是从版本 3.5 升级,则以下信息不适用。

前发行版中为定制查询创建的类会有错误。定制查询框架现在抛出一个“可抛出”对象,使您能够捕捉调用定制查询时发生的异常。结果是,任何预先存在的定制查询在 IDE 中都将显示为包含未解决的错误(带有红色的 X),其原因是它们目前未处理抛出的异常。要校正此情况,从定制查询抛出异常或者捕捉该异常。

您可以在 Visual for Java 联机帮助中找到更多有关处理错误的信息。

对运行时支持的更改 
包含 Persistence Builder 运行时先决条件 javax 包的项目的名称已更改。这可能要求您重新计算使用 Persistence Builder 的程序元素的项目路径,如下所示:

  1. 选择类。
  2. 从“选中”菜单或类的弹出菜单中选择运行 > 检查类路径
  3. 单击“项目路径”复选框附近的立即计算按钮。
  4. 要保存重新计算的路径设置,选择保存在资源库中(作为缺省值)复选框。如果保存设置,将创建该类的新版本。
  5. 选择确定

D.15.0 RMI Access Builder

VisualAge for Java 版本 4.0 未附带包括 RMI Access Builder。您可以将旧的生成类和运行时库项目导入到版本 4.0 工作区中,但您将无法运行“远程对象调用管理器”(ROIM),原因是未包括它。您应当熟悉新的“Java 2 平台”安全性模型以及它的限制对您的 RMI Access Builder 应用程序有何影响。

向工作区添加 RMI Access Builder 运行时
必须从版本 3.0x 的 VisualAge for Java 导入 RMI Access Builder 运行时并将其添加至工作区。不能在不带 RMI Access Builder 运行时的 VisualAge for Java 版本 4.0 中运行 RMI Access Builder 应用程序。

  1. 选择文件 > 导入。 
  2. 选择 Jar 文件单选按钮。 
  3. 输入该运行时的路径和名称,即 x:\IBMJava\eab\runtime\ivjrmi.zip,其中,x:\IBMJava\ 是版本 3.0x 的安装目录。
  4. 选择 .class 复选框。如果已选择了资源复选框,则清除它。 
  5. 项目字段中,输入 IBM Enterprise RMI Access Builder Library
  6. 单击完成。 
  7. 如果 IBM Enterprise RMI Access Builder Libary 项目尚未存在,则会提示您创建它。
  8. 确保将该项目添加至工作区。如果它未出现在工作区中,则转至“资源库管理器”并选择添加它。

迁移 RMI Access Builder 应用程序
如果 RMI 应用程序尚未存在于版本 4.0 资源库中,则执行这些步骤来将它们导入到工作区中。

  1. 将旧版本的 VisualAge for Java 中的 RMI Access Builder 类和运行时库项目版本化。如果您希望的话,可以将类简单地作为 .java 类加以维护。 
  2. 通过执行这些步骤,将它们导入到 VisualAge for Java 版本 4.0 IDE 中:

如果您希望运行任何服务器对象,则首先必须创建服务器主线。例如,如果有“服务器方的服务器代理”:Reverse1S 和 ServerObj2S,则可以编写一个服务器 main 来将服务器对象实例化:

import...;
public class Servermain {
    public static void main(String arg[]) {
        try{
            Reverse1S myserver = new Reverse1S();
            ServerOvj2S obj2 = new ServerObj2S();
}
catch (Exception e) {
    e.printStackTrace();
    }
System.out.print ln("Server Objects Started.");
    }

}

并且,因为更为严格的安全性限制,您必须为服务器和客户机定义策略文件。例如,可以有名为 "My policy" 的策略文件:

grant {
//Grant all permissions
permission java.security.AllPermission;
};

或者,可以有允许任何人在无特权端口上进行监听的策略:

grant { 
// allows anyone to listen on un-privileged ports
permission java.net.SocketPermission "localhost:1024-", "listen";
permission java.net.SocketPermission "localhost:1024-", "resolve"; 
permission java.net.SocketPermission "pathfinder:1000-4000", "listen";
permission java.net.SocketPermission "pathfinder:1000-4000", "connect";
permission java.net.SocketPermission "pathfinder:1000-4000", "resolve";
};

其中,pathfinder 是用户的机器名。

当您启动客户机时,您将必须运行一条类似于以下的命令,以便能够正确地启动客户机:

java-Djava.security.policy=<myPolicy.file> 

例如,如果正在 IDE 中运行 main(),当选择“运行,使用”菜单项时,应在“属性”部分中指定 java.security.policy=

您应当在先前版本的 VisualAge for Java 上维护代码,以便可以继续开发或重新生成它。

D.16.0 可视化组合编辑器

必须使用 IDE 迁移工具来修复可视化组件的元数据。有关如何修复因为将类迁移至 J2SDK v.1.2.2 或重命名用户定义程序元素而断开的类或包引用,参考联机帮助主题“类或包引用的修正/迁移指南”。

VisualAge for Java 不跟踪正在迁移的类之间的依赖性。在一个类中引用的尚未迁移的类可能会发生类初始化问题,或者可能会不正确地探察。

迁移期间发生的任何错误都将记录在“日志”窗口中。例如,假定当您迁移名为 Sample.Samp 的类时,以下消息出现在“日志”窗口中:

迁移类:Sample.Samp

未能迁移类:<Pkg>X::Y

Sample.Samp 引用 X::Y;VisualAge for Java 在装入类 Y 时遇到问题。或者是尚未迁移 Y ,或者是已丢失。(在“可视化组合编辑器”中,类 Y 作为问题类出现。)要修正这种情况,首先迁移 Y,或者,如果 Y 丢失了,则查找 Y 的替换类。在非常极端的情况下,可能必须要在先前版本的 VisualAge for Java 中打开 Samp 或 Y,并复位 Bean 或特性,以便迁移可以继续。

在某些情况下,在 VCE 中打开该类将导致“解析类引用”对话框打开。此对话框显示 VCE 中存在的问题类。此对话框中“未解析的类引用”栏指定 VisualAge for Java 用作临时替换的类。如下显示:

com.ibm.uvm.abt.edit.DeletedClassView(X)

出现在括号中的 X 是问题类的名称。可能 X 是在当前类之后正确迁移的。要修正这种情况,选择要修正的行并单击替换按钮。在“选择有效的类”对话框中,选择类 X 作为替换类。对所有未解析的类执行此操作,然后单击确定

D.17.0 Servlet Builder 和 Servlet Launcher

VisualAge for Java 版本 4.0 未附带包括 Servlet Builder 和 Servlet Launcher。与版本 4.0 相兼容的 Servlet Builder 运行时 JAR 文件可以从 http://www.ibm.com/vadd 获得。遵循 "Download" 链接。 

VisualAge for Java 版本 4.0 中没有任何新功能部件直接替换先前由 Servlet Launcher 提供的功能。要测试小服务程序,可以通过在 Web 浏览器中输入 URL 来显式地启动它们,也可以通过编写 HTML 或 JSP 页面来调用它们。对于新的小服务程序的开发,可以使用新的“小服务程序智能向导”,它还将创建用来启动小服务程序的 HTML 页面。

您有两个选项来使用运行时文件:

方案 1

在本方案中,先使用 Servlet Builder 编辑先前版本的 VisualAge for Java 中的代码,然后再导出它。 

  1. 将先前版本的 VisualAge for Java 中的应用程序代码导出到安装树外部的一个目录或资源库中。 
  2. 使用 WoodenChair 的 "Utility+ JDK Standard Edition" 之类的实用程序将 java 代码(重命名包、处理依赖性更改,等等)迁移至 J2SDK v1.2.2。要了解更多关于此产品及其功能的信息,请访问 WoodenChair 的 Web 站点,地址是 http://www.woodenchair.com/
  3. 使用 J2SDK v1.2.2 编译每个 .java 类文件和 JAR 文件。Servlet Builder 4.0 运行时 JAR 文件必须在编译类路径中。 
  4. 将代码部署至 WebSphere Application Server。Servlet Builder 4.0 运行时 JAR 文件必须在 WebSphere Application Server 文档根目录或服务器的类路径中。
  5. 如果需要进行其他修改,则返回至步骤 1。根据需要重复其他步骤。

方案 2

在本方案中,您在 VisualAge for Java 中编辑 Servlet Builder 代码,在 WebSphere Unit Test Environment 中测试它。

请执行这些步骤:

  1. 将 Servlet Builder 4.0 运行时 JAR 文件导入 VisualAge for Java 版本 4.0。
  2. 将您想要使用的项目导入 VisualAge for Java 版本 4.0 工作区。
  3. 使用“修正/迁移智能向导”来修复代码中任何断开的引用。
  4. 根据需要人工修改代码,并在 WebSphere Unit Test Environment 中对其进行编译和测试。
  5. 将项目导出到一个 JAR 文件中。
  6. 将代码部署至 WebSphere Application Server。Servlet Builder 4.0 运行时 JAR 文件必须在 WebSphere Application Server 文档根目录或服务器的类路径中。

您可以在 VisualAge for Java 联机帮助中找到更多有关如何执行这些步骤的信息。

以前发行版的 VisualAge for Java 所提供的 Servlet Builder 功能部件能创建直接生成 HTML 用户界面的小服务程序。对于快速应用程序开发而言,此功能非常有用,但也有缺点,就是它将应用程序的商业逻辑与其用户界面组合在一起。如果希望更改用户界面,则必须修改小服务程序。为了使维护容易些,最好使用 JavaServer Pages(TM) (JSP) 技术将用户界面与商业逻辑分隔开。

JSP 页面是一个 HTML 模板,它包含动态生成的内容。JSP 页面可以使用 IBM WebSphere Studio 中的 PageDesigner 功能部件之类的 HTML 编辑工具进行修改。在 IBM 的 WebSphere 编程模型中,小服务程序仍用于 Web 交互作用,但它们将商业逻辑委托给 Java Bean,并将用户界面委托给 JSP。在此编程模型中,小服务程序和 Bean 是使用 Java 工具开发的,而 JSP 页面是使用 HTML 工具开发的。

商业逻辑与用户界面的这种分隔方式允许您对拥有适当技能和工具的小组成员分配开发任务,并且易于维护。

按照 WebSphere 编程模型,Servlet Builder 提供的功能已由 VisualAge for Java 中的 Java 工具和 WebSphere Studio 中的 HTML 工具替换。VisualAge for Java 版本 4.0 提供了一个新的智能向导(向导)来帮助您开始创建遵循 WebSphere 模型的 Web 应用程序。您可以使用“创建小服务程序智能向导”来生成一个小服务程序,对于商业逻辑,它调用一个 Bean,对于用户界面,它调用一个 JSP 页面。此智能向导还生成 HTML 表单,这些表单可用来测试小服务程序。可以立即在 VisualAge for Java 的 WebSphere Test Environment 中测试小服务程序,然后在 IDE 中进行改良。可以使用 WebSphere Studio 或其他 HTML 工具进一步地对 JSP 和 HTML 文件进行编辑。

“创建小服务程序智能向导”仿效 WebSphere Studio 中的 JavaBean 向导。它还包含 Java 程序员所需的其他功能部件。如果您使用过 WebSphere Studio 进行 HTML 开发,您会发现此智能向导简化了该工具与 VisualAge for Java 之间的工作流程。开发步骤包括:

  1. 为应用程序的商业逻辑创建一个 Java Bean。
  2. 运行此智能向导来生成小服务程序、JSP 和 HTML 表单。
  3. 在 VisualAge for Java 中测试小服务程序。
  4. 在 VisualAge for Java 中继续开发小服务程序。
  5. 在 WebSphere Studio 或等效的工具中改良 JSP 和 HTML 文件。 

D.18.0 Swing 类

在 J2SDK v1.2.2 中,Swing 类所在的包与它们在 JDK v1.1.x 中所在的包不同。如果您需要更新对 swing 类的引用,可以使用“修正/迁移智能向导”。

要迁移应用程序,必须选择受影响的类和包,打开“修正/迁移智能向导”(右键单击该包或类,然后选择重组 > 修正/迁移),并选择包括 JDK1.2 重命名的包复选框以自动地将 Swing 引用迁移至 J2SDK v1.2.2。这将为 Swing 添加适当的“源/目标”条目。迁移期间发生的任何错误都将记录在“日志”窗口中。 

有关如何正确迁移应用程序的信息,请参考联机帮助主题“类或包引用的修正/迁移指南”和“修复类或包引用”。  

因为 Swing 的版本 1.03 与 1.1.1 之间进行了串行化更改,所以您可能无法使用“可视化组合编辑器”来将所有 Swing 特性从 JDK 1.1.7 迁移至 Java 2。在将代码迁移至 VisualAge for Java 版本 4.0 之后,可能无法在 VCE 中打开一些 Swing 应用程序类。仅当您使用过 VCE 特性清单将 Javabean 的特性设置为 Swing 对象之后,才会发生这种情况。

要解决此问题,请执行这些步骤:

  1. 在先前版本的 VisualAge for Java(的 VCE)中重新打开那个类。
  2. 在那个类的特性清单中,单击“复位”按钮。将打开一个窗口,列出您修改过的所有 Bean 特性。应将任何已设置为 Swing 对象的特性复位为它们的缺省设置。
  3. 保存该类并重新将其导入到版本 4.0 IDE 中。

D.19.0 XMI Toolkit  

有关从测试版,版本 1.2 的 XMI Toolkit 迁移的信息,请参考 XMI Toolkit 发行说明。

如果您已使用过任何非 XML Toolkit 的版本 3.5 的其他发行版(例如,技术预览版、alphaWorks 发行版或更早的测试版),则在使用本发行版的 XMI Toolkit 之前,应卸载那些发行版的 XMI Toolkit,并除去安装期间执行的环境更新。只提供了用于 1.2 发行版的迁移指示信息。

从测试版 1.2 和前测试版 1.2 发行版生成的 ZIP 文件和 XMI 文件 与 XMI Toolkit 的任何 3.5 或 3.5.x 发行版都不兼容。

E 部分:一般信息

E.1.0 处理项目资源与资源管理

在 VisualAge for Java 的版本 4.0 中,您可以版本化并发布项目资源文件。有关此新功能部件的更多信息,请参考 IDE 和小组联机帮助。

如果已将项目从 VisualAge for Java 的版本 2.0 或 3.0x 迁移至 VisualAge for Java 的版本 4.0,则在完成迁移过程之后,可以执行这些步骤。您不需要在完成迁移后立即执行它们,但在执行它们之前,资源库中的项目资源尚未版本化。 
注意
:如果已从版本 3.5 迁移项目,则无需执行这些步骤。

  1. 确保已将所有旧项目资源复制到了版本 4.0 项目资源目录中。
  2. 将项目从资源库添加到工作区中。
  3. 为每个项目创建新的开放版本。在创建项目的开放版本之前,不能向其添加新资源。
  4. 将项目版本化,这将发布所有资源。 

如果您计划在小组环境中使用 VisualAge for Java 的企业版,则必须使用 EMSRV 版本 7.1。 

E.2.0 从 OS/2 和 AIX 迁移

VisualAge for Java 版本 4.0 不支持将 OS/2 和 AIX 作为开发平台。只能将 VisualAge for Java 版本 4.0 作为客户机安装在 Windows NT、Windows 98 和 Windows 2000 上。如果您希望将版本 4.0 与 OS/2 和 AIX 资源库配合使用,必须从版本 4.0 IDE 连接该资源库。有关如何执行此任务的信息,请参考联机帮助。 

如果您编写了任何特定于平台的代码,必须重新编写才能使它可以在 Windows 上工作。

两个方案 

注意:同一机器上不能同时安装有 AIX 和 Windows,因此“方案 1”中的步骤仅适用于 OS/2。

方案 1

如果 ivj.dat OS/2 资源库与 Windows 客户机在同一机器上:

  1. 备份旧的 ivj.dat。在安装了 Windows 98、Windows NT 或 Windows 2000 和 VisualAge for Java 版本 4.0 后,将恢复该资源库。如果该资源库驻留在 OS/2 管理的 FAT 分区上,而您计划在同一机器上安装 Windows 98/NT/2000 并保留该 FAT 分区,则不必备份该资源库。但我们仍建议您备份该资源库,以防在安装 Windows 时遇到任何问题。 
  2. 安装 Windows 98、Windows NT 或 Windows 2000。如果您的机器正在运行 OS/2,则可以使用双重引导选项将 Windows 安装在同一机器上,以保留现有的 OS/2 安装。 
  3. 安装 VisualAge for Java 版本 4.0。 
  4. 将该资源库恢复到新的 Windows 安装可以访问的本地硬盘分区中。如果该资源库先前驻留在由 OS/2 管理的 FAT 分区上,且该分区仍存在,则不需要恢复该资源库。 
  5. 连接旧的资源库(企业版)或从旧的资源库导入(专业版)。应当将任何旧的项目资源以覆盖方式复制到版本 4.0 项目资源目录中。

方案 2

如果 ivj.dat OS/2 或 AIX 资源库与 Windows 客户机不在同一机器上:

  1. OS/2 或 AIX 机器必须正在运行 VisualAge for Java 版本 4.0 附带提供的 EMSRV 资源库程序(版本 7.1)。可以连接至与 VisualAge for Java 版本 3.02 或更早版本配合使用的资源库,但必须安装了 EMSRV 的版本 7.1 才能从版本 4.0 连接至旧的资源库。
  2. 运行 VisualAge for Java 版本 4.0 的 Windows 客户机根据需要与 OS/2 或 AIX 服务器相连。应当将任何旧的项目资源以覆盖方式复制到版本 4.0 项目资源目录中。

E.3.0 J2SDK v1.2.2 中的新的安全性限制  

因为在 Java 2 平台 V1.2.2 上运行的小应用程序的安全性策略作了更改,所以小应用程序不再能够访问本地资源。 

由于此限制,VisualAge for Java 版本 4.0 未包括先前版本的 VisualAge for Java 中提供的若干样本。并且,包括的一些样本只能作为应用程序运行,否则它们不能正常工作。有关如何正确运行样本的指示信息,请参考联机文档。

可以通过创建自己的 java.policy 文件并用以下参数启动 AppletViewer 来更改缺省安全性策略:-Djava.security.policy=someURL

其中,someURL 是新的策略文件的位置。有关 Java 中的一般安全性的详细信息,请访问 http://java.sun.com/security。有关 Java 2 中的安全性与策略文件语法的特定信息,请访问 http://java.sun.com/products/jdk/1.2/docs/guide/security

E.4.0 新的外部版本控制工具(替换外部 SCM 工具)

VisualAge for Java 版本 3.5 引入的外部版本控制工具使您能够从 VisualAge for Java 中连接外部源代码管理 (SCM) 供应商,如 ClearCase、PVCS Version Manager、TeamConnection(TM) 和 SourceSafe(TM)。有了此工具,可以将类添加至 SCM 供应商,将类和资源文件检入及检出 SCM 系统,以及从 SCM 系统导入一个类的最新检入版本。

此工具替换旧的外部 SCM 工具,并提供了增强功能。

E.5.0 在 VisualAge for Java 中使用第三方 ORB

可以在 VisualAge for Java 中使用与 J2SDK v1.2.2 相兼容的第三方“对象请求代理”(ORB)。必须将 ORB 类导入到 IDE 中才可以使用它们。

在将 Java 类导入 IDE 时,可以向“Java 类库”添加 ORB 扩展类。还可以替换现存“Java 类库”中一些不属于 J2SDK v1.2.2 核心类的 ORB 扩展类。

您可以在 Web 上找到一篇包含更多关于在版本 3.5.x 中使用第三方 ORB 的详细信息的文章:

http://www.ibm.com/software/vadd/Data/Document2175

此文章包含关于在 VisualAge for Java 中开发“公共对象请求代理体系结构”(CORBA) 和 ORB 应用程序的全面信息。

在将第三方 ORB 导入 VisualAge for Java 时,可能会替换某些“Java 类库”类。版本 3.5 的补丁程序 2 修正了一个错误,该错误错误地允许您将某些不可变的类(它们包含在可变的包中)导入到 VisualAge for Java 中。在对 VisualAge for Java 版本 3.5 应用补丁程序 2 之后,当导入第三方 ORB 时,您可能会在“日志”窗口中接收到新的或附加的警告。出现这些警告的原因是您不能在应用补丁程序 2 之后将不可变的类导入到 VisualAge for Java 中,然而,可以忽略这些警告。

E.6.0 附加功能部件 CD 的内容

“VisualAge for Java 附加功能部件”CD 包含下列各项:

“附加功能部件”CD 和主产品 CD 都包含《安装与迁移指南》以及产品自述文件。

注意:只有“VisualAge for Java 企业版”附带有“附加功能部件”CD。然而,“VisualAge for Java 专业版”的产品 CD 包含下列各项:

《安装与迁移指南》以及产品自述文件 (README) 位于“VisualAge for Java 专业版”产品 CD 上。

IBM J2EE Connectors and Tools for J2EE(TM)-测试版

VisualAge for Java 的本发行版包含“Java 2 平台企业版”(J2EE) 的若干个组件的测试版,Sun 公司尚未正式发布这些组件。这些组件包括:

测试版组件放在 extras\BetaJ2EEConnectors 子目录中。如果您想要使用这些测试版组件,请参考 BetaJ2EEConnectors 子目录中的自述文件 (README),以获取这些组件的安装说明。

注意:VisualAge for Java 版本 4.0 附带交付的组件只在 Windows NT 和 Windows 2000 上受支持。并不是所有 J2EE 运行时文件在 Windows 2000 上都受支持。有关 J2EE 组件的更多信息,参考 Enterprise Access Bean 联机帮助和发行说明。

小组服务器 (EMSRV) 

“附加功能部件”CD 上的 TeamServer 目录包含 EMSRV 资源库服务器程序和“服务器设置与管理”文件(emsrv71.htm,对于所有除英语之外的语言,为 emsrv70.htm)。请参考 C 部分以获取有关安装 EMSRV 的指示信息,并请参考“服务器设置与管理”文件(位于 TeamServer\docs 中)以了解有关启动服务器的信息。 

可分布运行时

当您导出和部署使用 VisualAge for Java 构建的小应用程序或应用程序时,您还需要部署用来创建代码的功能部件的运行时库(如果有的话)并将已部署的运行时 JAR 文件或 Zip 文件放在类路径上。

通常,JAR 文件已压缩,供在服务器外运行小应用程序时使用。Zip 文件未经压缩,应该放在部署机器的 CLASSPATH 中,以便以本地方式运行应用程序。

VisualAge for Java 运行时库位于 extras/runtime30 和 extras/runtime35 目录中。根据已安装的 VisualAge for Java 功能部件的不同,安装映象的 eab/runtime35 或 runtime30 目录中还提供了一些或全部运行时库。注意:J2EE 运行时库不包含在“附加功能部件”CD 上。在安装了测试版组件之后,J2EE“连接器”的运行时文件将位于 eab\runtime 35 和 IBM Connectors\classes 中。

有关安装和使用运行时库的更多信息,请参考联机帮助。

IBM Developer Kit 1.2.2(用于 Windows)

IBM Developer Kit 目录中的 IBM Developer Kit 的 Java 技术版 v 1.2.2 的 PTF 9 是一个 Java 开发环境,它帮助您开发符合 100%“纯 Java”规范的独立 Java 应用程序和小应用程序。

它包含用于开发 Java 应用程序和小应用程序的工具,其中的一些包括: 

Java 编译器 
将 Java 源代码转换成以后可以使用“Java 解释器”运行的 Java 字节码。
Java 类库 
提供所有标准 Java 类,允许 Java 应用程序创建和扩展现存的 Java 对象。 
Java 小应用程序查看器 
提供一种从命令提示符处运行小应用程序的方法。 
Java 文档生成器 
根据已正确地作了注释的 Java 程序生成 Toolkit 的“应用程序编程接口”(API) 文档。 

要安装 IBM Developer Kit,请从 IBM Developer Kit 目录运行 install.exe。有关 IBM Developer Kit 的更多详细信息,请参考 IBM Developer Kit 目录中的自述文件 (README)。

用于 Oracle 和 Microsoft SQL Server 的 Merant DataDirect SequeLink Java 版的版本 5.1

VisualAge for Java 版本 4.0 支持将 Merant DataDirect SequeLink Java 版的版本 5.1 驱动程序用于访问 Microsoft SQL Server 和 Oracle 数据库。

注意:VisualAge for Java 版本 4.0 附带交付的 Merant DataDirect SequeLink Java 版的版本 5.1 服务器只在 Windows NT 和 Windows 2000 上受支持。

SequeLink 是一个中间件数据访问组件,它为最新的 JDBC 标准提供与各种数据库(如 Oracle、Microsoft SQL 服务器以及大型机数据)的数据连通性。SequeLink 的客户机组件独立于数据库;因此,在向基础结构添加新数据库时,不必进行更改。WebSphere Test Environment 附带包括了一个铭牌 SequeLink 客户机。

注意:因为 SequeLink 客户机具有铭牌,所以只有在将该客户机与 WebSphere Test Environment 或 Websphere Application Server 一起使用时,才能与“Merant DataDirect SequeLink Java 版的版本 5.1”服务器通信。“Merant DataDirect SequeLink Java 版的版本 5.1”服务器并不是一个已得到完全特许的服务器;除了可以将其与有铭牌的 Sequelink 客户机配合使用之外,不能用于其他用途。若您拥有的是已得到完全特许的“Merant DataDirect SequeLink Java 版的版本 5.1”服务器,则有铭牌的 Sequelink 客户机也可使用它。

可以通过执行无密钥(即,在安装它时,不会提示您输入注册密钥)安装来安装相应的 SequeLink 服务器。可以从“附加功能部件”CD 上的 Merant\SequeLinkServer 子目录安装该服务器。

根据您打算与驱动程序配合使用的组件的不同,设置和安装驱动程序应该采用的方式也有所变化。请参考以下发行注意事项以了解特定的安装和设置信息(包括关于配置 WebSphere Test Environment 附带包括的 SequeLink 客户机的信息):

Distributed Debugger

如果您打算调试任何在 VisualAge for Java IDE 外部开发的类或调试运行于独立机器上的程序,您应当安装 Distributed Debugger。

Distributed Debugger 在下列操作系统上受支持:Windows、AIX、OS/2、HP-UX、Solaris、Linux 和 Linux/390。Debugger 的所有文件都放在“附加功能部件”CD 上的 Debugger 目录中。请参考 B 部分的 2.1.1.1 一节以获取安装说明。 

技术预览

“附加功能部件”CD 包含两个“技术预览”:IBM Stored Procedure Integration Tool for Enterprise JavaBeans 和 XMI Bridge。

IBM Stored Procedure Integration Tool for Enterprise JavaBeans

可以使用 IBM Stored Procedure Integration Tool for Enterprise JavaBeans(EJB 的 SP 集成工具)来通过添加调用数据库存储过程的方法来增强无状态会话 EJB。通过使用“创建存储过程调用方法”智能向导,您可以定义您自己的方法,然后在无状态 Session Bean 中生成新方法。

通过使用 EJB 的 SP 集成工具,可以在 EJB 环境中对现存存储过程中包含的商业逻辑进行平衡。您可以将 EJB 开发工作量降至最低,并可以避免 EJB 服务器和数据库管理系统 (DBMS) 中的冗余商业逻辑。并且,因为存储过程有助于减少 EJB 服务器与 DBMS 之间的网络流量,所以可以改进产品应用程序的性能。

EJB 的 SP 集成工具位于 extras\spt 子目录中。请参考 spt 目录中的 EJB_SPTool.PDF 文件以了解更多有关安装和使用技术预览的信息。 当 EJB 的 SP 集成工具安装完毕后,EJB_SPTool.PDF 文件也将位于下列目录:x:\ibmvjava\ide\tools\com-ibm-ivj-sptools(其中 x:\ibmvjava 是产品安装目录)。

XMI bridge

XMI bridge 是 Persistence Builder 和 Enterprise Java Bean 的技术预览,它允许您将 Rational Rose 模型文件或 XMI 文档导入到 Persistence Builder 模型或“EJB 组”中。

XMI bridge 位于 extras\xmib 目录中。在可以使用 XMI bridge 之前,必须将 XMI Toolkit 添加至工作区。请参考 xmib 目录中的自述文件 (README) 以了解更多有关安装和使用技术预览的信息。

可打印文档

某些联机帮助已分组到 PDF 文档中,您可以使用 Adobe Acrobat Reader(可以从 http://www.adobe.com/ 获得)查看和打印这些 PDF 文档。并非所有 PDF 都有所有语言的版本可用。这些 PDF 文件位于 pdf 目录中。 

有关每个 PDF 文件所包含的内容的信息,请参阅《入门指南》中的“PDF 索引”。

帮助系统故障诊断指南

请参考《帮助系统故障诊断指南》以了解关于从帮助故障恢复的信息。该指南位于“附加功能部件”CD 上的 Troubleshoot 目录中,提供了所有语言的版本。

资源库和资源

ivj40 目录包含两个 zip 文件:ide.zip 和 wte_resources.zip。ide.zip 文件包含资源库的一个副本 (ivj.dat)、项目资源目录 (ivj.dat.pr) 和工作区文件 (ide.icx)。wte_resources.zip 文件包含 WTE 功能部件的项目资源的备份副本。

附录 A:数据访问组件的比较 

下面提供的是 Data Access Builder、Data Access Bean 和 Persistence Builder 的比较。包括了 EJB Development Environment 的简要描述,但此组件未包括在比较中。

Data Access Bean 功能部件提供了一种以可视方式快速访问关系数据的方法。此功能部件用来配合不需要可重用对象模型的应用程序使用。可以使用 Data Access Bean 帮助您创建需要直接查看目标数据库内的表的可视应用程序。还可以人工地将 Data Access Bean 合并到代码中。

EJB Development Environment 使您能够开发遵循 Sun Microsystems 的 Enterprise JavaBean (EJB) 编程规范的 Bean。EJB Development Environment 提供了对 IBM WebSphere Application Server 所有必需的运行时支持。增量式一致性检查器确保 Enterprise Bean 符合 EJB 编程规范并指示是否需要更改来修正不一致性。有关 EJB Development Environment 的更多信息,参考联机帮助。

Persistence Builder 提供对对象模型的可缩放持久性支持,对于许多用户而言,是面向 EJB 的第一步。使用 Persistence Builder 构建的应用程序可以将注意力集中在最优的可重用对象模型上,并可以快速将其映射至任何受支持的关系数据库。Persistence Builder 既支持自底向上(模式到对象)映射,又支持自顶向下(对象到模式)映射。此功能部件将对象以及对象之间的关系映射至存储在关系数据库中的数据。

本文档的剩余部分描述数据访问功能部件-Data Access Bean、Data Access Builder 和 Persistence Builder-之间的差异。

此处未包括每个功能部件的实现细节。联机文档阐述了 Persistence Builder 和 Data Access Bean 提供的附加功能,如关系、可视组件栏部件和高级事务能力以及“SQL 辅助程序智能向导”。

下面列示的核心功能列表呈现的是 Data Access Builder 的主要功能的概述。每个组件都采用不同的方法实现了每个核心功能。

第 1 部分:“对象到关系映射”功能部件

数据库模式到对象映射

代码生成

第 2 部分:运行时功能部件

第 3 部分:Data Access Bean 功能部件

下列各页说明了功能的实现。连续比较了所有 Data Access Builder 和 Persistence Builder 功能,而可比较的 Data Access Bean 功能(用于映射)列示在本节末尾。

第 1 部分:“对象到关系映射”功能部件

数据库模式到对象映射

1.0 使用表和视图的数据库模式到对象映射

在 Data Access Builder 中

注意:所有 Data Access Builder 步骤都必须在包括 Data Access Builder 的先前版本(3.02 或更早) VisualAge for Java 中执行。 

在“映射模式智能向导”中,选择 DB2 或 ODBC 连接,然后选择选择数据库表或视图 (Select database tables or view) 单选按钮。单击下一步 (Next)。以下页面打开,显示表的列表:

选择您想要使用的表并单击完成 (Finish)。将创建这些表与结果对象之间的一对一对象映射。Data Access Builder 窗口显示自动发生的列到属性映射。

在 Persistence Builder 中

在“模式浏览器”中,选择模式 (Schemas) > 从数据库导入模式 (Import Schema from Database)。输入连接信息。“选择表” (Select Tables) 对话框打开。

选择期望的表或视图,并单击确定 (OK)。“模式浏览器” (Schema Browsers) 现在包含该新模式,并列出它的表、列和键。

选择模式 (Schemas) > 从模式生成模型 (Generate Model from Schema)。这将生成简单的一对一商业模型。

2.0 使用定制查询的数据库模式到对象映射

在 Data Access Builder 中

在“映射模式智能向导”中,选择 DB2 或 ODBC 连接,然后选择输入 SQL 语句 (Enter SQL Statement)单选按钮。单击下一步 (Next)。选择您想要使用的表并单击下一步 (Next)。以下页面打开:

输入查询并单击完成 (Finish)。以上示例将显示一个涉及两个表的连接查询。还支持带有参数值的查询。

结果对象包含来自两个表的属性,如下所示:

在 Persistence Builder 中

可以使用 Persistence Builder 来通过以人工方式映射“模式”执行连接查询映射。
  1. 使用“模式浏览器”导入模式。
  2. 打开模型浏览器并创建表将被映射所至的对象模型。
  3. 在创建模型完成之后,打开“映射”浏览器,并创建一个新的数据仓库映射。选择已创建的模式和模型。
  4. 选择模型类,并通过选择新建表映射 (New Table Map) > 添加不带继承的群集映射 (Add Cluster Map With No Inheritance) 来添加群集映射。
  5. 要添加更多的连接表,请选择新建表映射 (New Table Map) > 添加辅助表映射 (Add secondary table map) 菜单项。在添加表之后,通过对每个表映射打开特性映射编辑器来映射个别的属性。
  6. 将每个属性映射至表列,让其他表列处于未被映射状态。“映射”浏览器将显示与第四个窗格中的每个表相对应的特性映射。

3.0 使用存储过程的数据库模式到对象映射

在 Data Access Builder 中

在“映射模式智能向导”中,选择 DB2 或 ODBC 连接,然后选择存储过程结果集 (Stored procedure result set) 单选按钮。“存储过程”页面打开,它显示了存储过程的列表。为映射输入一个名称,选择存储过程并单击完成 (Finish)

包含属性的结果对象被映射至该存储过程的结果列。没有对此类型的映射预先定义 CRUD 操作的查询或存储过程。

在 Persistence Builder 中

Persistence Builder 没有任何支持存储过程映射的工具。您可以生成一个“存根模式”,它创建框架服务类,您必须在这个框架服务类中提供支持代码。全实例方法看起来类似于:

/**
* Return a query spec for the query called allInstances
* @return java.util.Vector
*/

public java.util.Vector allInstancesQuery() {
   Vector aSpecArray = new Vector();
     DatabaseCompoundType aCompoundType;
        DatabaseQuerySpec spec = new DatabaseCallableQuerySpec("{call getAllEmp ()}");
      aCompoundType = new DatabaseCompoundType();
        aCompoundType.addField((DatabaseTypeField)(new                              com.ibm.ivj.db.base.DatabaseDecimalField("COMM")).setAttributes(9,2,3,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseIntegerField("EMPNO")).setAttributes(4,0,4,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseDecimalField("SAL")).setAttributes(9,2,3,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseIntegerField("DEPTNO")).setAttributes(2,0,4,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseStringField("ENAME")).setAttributes(10,0,12,false));

((DatabaseSelectQuerySpec)spec).setOutputShape(aCompoundType);

aSpecArray.addElement(spec);
return aSpecArray;
}

代码生成

 

4.0 对对象的 CRUD 操作

Data Access Builder

基本的 CRUD 操作(创建、检索、更新和删除)是使用一个表到一个对象的映射自动生成的。如果使用定制查询或存储过程,则这些查询会丢失,您必须使用“Data Access Builder 工具”人工定义查询。其中一个示例是定义 Customer 的连接查询。

  1. 在 Data Access Builder 窗口中,从一个 Bean 的弹出菜单中选择方法 (Methods)。添加一个名为 addCustomer1 的新方法。
  2. 输入以下 SQL 语句:

INSERT INTO TPF.CUSTOMER (
CUSNO,
FIRSTNAME,
MIDINIT,
LASTNAME,
HOMEPHONE,
HOMEADDR,
WORKPHONE,
BILLADDR,
BRANCHNO,
OPEN DATE)
VALUES (?, ?, ?, ?, ?, ?, ?,?, ? ,?)

在 Data Access Builder 验证查询之后,您必须使用“参数”页面个别地映射参数。

为了插入第二个连接表 CUSTDATA,还需要定义查询 addCustomer2。这个原子函数的两个查询的同步由用户处理。

Persistence Builder

当在已定义的模式和模型之间创建了映射之后,Persistence Builder 将生成所有 CRUD 操作。如果是多表连接,则生成每个表查询,服务引擎以原子单元形式管理这些操作。

在这些工具中,尚不支持“存储过程”,但可以生成和扩展“存根模式”。下面是插入存储过程查询的一个示例。

/**
*Return a query spec for the query called insert
* @return java.util.Vector
* @param args java.util.Vector
* @param anInjector com.ibm.vap.Persistence.BOInjector 

public java.util.Vector insertQuery(java.util.Vector args,com.ibm.vap.Persistence.BOInjector anInjector) {
    Vector aSpecArray = new Vector();
DatabaseCompoundType aCompoundType;
   

 DatabaseQuerySpec spec = new DatabaseCallableQuerySpec("{call     

    insertEmp (?,?,?,?)}");

Vector stringArgs;
a CompoundType = new DatabaseCompoundType();

aCompoundType.addField((DatabaseTypeField)(new         com.ibm.ivj.db.base.DatabaseIntegerField("EMPNO")).setAttributes(4,0,4,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseDecimalField("SAL")).setAttributes(9,2,3,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseIntegerField("DEPTNO")).setAttributes(2,0,4,false));

aCompoundType.addField((DatabaseTypeField)(new com.ibm.ivj.db.base.DatabaseStringField("ENAME")).setAttributes(10,0,12,false));

StringArgs = new Vector();
stringArgs.addElement("EMPNO");
stringArgs.addElement("SAL");
stringArgs.addElement("DEPTNO");
stringArgs.addElement("ENAME");

spec.setInputShape(aCompoundType);
spec.setInputValues(args);
spec.setInputNamesWithDuplicates(stringArgs);
   aSpecArray.addElement(spec);
        return aSpecArray;

5.0 定制查询支持

在 Data Access Builder 中

在 Data Access Builder 中,定制查询的定义方式与定义 CRUD 查询方式相同。用户添加命名查询,并使用参数页面(如有必要的话)。结果查询将作为 BusinessObjectMgr 类中的一个方法出现。

Data Access Builder 还提供了其他方法来定义定制查询,如“SQL 谓词”替代。

TheEmpMgr.select('WHERE WORKDEPT = 'E11');

在 Persistence Builder 中

在 Persistence Builder 中添加定制查询时,您有两个选择。可以使用类编辑器在类级别定义 Lite Collections。以下页面用来对指定的类执行搜索和过滤。

Lite Collections 查询通常在用来“下寻”适当商业对象的搜索列表或对话框中使用。结果方法返回“数据对象”的向量,这些“数据对象”可用来检索相对应的持久商业对象。

下面是使用生成的 Lite Collections (如上所示)的代码示例:

VapCourseHomeImpl aHome = VapCourseHomeImpl.singleton();
    VapDepartmentKey aKey = new VapDepartmentKey("Sales"); 
VapLiteCollection liteCollection = aHome.getByDepartmentLiteCollection(aKey); 

Enumeration enum = liteCollection.elements();
VapCourseDataObject aDO;
VapCourse aCourse; 

while (enum.hasMoreElements()) {

    aDO = (VapCourseDataObject)enum.nextElement(); 
   aCourse = aHome.find(aDO.getNumber()); 
   //Fetching fully hydrated EJBObject
   }

Persistence Builder 还提供了一个定制查询框架,它可用来定义对商业类执行的各种操作。这些查询将返回全功能的“商业对象”。

下面是一个带有定制查询 "retrieveStudentsOver21" 的 student 类的示例。student 的主类带有以下方法:

public Vector retrieveStudentsOver21() throws java.rmi.RemoteException,     
com.ibm.vap.common.VapReadFailureException {
    return customQuery("studentsOver21Query");
}

student 的 QueryPool 包含相应的用于定制服务的方法:

/* Return a query spec for the query called studentsOver21
 @return java.util.Vector */

public java.util.Vector studentsOver21Query() {
   
Vector aSpecArray = new Vector();
    aSpecArray.addElement(new DatabaseSelectQuerySpec(studentsOver21SqlString()));
          return aSpecArray;

}

/* Return the SQL string for the query called studentsOver21Query
  @return java.lang.String */

public java.lang.String studentsOver21SqlString() {

return "SELECT T1.SNAME, T1.SNO, T1.SADVFNO, T1.SBDATE, T1.SADDR, T1.SPHNO, T1.SMAJ, T1.SIQ FROM SPARKY.STUDENT T1 WHERE T1.SBDATE <= (CURRENT DATE-00210000.)";
}

此方法从主类开始执行,它具有与全实例方法相类型的对象高速缓存行为。有关此方法的更多信息,请参考 Persistence Builder 联机帮助。

第 2 部分:运行时功能部件

1.0 数据仓库M事务能力

在 Data Access Builder 中

Data Access Builder 中的数据仓库可以在许多应用程序级别配置:

“Data Access Builder 数据仓库”具有平面事务模型,换句话说,如果有多个事务需要应用商业功能,则需要激活表示每个事务的数据仓库。

这里是带有 Employee 和 Department 模型的简单方案:

EmployeeDatastore anEmpDS = new EmployeeDatastore().connect();
DepartmentDatastore aDeptDS = new DepartmentDatastore().connect();

Employee anEmp = new Employee();
Department aDept = new Department();

// Perform actions on anEmp and aDept

if (User Applied Employee Changes)
anEmpDS.commit()
else
anEmpDS.rollback();
aDeptDS.commit();

Persistence Builder

在 VisualAge for Java 版本 4.0 中,Persistence Builder 可以选择使用“WebSphere 连接池”,即使用 JNDI 名来查找“数据源”。在生成服务类时,可以选择此选项。

仅当使用不同的数据库来访问模型数据时,Persistence Builder 中才需要多个数据仓库。对每个数据仓库支持多重嵌套事务。与在 Data Access Builder 中一样,事务不是隐含的。用户事务由在应用程序商业对象上具有视图的事务对象控制。

这里是显示 Data Access Builder 示例中的相同事务能力的代码片段。

DB2Datastore aDS = DB2Datastore.singleton().activate();
Transaction empTransaction = Transaction.begin();
Employee anEmp = EmployeeHomeImpl.create("EmpNum1");
Transaction deptTransaction = Transaction.begin();
Department aDept = DepartmentHomeImpl.create("DeptNum1");

// Do some actions on anEmp and aDept, always resuming the appropriate transaction before making changes to the corresponding BO.

if (User Applied Employee Changes)
   
empTransaction.commit();
else
    empTransaction.rollback();
deptTransaction.commit();

重要的是要注意,在 Persistence Builder 中,在提交事务之前,不执行 SQL。在发生显式的回滚或提交之前,对象事务状态以内部方式维护。

2.0 API 支持

在这三个框架之间,在结果商业对象上生成的方法及其伴随着的管理对象略有不同。下表显示了用于每种功能的类和方法。

 

Data Access Builder

Persistence Builder

Data Access Bean

创建

aBusinessObject.add();

aBusinessObjectHome.create();

aSelectBean.newRow();

检索

aBusinessObject.retrieve();

aBusinessObjectHome.find (aKey);

aSelectBean.setParameter
("ColumnName", value);
aSelectBean.execute();
检索全部 aBusinessObjectMgr.select(); aBusinessObjectHome.allInstances(); aSelectBean.execute();
更新 aBusinessObject.update(); (*) 不支持
删除 aBusinessObject.delete(); aBusinessObject.remove(); 不支持
删除当前 aBusinessObject.deleteCurrent(); 不支持 (**) aSelectBean.deleteRow();
更新当前 aBusinessObject.updateCurrent(); 不支持 (**) aSelectBean.updateRow();
提交 aBusinessObjectDS.commit(); currentTransaction.commit(); aSelectBean.commit();
回滚 aBusinessObjectDS.rollback(); currentTransaction.rollback(); aSelectBean.rollback();
激活 aBusinessObjectDS.connect(); aDataStore.activate(); aSelectBean.connect();
复位 ABusinessObjectDS.disconnect(); aDataStore.reset(); aSelectBean.disconnect();

代码示例:查找雇员,并改变电话号码

Employee anEmp = 
new Employee();
anEmp.setEmpno
("000130");
anEmp.retrieve();
anEmp.setPhoneno
("555-9988");
anEmp.update();
anEmp.getDefault
Datastore().
commit();

EmployeeHome aHome = EmployeeHome.singleton();

Employee anEmp = 
aHome.find("000130");

anEmp.setPhoneno("555-9988");
Transaction.
getCurrent().commit();

检索所有雇员:

aSelectBean.execute();

positionToEmployee
("000130"); 
// User written method
// to position to 
//correct row

aSelectBean.
setColumnValue
("PhoneNo", "555-9988");

aSelectBean.updateRow();

aSelectBean.commit();
// If connection is not
//autoCommit=true

检索只带有一个
雇员行的结果集。

aSelectBean.setParameter
("EmployeeID", "000130");
aSelectBean.execute();
aSelectBean.setColumnValue
("PhoneNo", "555-9988");
aSelectBean.updateRow();

aSelectBean.commit();
// If connection is not 
//autoCommit=true

(*) 通过改变商业对象上的值暗示更新操作,如果提交活动事务,则通过发出适当的更新语句使更改与数据仓库同步。

(**)“光标支持”一节显示了备用的解决方案。

LOB 支持

Data Access Builder

Persistence Builder

Data Access Bean

Data Access Builder 包含一个名为 DAIOStream 的类,它可以用来从数据库中检索 LOB,而不必将整个对象装入内存。

Persistence Builder 目前不支持流 LOB。将 LOB 对象装入内存。

DAB 支持 JDBC 2.0 LOB 数据类型。如果是使用 JDBC 2.0 驱动程序来检索 LOB,则您可以选择将整个 LOB 检索到内存中,或仅仅检索 LOB 位置。

 

3.0 快速表单(RAD 功能部件)

Data Access Builder

Persistence Builder

Data Access Bean

Data Access Builder 的快速表单功能部件提供快速样本视图,它使用流行的 AWT 部件来呈示提供的模型。

VCE 上的可视部件集合用来帮助降低可视编程的复杂程度。这些部件呈示的是事务类,它们帮助用户以可视方式分隔工作单元。

版本 4.0 包含一个“数据库应用程序向导”,它会生成使用 Swing 组件来呈示 Select Bean 获取的表列的应用程序。您也可以使用 VCE 的标准“快速表单”功能来根据 Select Bean 的特性快速创建定制 UI。

4.0 当前日期/时间/时间戳记支持

Data Access Builder 工具允许用户对日期/时间数据类型指定 "current",这将生成适当的 SQL。Persistence Builder 和 Data Access Bean 在它们的工具中不支持这一点,但可以人工方式添加 SQL。

5.0 光标支持

Data Access Builder 支持对结果集执行光标功能,如 updateCurrent()deleteCurrent()

Persistence Builder 目前不支持这些操作。在这种情况下,一种好的备用方法是使用 Data Access Bean 功能部件。

Data Access Bean 支持具有 DBNavigator 可视部件来管理光标位置的光标函数。下面是所有光标功能的描述:

JDBC v1.0 不支持在 JDBC 结果集中向后滚动。Select Bean 维护结果集的一个高速缓存,这允许您滚动结果集以及直接访问特定的行。Select Bean 具有允许您控制高速缓存大小的特性。可以将整个结果集访存到高速缓存中(这是缺省情况),也可以每次访存一个信息包到高速缓存中。信息包的大小和数目由用户控制。

在获取结果集之后,Select Bean 便提供用来在结果集中更新、删除或插入行的方法。用户不必编写任何新的 SQL 便可执行这些功能。

6.0 异步执行

Data Access Builder 通过在它生成的类上提供可运行的接口,支持异步操作。

Persistence Builder 还为每个 CRUD 操作提供了可运行的接口,并为定制查询提供了一个此接口。每个商业类的服务对象都带有 runAsynch() 方法,此方法确定该类的执行类型。

Data Access Bean 通过 DBNavigator 工具支持异步执行,该工具产生 "DBAction" 可运行实例。

并行性问题(锁定/隔离级别)

Data Access Builder 具有 API,可用来为生成的数据仓库类 setTransactionIsolation(int) 设置数据库隔离级别。

Persistence Builder 维护它自己的事务,并以内部方式支持下列隔离级别。

“事务”指定“可重复读取”或“不可重复读取”隔离级别。“商业类”的服务实现指定不锁定或锁定实现。请参考 Persistence Builder 联机帮助,以获取关于各个级别之间的差异的更多详细信息。

Data Access Bean 具有用于设置数据库隔离级别的 API。您可以在通过定制特性编辑器或通过 DatabaseConnection.setTransactionIsolation() 方法提供连接信息时指定期望的隔离级别来做到这一点。

第 3 部分:Data Access Bean (DAB) 功能部件

DAB 的映射是在表和 Select Bean 之间进行的。表和 Select Bean 之间的映射不是一对一的, 因此该 Select Bean 不表示该表。但是, Select Bean 在与当前行和结果集配合使用时是非常有用的。您可以创建一个和两个 Select Bean,可以使用这些 Select Bean 来对一个表执行基本的数据库编程操作。因此,如果您将 DAX 以一种简单、直接的方式用于查询、读取、写入、更新和删除之类的数据库操作,则 DAB 可以是 DAX 的优良替代。

您可以通过设置 Select Bean 的 query 特性(它由连接信息和“SQL 查询”信息组成)与数据库交互。query 特性中包含的连接信息可以由多个 Select Bean 使用。可以使用“可视化组合编辑器”将 Select Bean 以可视方式合并到代码中,也可以人工完成此操作。

下面是有关如何创建 Select Bean 来使用客户表的当前行的一般概述。请参考联机帮助,以获取有关如何执行这些步骤的更多详细信息:

  1. 在 VCE 中打开一个类,创建一个 Select Bean,并打开“查询特性”编辑器。  
  2. 输入必需的连接信息并生成一个数据库访问类。
  3. 指定“数据库访问”类。打开“SQL 辅助程序智能向导”(SQL Assist SmartGuide)。

  4. 如果选择该客户表并指定这样的条件: 客户号 (cusno) 与参数 CUSTNUM 完全相等, 则会为该客户生成一个 Select Bean。此 Select Bean 的 Database Access 类将类似如下所示:

借助这个 Select Bean,可以对客户表中的一行(当指定了客户号时)执行基本的数据库操作(读取、写入、更新和删除)。  

创建第二个 Select Bean

可通过遵循同一过程且不指定任何条件来创建另一个 Select Bean, 以与结果集配合使用(即,执行数据库查询)。辅助 Select Bean 将允许您利用 DAB 结果集的功能。此 Select Bean 的 Database Access 类将类似如下所示:

Select Bean 和定制查询

DAB 对创建使用定制查询的 Select Bean 提供了强大的支持。如下所示,“SQL 辅助程序智能向导”(SQL Assist SmartGuide) 可以帮助您创建连接查询、对查询指定条件、选择列、排序列和映射字段。

Data Access Bean存储过程

Procedure Call Bean 允许您使用存储过程。创建 Procedure Call Bean 与创建 Select Bean 非常类似。存储过程的“智能向导”列出了可用的存储过程,如下所示。

有关使用“过程调用”Bean 的更多信息,参考 Data Access Bean 联机帮助。

版权及声明

(C)Copyright IBM Corp.1997, 2001. All Rights Reserved.

美国政府用户限定权利声明-使用、复制或泄露都要受到与 IBM 公司签署的 GSA ADP 附加协议所规定条款的限制。

本资料是为在美国提供的产品和服务开发的。IBM 可能不会在其他国家或地区提供本文档中讨论的产品、服务或功能。请向您当地的 IBM 代表咨询,以获取关于当前在您的地区可以得到的产品和服务的信息。任何对 IBM 产品、程序或服务的引用并不明示或默示只能使用 IBM 的产品、程序或服务。只要不侵犯 IBM 的知识产权,任何同等功能的产品、程序或服务,都可以用来代替 IBM 产品、程序或服务。然而,评估和验证任何非 IBM 产品、程序或服务均由用户自行负责。

以下段落不适用于联合王国或该条款与当地法律不一致的任何国家或地区:

国际商业机器公司以“仅此状态”的基础提供此出版物,不附有任何形式的(无论是明示的还是默示的)保证,包括(但不限于)不侵犯、适销性或适用于某特定用途的默示保证或条件。 一些国家或地区不允许否认某些事务中的明示或默示保证,因此,此声明可能不适用于您。本资料可能会包含技术错误或印刷错误。此处的信息会定期得到更改;这些更改将编入本出版物的新版本中。IBM 可能随时对此出版物中描述的产品和/或程序进行改进和/或更改,而不另行通知。

在此信息中对非 IBM Web 站点的任何引用仅是出于方便起见,不以任何方式提供对这些 Web 站点的保证。

这些 Web 站点中的资料不是此 IBM 产品资料的一部分,使用这些 Web 站点时风险自负。IBM 对于您以任何方式提供的任何信息,有权利以任何它认为适当的方式使用或分发,而不必对您负任何责任。本文档中描述的许可程序和它可用的全部许可证材料均由 IBM 根据“IBM 客户协议”、“IBM 国际程序许可证协议”或任何与客户之间的等效协议中的条款提供。

IBM、AIX、AS/400、DB2、OS/390、OS/400、RS/6000、S/390、VisualAge 和 WebSphere 是 IBM 公司在美国和/或其他国家或地区的商标。

Lotus、Lotus Notes 和 Domino 是莲花软件有限公司在美国和/或其他国家或地区的商标。Java 和所有基于 Java 的商标和徽标是 Sun 公司在美国和/或其他国家或地区的商标。Microsoft、Windows 和 Windows NT 是微软公司在美国和/或其他国家或地区的商标。Intel 和 Pentium 是英特尔公司在美国和/或其他国家或地区的商标。其他公司、产品和服务名称可能是其他公司的商标或服务标记。