Contenedor de servicio service-container
Los servicios de AEM Forms ubicados en el contenedor de servicios (incluidos servicios estándar como el servicio de cifrado, procesos de larga duración y de corta duración) se pueden invocar mediante varios proveedores, como un proveedor de EJB. Un proveedor de EJB permite que los servicios de AEM Forms se invoquen a través de RMI/IIOP. Un proveedor de servicios web expone los servicios como servicios web (generación WSDL) utilizando estándares como SOAP/HTTP y SOAP/JMS.
En la tabla siguiente se describen las distintas formas en que puede invocar los servicios de AEM Forms mediante programación.
AEM Forms admite estándares de servicios web como SOAP/HTTP. Un servicio se puede exponer como un servicio web, con el WSDL cumpliendo con los estándares de servicio web definidos por W3C.
Se puede invocar un servicio desde cualquier pila de servicios web, incluidos .NET Framework y el SDK de los servicios web de Sun™. (Consulte Invocación de AEM Forms mediante servicios web.)
La siguiente ilustración proporciona una representación visual de las diferentes formas en que se pueden invocar los servicios de AEM Forms mediante programación.
com.adobe.idp.BankAccount
. A continuación, puede crear com.adobe.idp.BankAccount
instancias en las aplicaciones cliente.El contenedor de servicio proporciona la siguiente funcionalidad:
-
Permite que los servicios de AEM Forms se invoquen con métodos diferentes. Puede configurar un servicio estableciendo extremos para que se pueda invocar mediante todos los métodos: Remoting, la API de Java, los servicios web y REST. (Consulte Administración programática de puntos de conexión.)
-
Convierte un mensaje en un formato normalizado denominado solicitud de invocación. Se envía una solicitud de invocación desde una aplicación cliente (u otro servicio) a un servicio ubicado en el contenedor de servicios. Una solicitud de invocación contiene información como el nombre del servicio que se va a invocar y los valores de datos necesarios para realizar la operación. Muchos servicios requieren un documento para realizar una operación. Por lo tanto, una solicitud de invocación generalmente contiene un documento, que puede ser datos de PDF, datos XDP, datos XML, etc.
-
Envía solicitudes de invocación a servicios apropiados (el nombre del servicio que se va a invocar forma parte de la solicitud de invocación).
-
Realiza tareas como determinar si el llamador tiene permiso para invocar la operación de servicio especificada. La solicitud de invocación debe contener un nombre de usuario y una contraseña válidos para los formularios AEM.
Existen diferentes maneras de enviar una solicitud de invocación a un servicio. Además, existen diferentes maneras de enviar los valores de entrada necesarios al servicio. Por ejemplo, supongamos que utiliza la API de Java para invocar un servicio que requiere un documento de PDF. El método Java correspondiente contiene un parámetro que acepta un documento de PDF. En este caso, el tipo de datos del parámetro es
com.adobe.idp.Document
. (Consulte Pasar datos a servicios de AEM Forms mediante la API de Java.)Si invoca un servicio mediante carpetas vigiladas, se envía una solicitud de invocación cuando se coloca un archivo en una carpeta vigilada configurada. Si invoca un servicio mediante correo electrónico, se envía una solicitud de invocación a un servicio cuando llega un mensaje de correo electrónico a una bandeja de entrada configurada.
El contenedor de servicio devuelve una respuesta de invocación una vez realizada la operación. Una respuesta de invocación contiene información como los resultados de la operación. Por ejemplo, si la operación modifica un documento de PDF, la respuesta de invocación contiene el documento de PDF modificado. Si la operación no se realizó correctamente, la respuesta de invocación contiene un mensaje de error.
Se puede recuperar una respuesta de invocación del mismo modo en que se envía una solicitud de invocación. Es decir, si la solicitud de invocación se envía mediante la API de Java, se puede recuperar una respuesta de invocación mediante la API de Java. Supongamos, por ejemplo, que una operación modifica un documento de PDF. Puede recuperar el documento del PDF modificado obteniendo el valor devuelto del método Java que invocó el servicio.
Cuando se invoca un proceso de larga duración, una respuesta de invocación contiene un valor de identificador asociado con la solicitud de invocación. Utilizando este valor de identificador, puede comprobar el estado del proceso en un momento posterior. Por ejemplo, consideremos el servicio de larga duración de MortgageLoan. Con el valor del identificador, puede comprobar si el proceso se completó correctamente. (Consulte Invocación de procesos de larga vida centrados en el ser humano.)
El diagrama siguiente muestra una aplicación cliente (que utiliza la API de Java) que invoca un servicio.
Cuando una aplicación cliente invoca un servicio, se producen tres eventos:
- Una aplicación cliente envía una solicitud de invocación a un servicio.
- El servicio realiza la operación especificada en la solicitud de invocación.
- El contenedor de servicio devuelve una respuesta de invocación a la aplicación cliente.
Consulte también
Explicar los procesos de AEM Forms
Invocación de AEM Forms mediante AEM Forms Remoting (obsoleto para formularios AEM)
Invocación de AEM Forms mediante la API de Java
Invocar AEM Forms mediante servicios web
Invocación de procesos de larga vida centrados en el ser humano
Invocar AEM Forms mediante solicitudes REST