Utilización de la API de invocación de Liberty para llamar a un enterprise bean desde un espacio de direcciones externo

Utilice la API de invocación del adaptador local optimizado de WebSphere (WOLA) para llamar desde un espacio de direcciones externo a un bean de sesión sin estado que se ha desplegado en un servidor Liberty local para z/OS.

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.

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 a un enterprise bean proporciona una vía de acceso simplificada para cuando se conoce la longitud del área de respuesta antes de invocar al bean. Si no conoce la longitud del área de respuesta o si desea más flexibilidad cuando invoque al bean, consulte Utilización de las API de adaptadores locales optimizados Liberty para invocar un enterprise bean desde un espacio de direcciones externo.

Procedimiento

  1. Decida qué parámetros utilizar cuando invoque al bean utilizando la API Invoke, que es BBOA1INV.
    La API acepta parámetros para los elementos siguientes:
    • El nombre de registro que ha especificado cuando invocó a la API Register.
    • El tipo de solicitud, que se debe establecer en 1 para las solicitudes de trabajo EJB locales
    • El nombre del servicio a invocar, que debe ser el nombre de la vía de acceso de la interfaz empresarial local de JNDI (Java™ Naming and Directory Interface) del bean de sesión sin estado
    • La longitud del nombre de servicio
    • Un puntero a la dirección del inicio de los datos de solicitud que se van a enviar
    • La longitud de los datos de solicitud que se deben enviar
    • Un puntero a la dirección del inicio del área de datos de respuesta
    • La longitud de los datos de respuesta que se deben enviar
    • El número de segundos hasta que se agota el tiempo de espera de la conexión

    Para más información sobre los parámetros de la API, consulte Las API de los adaptadores locales optimizados en Liberty for z/OS.

  2. Llame a la API Invoke para su interlocutor con los parámetros seleccionados desde una aplicación de lenguaje nativo en el espacio de direcciones cliente. En la aplicación Enterprise JavaBeans (EJB) de destino, se ejecuta el método execute y, después, se inicia cualquier lógica empresarial necesaria antes de devolver los datos de respuestas como una matriz de bytes serializada al emisor de lenguaje nativo.
  3. Revise los datos de respuesta. Un código de retorno y un código de razón 0 indica que la API Invoke del cliente se ha completado correctamente y que los datos de respuesta y la longitud de los datos de respuesta se han guardado en las áreas designadas por el interlocutor.
  4. La aplicación cliente repite estos pasos utilizando la misma llamada de nombre de registro, invocando tantos beans de sesión sin estado como sea necesario, y con la frecuencia necesaria.
    Atención: Con la API Invoke, se completan las tres funciones primitivas, Send_Request, Receive_RespLen y Get_Data. La hebra que llama se bloquea hasta que los datos de respuesta se reciben y se copian en el área de respuesta.

Resultados

El cliente inicia un bean de sesión sin estado desde el servidor Liberty utilizando la API de invocación del adaptador local optimizado.

Icono que indica el tipo de tema Tema de tarea

Nombre de archivo: twlp_dat_connectejbinvokeapi.html