本章描述已知的文档问题。
自本文档在 Solaris 9 Documentation CD 和 Solaris 9 Installation CD 的安装 Kiosk 上发布以来,本章增加了以下文档问题。
LDAP 软件包 SUNWlldap 没有包含在《Solaris 9 Package List》的“Solaris 9 Operating Environment Package List”中。SUNWlldap 软件包包含在 Solaris 9 操作环境中,同时也包含在 Core、End User、Developer、Entire 以及 Entire+OEM 元群集中。
按照 sysidcfg(4) 手册页与 Solaris 9 12/02 Release and Installation Collection - zh 中的说明,只使用一个 IPv4 地址作为 sysidcfg 文件中 default_route 关键字的值,但是,您也可以使用 NONE 作为 default_route 关键字的值。
在 Solaris CIM 架构中,以下类和特性使用 Deprecated 限定符进行标记。
Solaris_LogRecord 类
Solaris_LogService 类
Solaris_LogServiceSetting 类
Solaris_LogServiceSetting 类
Solaris_IPProtocolEndpoint 类中的 OptionsEnabled 特性
对于这些过时的类和特性,请使用合适的替代类和特性。请参见类说明限定符,以确定正确的替代类和特性。
“Writing a Client Program”介绍有关创建使用 RMI 协议和 javax.com.sun.client API 的 WBEM 客户程序的信息。如果希望连接到运行 Solaris 8 操作环境的服务器,客户机 CLASSPATH 中必须包含 /usr/sadm/lib/wbem/cimapi.jar 文件。cimapi.jar 文件包括与运行 Solaris 8 操作环境的服务器进行通信所需的 com.sun.wbem 类。
此文档介绍如何使用索引的部署目录。
部署应用程序的目录名称的编号机制部分已经作为索引机制实现。此机制使得开发者能够修改与部署的应用程序关联的 JAR 或类文件,这对于 Windows 平台来说非常重要,因为 Windows 会为已加载的文件加上文件锁,因此如果试图覆写某个已加载的文件,就会发生共享冲突错误。在会话启动过程中,该文件会装入到服务器实例或 IDE 中。如果发生共享冲突错误,有两个选择:
编译更新后的类文件(原来是 JAR 文件的一部分)并将其放在类路径中的开始位置,使得在加载其他旧类之前先加载该文件。然后让 Sun ONE Application Server 重新装入此应用程序(只要可以重新装入)。
更新 JAR 文件、创建新的 EAR 文件并重新部署应用程序。
由于 Solaris 平台上没有文件锁定限制,因此不需要在此平台上重新部署应用程序。
如果由于 IDE 设置、ANT 文件复制、编译或其他操作而需要更改 Windows 平台上已经部署的应用程序,请注意另一个变化:会创建一个带有递增索引编号的新目录,以解决文件锁定约束。例如,在 Solaris 平台上,J2EE 应用程序 helloworld 按照以下目录结构部署至 Sun ONE Application Server:
appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_1
然后对这个部署的应用程序的某个 servlet(例如 HelloServlet.java)进行更改。Sun ONE Studio IDE 将启动,此 servlet 的源代码文件被更改和编译,并且 javac 目标被设置为上述目录。在正确的位置编译源代码后,此应用程序就会得到一个可重新装入的文件。server.xml 中的重新装入标记将被设置为 true,如果服务器实例在运行,那么不用重新汇编应用程序和重新部署,更改就会生效。
对于 Windows 平台,由于文件锁定问题,无法更改和更新 JAR 或类文件。因此,需要使用以下两种方法之一来解决此 Windows 问题:
编译已更改的源代码文件,并在类路径中前置类文件或 JAR,以使源代码更改生效。
更改 helloworld 源代码,进行汇编,然后重新部署(不必取消原来的 helloworld 部署)。
第二种选择是首选方法,因为它将使用递增的索引编号,并将其附加到已部署应用程序的目录名中。第二次部署 helloworld 后,目录结构将具有以下形式:
appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_1
appserv/domains/domain1/server1/applications/j2ee-apps/helloworld_2
helloworld 的第二次部署将部署在 helloworld_2下。