运行 IBM Thin Client for Enterprise JavaBeans (EJB)

EJB 客户机是基于因特网 ORB 间协议 (RMI-IIOP) Java™ Platform , Standard Edition (Java SE) 应用程序的远程方法调用,该应用程序通过 Java 命名和目录接口 (JNDI) 查找从服务器访问远程 Enterprise Java Bean。 IBM® Thin Client for EJB 提供更小的占用量,并且易于部署到 Java SE 环境和 Eclipse 富客户机平台 (RCP) 环境。 您可以使用 WebSphere® Application Server 安装或 Application Client for WebSphere Application Server 安装与应用程序一起捆绑 IBM Thin Client for EJB 库。 IBM Thin Client for EJB 还扩展了 Java SE 运行时选项。 它可以在随 WebSphere Application Server 产品一起打包的 Java 运行时环境 (JRE) ,从 Oracle Web 站点下载的 JRE 或从 HP Web 站点下载的 JRE 中运行。

准备工作

[AIX Solaris HP-UX Linux Windows][IBM i]如果 IBM Thin Client for EJB 与非IBM 产品平台上的非IBM 产品 JRE 一起运行,那么需要 IBM ORB 实现库。 例如,在 Windows , Linux®或 Solaris 上使用 Sun Microsystems JRE 以及在 HP-UX上使用 HP JRE 运行 IBM Thin Client for EJB。 IBM 提供的 Solaris 混合 JRE 以及 HP 混合 JRE 不会被视为非 IBM 产品 JRE 环境。

IBM Thin Client for EJB 可以使用 JNDI 查询来访问 WebSphere Application Server 上的 V 2.x 和 V 3.x EJB ,但它无法通过资源注入来访问 V 3.x EJB。 如果客户机应用程序是在 Java Platform, Enterprise Edition (Java EE) 应用程序客户机容器中运行的 Java Platform, Enterprise Edition (Java EE) 应用程序客户机,那么支持资源注入。

在设置 EJB 瘦客户机环境之前,请获取 EJB 瘦客户机 for WebSphere Application Server的 Java 归档 (JAR) 文件。 要获取 EJB Thin Client for WebSphere Application Server,请安装 WebSphere Application Server 或 Application Client。 EJB Thin Client for WebSphere Application Server 文件 [AIX Solaris HP-UX Linux Windows][IBM i]com.ibm.ws.ejb.thinclient_9.0.jar位于 app_server_root\runtimes 目录中。 [AIX Solaris HP-UX Linux Windows][IBM i]com.ibm.ws.ejb.thinclient.jar 用于在分布式平台上运行的任何客户机。 应根据客户机平台而不是您要连接至的服务器的平台来确定要使用的客户机。

将 IBM Thin Client for EJB with WebSphere Application Server 产品的 Java 归档 (JAR) 文件 [AIX Solaris HP-UX Linux Windows][IBM i]com.ibm.ws.ejb.thinclient_9.0.jarendorsed_apis_9.0.jar 文件复制到其他机器,以创建支持与这些产品进行通信的轻量级客户机环境。 IBM Thin Client for EJB 的副本受您在其中获取 Thin Client for EJB 的 WebSphere 产品的许可协议的相同条款和条件的约束。 请参阅许可协议以了解正确的用法及其他局限性。

app_server_root\runtimes\endorsed\endorsed_apis_9.0.jar 文件复制到缺省目录 JAVA_JRE\lib\endorsed中。 或者,可使用 java.endorsed.dirs 属性以指定您选择的目录。 如果选择使用备用目录,那么最好只包括 endorsed_apis JAR 文件。

[AIX Solaris HP-UX Linux Windows][IBM i] IBM Thin Client for EJB with WebSphere Application Server 在具有 JDK 支持的分布式操作系统上运行。 将 IBM Thin Client for EJB 用作具有非IBM 产品 JRE 的独立 Java SE 应用程序时,必须通过下列其中一种方法覆盖 JRE 的缺省 ORB 实现:
  • 将 com.ibm.ws.orb_9.0.jar 文件包含在 Java 系统类路径中。
  • 使用 Java 认可标准覆盖机制覆盖 JRE 中的缺省 ORB 实现。
  • 将 java.endorsed.dirs 路径设置为包含 com.ibm.ws.orb_9.0.jar 文件的目录。
将 IBM Thin Client for EJB 作为 Eclipse RCP 应用程序运行时,建议使用方法 2 来覆盖缺省 JRE ORB 实现。
请注意: 运行 IBM Thin Client for EJB 时,如果使用了 -Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager 命令行选项,则会出现 ClassDefNotFoundError 错误。 IBM Thin Client for EJB 不支持使用 WsLogManager ,但可以使用其他 Java 日志管理器。

有关此任务

通过完成以下步骤,运行 IBM Thin Client for EJB。

过程

  1. 调用客户机应用程序。
    运行以下 Java 命令:
    [Windows]
    <java_install_root>\bin\java  
    -classpath com.ibm.ws.ejb.thinclient_9.0.jar;<list_of_your_application_jars_and_classes> 
    -Djava.naming.provider.url=iiop://<your_application_server_machine_name>
    <fully_qualified_class_name_to_run>
    如果要启用认证和 SSL ,请向 Java 命令添加以下系统属性:[Linux][AIX][HP-UX][Solaris]
    <java_install_root>/bin/java  
    -classpath com.ibm.ws.ejb.thinclient_9.0.jar:<list_of_your_application_jars_and_classes> 
    -Djava.naming.provider.url=iiop://<your_application_server_machine_name> 
    -Dcom.ibm.SSL.ConfigURL=file:///home/user1/ssl.client.props
    -Dcom.ibm.CORBA.ConfigURL=file:///home/user1/sas.client.props
    <fully_qualified_class_name_to_run>

  2. 提供 IIOP 认证配置和客户机 SSL 配置。
    将以下系统属性添加到 Java 命令:
    -Dcom.ibm.SSL.ConfigURL=file:///home/user1/ssl.client.props
    -Dcom.ibm.CORBA.ConfigURL=file:///home/user1/sas.client.props
    您可以从 WebSphere Application Server 安装获取 ssl.client.props 文件和 sas.client.props 文件,并修改该文件以适合您的环境。 您必须至少在 ssl.client.props 文件中更新密钥文件的位置,以使其与目标环境的位置匹配。 例如
    -Dcom.ibm.ssl.keyStore=/home/user1/etc/key.p12 
    -Dcom.ibm.ssl.trustStore=/home/user1/etc/trust.p12
    [AIX Solaris HP-UX Linux Windows][IBM i]使用非IBM 产品 JRE 运行应用程序时建议的 SSL 配置设置:
    com.ibm.ssl.protocol=SSL
    com.ibm.ssl.trustManager=SunX509
    com.ibm.ssl.keyManager=SunX509
    com.ibm.ssl.contextProvider=SunJSSE
    
    com.ibm.ssl.keyStoreType=JKS
    com.ibm.ssl.keyStoreProvider=SUN
    com.ibm.ssl.keyStore=/home/user1/etc/key.jks
    
    com.ibm.ssl.trustStoreType=JKS
    com.ibm.ssl.trustStoreProvider=SUN
    com.ibm.ssl.trustStore=/home/user1/etc/trust.jks

    [AIX Solaris HP-UX Linux Windows][IBM i]在应用程序运行之前,必须使用 Java keytool 实用程序创建密钥库文件和信任库文件。 不支持使用非 IBM 产品的 JRE 来生成自动密钥文件。

    [AIX Solaris HP-UX Linux Windows][IBM i]必须使用 com.ibm.ws.orb_9.0.jar 文件覆盖非IBM 产品 JRE 的缺省 ORB 实现,或者将其添加到类路径。

  3. 运行客户机应用程序:
    • 如果已将 endorsed_apis_9.0.jar 文件复制到 JAVA_JRE\lib\endorsed 缺省目录中,请输入以下命令; 例如:
      [Windows]
      %JAVA_HOME%\bin\java -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <your_client_application>
      [Linux][AIX][HP-UX][IBM i][Solaris]
      $JAVA_HOME/bin/java -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>
    • 如果已将 endorsed_apis_9.0.jar 文件复制到非缺省 JAVA_JRE\lib\endorsed 目录中,请输入以下命令; 例如:
      [Windows]
      %JAVA_HOME%\bin\java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_9.0.jar> 
      -Dcom.ibm.SSL.ConfigURL=file:\\\home\sample\ssl.client.props <your_client_application>
      [Linux][AIX][HP-UX][IBM i][Solaris]
      $JAVA_HOME/bin/java 
      -Djava.endorsed.dirs=<directory_that_includes_endorsed_apis_9.0.jar>
      -Dcom.ibm.SSL.ConfigURL=file:///home/sample/ssl.client.props <your_client_application>

下一步做什么?

要启用跟踪,请参阅有关在客户机和独立应用程序上启用跟踪的主题。