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
- 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.
- 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.
- 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.
- 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.