CICS y Java

CICS® proporciona las herramientas y el entorno de ejecución para desarrollar y ejecutar aplicaciones empresariales Java™ en una máquina virtual Java (JVM) que está bajo el control de una región CICS . Las aplicaciones Java pueden interaccionar con servicios y aplicaciones CICS escritas en otro lenguaje.

CICS proporciona un entorno de ejecución de servidor JVM para el desarrollo de aplicaciones Java. Puede desarrollar, crear y desplegar aplicaciones utilizando los módulos IBM® CICS SDK for Java, Gradle o Maven.

IBM Semeru Runtime Certified Edition for z/OS Java 11 Java 17 Java 21

Java en z/OS® proporciona un soporte completo para ejecutar aplicaciones Java. CICS utiliza la versión IBM Semeru Runtime Certified Edition for z/OS Versión 11.0.17.0, Versión 17.0.7.0 o Versión 21.0.4.0 como nivel de lanzamiento mínimo. Algunas características de Liberty requieren versiones Java específicas, y estas se llaman en características de Liberty. Además, si alguna de las aplicaciones realiza una llamada RMI, debe asegurarse de que tiene el mismo nivel de Java en el cliente y en el tiempo de ejecución.

La Edición Certificada contiene un Java Runtime Environment que da soporte al conjunto completo de API de Java y a un conjunto de herramientas de desarrollo. En Java 11, Java 17 y Java 21, el JRE base es diferente del JRE de Java 8. Aunque el código de bytes de Java 8 puede ejecutarse en versiones posteriores de Java, vale la pena revisar las aplicaciones.

Para permitir la depuración remota de un tiempo de ejecución de Java 11, Java 17 o Java 21 (JVM), se ha modificado la sintaxis. La propiedad agentlib requiere ahora un hostname:portexplícito. Especificar el puerto por sí solo ya no es suficiente para conectarse correctamente y depurar un tiempo de ejecución de Java 11, Java 17 o Java 21.

Debe descargar la versión Java 11, Java 17 y Java 21 del archivo JZOS jar si sus aplicaciones lo utilizan. Para descargar el archivo y para obtener más información, consulte JAR de JZOS para IBM Semeru Runtime Certified Edition for z/OS. Para descargar e instalar el SDK de Explorer más reciente, y para obtener más información, consulte la documentación del productoCICS Explorer®.

Java 21 En Java 21, el conjunto de caracteres predeterminado para las API estándar de Java es " UTF-8 ", excepto para la codificación de entrada y salida de la consola. Las versiones anteriores de Java utilizan un juego de caracteres EBCDIC predeterminado. El procesamiento de datos basados en EBCDIC es común en las aplicaciones Java d CICS, por lo que este cambio es significativo. Para más información, consulte Codificación de archivos y UTF-8 como juego de caracteres predeterminado.

IBM SDK de 64 bits para z/OS, Java Technology Edition Java 8

Java en z/OS proporciona un soporte completo para ejecutar aplicaciones Java. CICS utiliza el SDK de IBM de 64 bits para z/OS, Java Technology Edition, Versión 8. Algunas características de Liberty requieren versiones Java específicas, y estas se llaman en la tabla Características de Liberty .

El SDK contiene un Java Runtime Environment que da soporte al conjunto completo de API de Java y a un conjunto de herramientas de desarrollo. Para ayudar a aumentar la productividad del procesador de uso general y contribuir a reducir el coste global de la informática para las aplicaciones basadas en tecnología Java z/OS , hay procesadores especiales disponibles en determinado hardware de z Systems ® . El procesador IBM zEnterprise® Application Assist Processor (zAAP) puede proporcionar capacidad de procesador adicional para ejecutar cargas de trabajo Java elegibles, incluidas las cargas de trabajo Java en CICS. Puede encontrar más información sobre Java en la plataforma z/OS y descargar la versión de 64 bits del SDK en Java Standard Edition Products en z/OS.

CICS proporciona un entorno de ejecución de servidor JVM para el desarrollo de aplicaciones Java. Puede desarrollar aplicaciones utilizando los módulos IBM CICS SDK for Java, Gradle o Maven.

servidor de JVM

El servidor JVM es el entorno de ejecución estratégico para aplicaciones Java en CICS. Un servidor JVM puede manejar muchas solicitudes simultáneas para distintas aplicaciones Java en una sola JVM. El uso de un servidor JVM reduce el número de JVM necesarias para ejecutar aplicaciones Java en una región CICS . Para utilizar un servidor JVM, las aplicaciones Java deben ser de hebra segura y deben cumplir con las especificaciones OSGi o Java EE . El servidor JVM proporciona las ventajas siguientes:
  • Las cargas de trabajo Java elegibles se pueden ejecutar en procesadores de motores especializados, lo que reduce el coste de las transacciones.
  • En un servidor JVM se pueden ejecutar distintos tipos de trabajo como, por ejemplo, programas Java de hebras seguras y servicios web.
  • El ciclo de vida de la aplicación se puede gestionar en la infraestructura OSGi, sin reiniciar el servidor JVM.
  • Las aplicaciones Java que se empaquetan utilizando OSGi se pueden portar más fácilmente entre CICS y otras plataformas.
  • Las aplicaciones Java EE se pueden desplegar en el servidor JVM de Liberty.
    Nota: Las aplicaciones OSGi en CICS se pueden instalar en un servidor JVM de Liberty, pero no pueden utilizar ninguno de los servicios o características de Liberty, ya que no están soportados.

IBM CICS SDK para Java

CICS Explorer es una descarga gratuita para entornos de desarrollo integrado (IDE) basados en Eclipse. El SDK de IBM CICS para Java que se incluye con CICS Explorer proporciona soporte para desarrollar y desplegar aplicaciones que cumplen con la especificación OSGi Service Platform.

La plataforma de servicios OSGi proporciona un mecanismo para desarrollar aplicaciones utilizando un modelo de componente y desplegando dichas aplicaciones en una infraestructura como paquetes OSGi. Un paquete OSGi es la unidad de despliegue para un componente de aplicación y contiene información de control de versión, dependencias y código de aplicación. La principal ventaja de OSGi es que puede crear aplicaciones a partir de componentes reutilizables a los que solo se accede a través de interfaces bien definidas denominadas servicios OSGi. También puede gestionar el ciclo de vida y las dependencias de las aplicaciones Java de forma granular.

El SDK de IBM CICS para Java permite el desarrollo de aplicaciones Java para cualquier release soportado de CICS. El SDK incluye la biblioteca Java CICS (JCICS) para acceder a los servicios CICS junto con ejemplos para empezar a desarrollar aplicaciones para CICS. También puede utilizar la herramienta para convertir aplicaciones Java existentes a OSGi.

IBM CICS SDK para Java EE, Jakarta EE y Liberty se incluye como una opción con CICS Explorer y da soporte al empaquetado de aplicaciones Liberty en paquetes CICS que se pueden desplegar en CICS.

Módulos Gradle y Maven

Como alternativa al SDK de Java ( CICS ) de IBM, puede definir sus proyectos como módulos de Maven ( Gradle ) o Maven, y expresar dependencias haciendo referencia a las coordenadas de los artefactos proporcionados por CICS en Maven Central. Maven y Gradle son herramientas de compilación populares que admiten la gestión de dependencias. Su uso tiene las siguientes ventajas:
  • Fácil gestión de dependencias. Los desarrolladores de Java pueden añadir fácilmente las versiones necesarias de las API de Java CICS y el procesador de anotaciones CICS a las dependencias de Java con sólo unas pocas líneas de configuraciones.
  • Más libertad a la hora de elegir el entorno de desarrollo. Cradle y Maven dan soporte a la mayoría de los IDE de Java, como por ejemplo Eclipse, IntelliJ IDEAy Visual Studio Code. Los desarrolladores de Java pueden escribir código de aplicación en un IDE familiar.
  • Mejor integración en una cadena de herramientas de compilación. Cradle y Maven son, por naturaleza, herramientas de compilación y se integran sin problemas con otras herramientas de automatización como Jenkins y Travis CI. Las dependencias definidas mediante Gradle o Maven se integran automáticamente en la cadena de herramientas de compilación.

Los artefactos siguientes están disponibles en Maven Central:

La biblioteca de clases Java CICS (JCICS)
Proporciona el soporte de API de EXEC CICS para aplicaciones Java en CICS TS.
La biblioteca de anotaciones CICS y el procesador de anotaciones CICS
Proporciona soporte que permite a los programas CICS invocar aplicaciones Java en un servidor JVM de Liberty.
Una lista de materiales (BOM)
Define las versiones de los otros artefactos para asegurarse de que están en el mismo nivel de CICS TS.

Para obtener más información sobre los artefactos y cómo utilizarlos, consulte Desarrollo de aplicaciones utilizando Maven o Gradle.

Estos artefactos, junto con otras dependencias existentes en Maven Central como las siguientes, contienen las API que se proporcionan en los servidores JVM de CICS .

Puede utilizar estos artefactos directamente desde Maven Central, o hacer que se haga referencia a ellos como dependencias de la lista de elementos permitidos desde un repositorio de empresa utilizando gestores de repositorios como Artifactory o Nexus.