Utilización de las API de adaptadores locales optimizados Liberty para invocar un enterprise bean desde un espacio de direcciones externo

Utilice las API de adaptador local optimizado WebSphere (WOLA) para conectar un espacio de direcciones externo a un servidor Liberty e invocar un bean de sesión sin estado local.

Antes de empezar

Para identificar su enterprise bean como destino potencial de una llamada de adaptador local optimizado, su aplicación Enterprise JavaBean (EJB) debe implementar la interfaz com.ibm.websphere.ola.ExecuteLocalBusiness como interfaz empresarial local. La interfaz se halla en el archivo wlp/dev/api/ibm/com.ibm.websphere.appserver.api.zosLocalAdapters_1.0.0.jar.

Para los programas que se ejecutan bajo Customer Information Control System (CICS), el programa de existencia de usuario (TRUE) relacionado con la tarea de los adaptadores locales optimizados debe estar activado antes de se pueda realizar una conexión entre CICS y el servidor Liberty. Para obtener más información, consulte Transacciones del servidor de Liberty para CICS: BBOC, BBO$ y BBO#.

El servidor Liberty debe estar activo en la misma imagen de z/OS desde donde se origina la solicitud de registro. Asegúrese de que ya se haya registrado el espacio de direcciones actual y e esté enlazado al grupo de adaptadores locales optimizados de destino utilizando la API Register. Para obtener más información sobre el registro de un espacio de direcciones externo, consulte Registro de un espacio de direcciones externo con un servidor Liberty local utilizando adaptadores locales optimizados.

Acerca de esta tarea

Este método de invocación de bean de sesión sin estado proporciona más flexibilidad y es para situaciones en que puede que no se sepa la longitud máxima del área de respuesta antes de la llamada. Para un método simplificado de invocación de bean cuando se conoce la longitud del área de respuesta, consulte Utilización de la API de invocación de Liberty para llamar a un enterprise bean desde un espacio de direcciones externo.

Procedimiento

  1. Invoque la API Connection Get, BBOA1CNG, desde la aplicación de lenguaje nativo en un espacio de direcciones cliente, pasando el nombre del registro que se utilizó cuando se invocó la API Register, BBOA1REG. La llamada devuelve una gestión de conexiones que se deberá utilizar para todas las llamadas a API futuras.
  2. Invoque la API Send Request, BBOA1SRQ, desde una aplicación de lenguaje nativo en el espacio de direcciones cliente. Para el parámetro requestservicename, especifique el nombre de la vía de acceso a la interfaz empresarial local de JNDI (Java Naming and Directory Interface) para el enterprise bean que desee invocar. Utilice el nombre JNDI en el espacio de nombres global de JNDI. El servidor Liberty invoca el método execute para la interfaz empresarial local que implementa la aplicación EJB.

    Si ha establecido el parámetro async de la API Send Request en 0, la API devolverá la longitud de respuesta y el valor de retorno. A continuación, podrá llamar directamente a la API Get Message Data.

    Si ha establecido el parámetro async de la API Send Request en 1, el control volverá a la aplicación cliente de forma que podrá llamar a la API Receive Response Length.

  3. Si ha llamado a la API Send Request con el parámetro async establecido en 1, llame a la API Receive Response Length, BBOA1RCL, definiendo el parámetro async en 0 o 1. La aplicación cliente utiliza la longitud de respuesta que devuelve la API Receive Response Length para garantizar que tenga un área suficientemente grande para conservar los datos de respuestas.

    Si ha establecido el parámetro async de la API Receive Response Length en 0, la API bloqueará la hebra hasta que se reciba una respuesta.

    Si ha establecido el parámetro async de la API Receive Response Length en 1, se volverá inmediatamente a la API independientemente de si ha recibido una respuesta.

  4. Llame a la API Get Message Data, BBOA1GET, para copiar los datos de respuesta en el almacenamiento intermedio de la aplicación cliente.
  5. La aplicación cliente puede continuar enviando solicitudes y recibiendo datos de mensajes utilizando el mismo manejador de conexiones hasta que se envíen todas las solicitudes y esté lista para liberar la conexión. Para liberar la conexión, la aplicación llama a la API Connection Release, BBOA1CNR. Los manejadores de conexiones deben liberarse para que puedan retenerse en una llamada de API de obtención de conexión y puedan volverse a utilizar.

Icono que indica el tipo de tema Tema de tarea

Nombre de archivo: twlp_dat_connectejbapi.html