CICS y Java

CICS® proporciona las herramientas y el entorno de ejecución necesarios para desarrollar y ejecutar aplicaciones Java™ en una máquina virtual Java ( JVM ) que está bajo el control de una región de CICS.

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

Si es un desarrollador Java, consulte Iniciación a Java en CICS.

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 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 o Java 21 del archivo JZOS jar si sus aplicaciones lo utilizan. Para descargar el archivo y 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 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.

Busque información sobre Java en la plataforma z/OS y descargue la versión de 64 bits del SDK en Java Standard Edition Productos en z/OS.

servidor de JVM

El servidor JVM es el entorno de ejecución para aplicaciones Java en CICS. Un servidor JVM puede gestionar muchas solicitudes simultáneas de diferentes aplicaciones Java en un único JVM. El uso de un servidor de JVM compartida ( JVM ) reduce el número de JVM necesarias para ejecutar aplicaciones Java en una región de JVM compartida ( CICS ). Para utilizar un servidor JVM, las aplicaciones Java deben ser seguras para subprocesos y cumplir con las especificaciones OSGi o Java EE. JVM El servidor ofrece las siguientes ventajas:
  • 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 diferentes tipos de trabajo, como programas Java con seguridad de subprocesos y servicios web.
  • El ciclo de vida de las aplicaciones se puede gestionar en el marco OSGi, sin necesidad de reiniciar el servidor JVM.
  • Las aplicaciones Java que se empaquetan utilizando OSGi se pueden portar más fácilmente entre CICS y otras plataformas.
  • Java EE Las aplicaciones se pueden implementar en el servidor Liberty JVM.
    Nota: Las aplicaciones OSGi de CICS se pueden instalar en un servidor Liberty JVM, pero no pueden utilizar ninguno de los servicios o funciones de Liberty, ya que no son compatibles.

IBM CICS SDK para Java

CICS Explorer® es una descarga disponible de forma gratuita para los 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 for Enterprise Java (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 de IBM CICS, puede definir sus proyectos como módulos Maven o Gradle módulos, expresar dependencias haciendo referencia a los artefactos de Maven Central y, a continuación, empaquetar e implementar la aplicación en un paquete CICS utilizando el complemento Gradle o Maven proporcionado por CICS.

¿Por qué utilizar Gradle o Maven para el desarrollo de CICS ?
  • Gestión de dependencias simplificada con artefactos de Maven Central: los desarrolladores de Java pueden añadir fácilmente dependencias en las API de Java CICS y otras bibliotecas de CICS con algunas líneas de configuración.
  • Más flexibilidad con el entorno de desarrollo: el soporte de Gradle y Maven está disponible en la mayoría de los IDE de Java, como Eclipse, IntelliJ IDEAy Visual Studio Code. Los desarrolladores de Java pueden escribir código de aplicación en un IDE familiar.
  • Despliegue de paquetes con facilidad y confianza en el momento del desarrollo con los plug-ins de Gradle y Maven (Requiere API de despliegue de paquetes de CICS):
    • Los desarrolladores de Java pueden volver a desplegar un paquete en una región CICS en segundos, sin necesidad de una conexión zFS o para inhabilitar, descartar y reinstalar el paquete manualmente.
    • Los desarrolladores de Java pueden integrar la compilación y el despliegue de paquetes de CICS en su cadena de herramientas, ahorrando mucho trabajo manual.
    • La API garantiza un acceso controlado tanto al conjunto de datos de definición del sistema CICS (CSD) para la instalación de definiciones BUNDLE como al directorio de bundles en zFS, de modo que los programadores del sistema puedan permitir a los desarrolladores de Java implementar bundles sin necesidad de conceder acceso adicional.
Qué puede hacer con Gradle o Maven en CICS
  • Resolución de dependencias de compilación desde Maven Central

    En Maven Central se proporciona una lista de API Java de CICS y otras bibliotecas bajo el ID de grupo com.ibm.cics . En función de la política de la organización, puede hacer referencia a estos artefactos directamente desde Maven Central o hacer que se dupliquen en el repositorio de la empresa utilizando gestores de repositorios como, por ejemplo, Artifactory o Nexus.

  • Creación y despliegue de paquetes de CICS utilizando Gradle o plug-ins de Maven

    Los complementos Gradle y Maven son de código abierto y se proporcionan en GitHub (cics-bundle-maven y cics-bundle-gradle ). Puede utilizarlos para crear paquetes de CICS y, cuando API de despliegue de paquetes de CICS esté configurado, para desplegar paquetes de CICS . Se da soporte a un subconjunto de partes de paquete CICS , incluidos los archivos WAR (.war), los archivos EAR (.ear) y los paquetes OSGi (.jar).

    Para obtener instrucciones sobre cómo configurar CICS para la API de implementación del paquete CICS, consulte Configuración del servidor CMCI JVM para la API de implementación del paquete CICS.