JVM 服务器运行时环境
JVM 服务器 是一个运行时环境,可以在单个 JVM 中处理针对不同 Java™ 应用程序的许多并发请求。 您可以使用 JVM 服务器在 OSGi 框架中运行线程安全的 Java 应用程序,在 Liberty 概要文件中运行 Web 应用程序,并在 Axis2 Web Service 引擎中处理 Web Service 请求。
JVM 服务器由 JVMSERVER 资源表示。 在启用 JVMSERVER 资源时, CICS® 从 MVS™请求存储器,设置 Language Environment ® 相关可调度单元组,并在相关可调度单元组中启动 64 位 JVM。 CICS 使用在 JVMSERVER 资源上指定的 JVM 概要文件来创建具有正确选项的 JVM。 在此概要文件中,可以指定 JVM 选项和系统属性,并添加本机库; 例如,可以添加本机库以从 Java 应用程序访问 DB2® 或 IBM® MQ 。
使用 JVM 服务器的优势之一在于您可以针对同一 JVM 中的不同应用程序运行许多请求。 在下图中,三个应用程序正在使用不同的访问方法同时调用 CICS 区域中的三个 Java 程序。 每个 Java 程序都在同一 JVM 服务器中运行。

Java 应用程序
要在 JVM 服务器中运行 Java 应用程序,它必须是线程安全的,并且打包为 CICS 束中的一个或多个 OSGi 束。 JVM 服务器实施您可以在其中运行 OSGi 捆绑软件和服务的 OSGi 框架。 OSGi 框架注册服务并管理捆绑软件之间的依赖关系和版本。 OSGi 处理框架中的所有类路径管理,因此您可以在不停止和重新启动 JVM 服务器的情况下添加,更新和除去 Java 应用程序。
使用 OSGi 打包的 Java 应用程序的部署单元是 CICS 束。 BUNDLE 资源向 CICS 表示应用程序,您可以使用该资源来管理应用程序的生命周期。 IBM CICS SDK for Java 支持将 CICS 束项目中的 OSGi 束部署到 zFS。
要从 OSGi 框架外部访问 Java 应用程序,请使用 PROGRAM 资源来标识运行应用程序的 JVM 服务器以及 OSGi 服务的名称。 OSGi 服务指向 CICS 主类。
有关在 JVM 服务器中使用 OSGi 框架的更多信息,请参阅 符合 OSGi 的 Java 应用程序。
Java Web 应用程序
除了在 OSGi 框架中运行 Java 应用程序外, JVM 服务器还支持运行 WebSphere® Application Server Liberty。 Liberty 是用于运行 Web 应用程序的轻量级应用程序服务器。 Web 应用程序可以使用 JCICS 来访问 CICS中的资源和服务,以及访问 DB2中的数据。 在 Liberty 中运行的应用程序可通过 z/OS® 中的 TCP/IP 套接字层进行访问,而不是通过 CICS中的 Web 支持进行访问。

Java Web 应用程序可以遵循 Liberty 模型进行部署,其中开发者可以将 Web 归档 (WAR) 文件或 企业应用程序归档 (EAR) 文件 直接部署到 Liberty 的混入目录中,或者使用创建 CICS 束的 CICS 应用程序模型。 CICS 束提供生命周期管理,并且可以将包含许多组件 (包括 OSGi 束和 WAR 文件) 的应用程序打包在一起。
要从 Web 应用程序访问 OSGi 捆绑软件,您必须将应用程序部署为企业捆绑软件归档 (EBA) 文件。 要开发 EBA ,可以使用 Rational® Application Developer,也可以使用 Eclipse IDE, IBM CICS SDK for Java和 WebSphere Application Server Developer Tools for Eclipse的组合。 后一组工具可供自由使用,但除了 IBM CICS SDK for Java之外, IBM 支持不可用于这些工具。
有关使用 Liberty 的更多信息,请参阅 Liberty JVM 服务器中的 Java 应用程序。
Web service
您可以使用 JVM 服务器针对 Web Service 请求者和提供者应用程序运行 SOAP 处理。 如果管道使用基于 Java 的 SOAP 引擎 Axis2,那么将在 JVM 服务器中进行 SOAP 处理。 针对 Web Service 使用 JVM 服务器的优势在于您可以将工作转移到 zAAP 处理器上。
有关将 JVM 服务器用于 Web Service 的更多信息,请参阅 Java Web Service。