IBM Maximo Asset Management
Versión 7 Release 6
Integración de datos con aplicaciones
externas
Nota
Antes de utilizar esta información y el producto al que da soporte, lea la información del apartado “Avisos” en la página 409.
Esta edición se aplica a la versión 7, release 5, modificación 0 de IBM Maximo Integration Framework y a todos los releases y modificaciones posteriores hasta que se indique lo contrario en nuevas ediciones.
Contenido
Integración de datos con aplicaciones
externas
. . . 1
Descripción general de la infraestructura de integración . . . 1
Arquitectura . . . 2
Infraestructura para el intercambio de datos . . 2
Infraestructura para la integración de productos de gestión de operaciones . . . 4
Infraestructura para la integración de la interfaz de usuario . . . 5
Habilitación de la exportación y la importación de datos . . . 5
Preparación del sistema. . . 5
Configuración de colas JMS . . . 5
Configuración de las propiedades de integración . . . 5
Activación de la tarea cron para colas JMS . . 6
Exportación de datos a un archivo de prueba . 6 Importación de datos de un archivo de prueba 7 Componentes de integración . . . 7
Estructuras de objetos . . . 7
Identificación de objetos . . . 8
Teclas alternativas . . . 8
Campos de objeto . . . 9
Consideraciones sobre las tablas de interfaz y los archivos sin formato . . . 10
Modificación de una estructura de objeto predefinida . . . 10
Configuración de una estructura de objeto . . 10
Canales y servicios . . . 15
Canales de publicación . . . 15
Canales de invocación . . . 17
Servicios de estructura de objeto . . . 20
Servicios empresariales . . . 20
Servicios estándar . . . 24
Puntos finales y manejadores . . . 24
Configuración de un punto final . . . 25
Manejadores de punto final predefinidos . . 27
Servicios web de integración. . . 41
Orígenes de servicios web . . . 41
Opciones de despliegue de servicios Web . . 42
Acciones de despliegue de servicio web . . . 43
Generación de esquemas . . . 43
Generación de un archivo de idioma de descripción de servicios web. . . 44
Registro de UDDI . . . 44
Creación y despliegue de servicios web . . . 45
Vista general de las interacciones de servicio web . . . 47
Sistemas externos . . . 49
Configuración de un sistema externo . . . . 49
Contenido de integración predefinido . . . . 63
Objetos de datos maestros . . . 64
Objetos de parte y de inventario . . . 74
Objetos de la interfaz de transacciones . . . 91
Objetos del sistema . . . 101
Orden de carga de datos. . . 115
Procesamiento de datos de integración . . . 116
Planificación para procesar los datos para la integración . . . 116
Procesamiento de datos entrantes. . . 117
Proceso asíncrono de mensajes entrantes . . 117
Proceso síncrono de mensajes entrantes. . . 118
Iniciación del proceso asíncrono de los datos de entrada . . . 118
Iniciación del proceso síncrono de los datos de entrada . . . 120
Secuencias de proceso . . . 122
Procesamiento de datos salientes . . . 124
Integración asíncrona con un canal de publicación . . . 124
Integración síncrona con un canal de invocación . . . 126
Configuración del proceso de integración . . . 127
Configuración del proceso asíncrono de mensajes entrantes mediante servicios empresariales . . . 128
Configuración del proceso asíncrono de mensajes de salida mediante canales de publicación . . . 129
Personalización basada en reglas . . . 130
Definiciones de reglas para objetos y registros . . . 130
Definiciones de regla de proceso . . . 130
Condiciones y evaluaciones . . . 135
Controles de integración. . . 139
Configuración de reglas de proceso . . . . 141
Personalización basada en código . . . 156
Personalización de clases y métodos Java . . 157
Personalización con scripts de automatización . . . 163
Correlación XSL . . . 180
Clase de salida de usuario de tabla de interfaz . . . 181
Configuración de la infraestructura de integración 182 Propiedades del sistema de integración . . . . 182
Configuración de colas JMS . . . 189
Creación y configuración de una cola . . . 190
Colas secuenciales . . . 191
Colas continuas . . . 192
Formato de mensaje de cola . . . 196
Selectores de colas. . . 198
Visualización y supresión de mensajes en una cola JMS . . . 199
Configuración de colas con WebSphere MQ 200 Gestión de errores . . . 201
Gestión de errores que no son de cola . . . 201
Nuevo proceso de mensajes . . . 204
Gestión de errores de la importación de datos basada en archivo . . . 207
Gestión de errores de tablas de interfaz. . . 210
Causas habituales de errores . . . 211
Búsqueda de errores . . . 212
Seguimiento de mensajes . . . 213
Configuración de clústeres . . . 218
Colas JMS en un clúster de servidores . . . 218
Configuración de la tarea cron. . . 221
Configuración de un servidor de procesamiento de mensajes . . . 221
Configuración del directorio global . . . . 221
Acceso de los mensajes entrantes a los servicios . . . 221
Seguridad de integración . . . 223
Seguridad de autenticación . . . 223
Seguridad de autorizaciones . . . 230
Soporte de idiomas . . . 231
Procesamiento predeterminado de varios idiomas . . . 231
Atributos multilingües . . . 232
Soporte para idiomas bidireccionales . . . 232
Formatos de idiomas bidireccionales. . . . 233
Configuración del soporte de idioma bidireccional para los sistemas externos . . 233
Exportación e importación de datos basados en archivo . . . 233
Exportación e importación de datos en la aplicación Sistemas externos . . . 234
Exportación de datos basados en archivo . . 234
Importación de datos basados en archivo . . 235
Tareas cron para procesar datos entrantes . . . 236
Tarea cron XMLFILECONSUMER . . . . 236
Tarea cron FLATFILECONSUMER . . . . 237
Configuración de una aplicación para la exportación y la importación de datos . . . . 239
Definición del contenido de una estructura de objeto . . . 239
Habilitación de la importación y exportación de datos en una aplicación . . . 240
Iniciación de la exportación y la importación de datos en una aplicación . . . 241
API de REST . . . 243
Infraestructura de la API de REST . . . 243
Representaciones soportadas . . . 244
Manejadores de recursos y URI . . . 245
Método GET . . . 245
Parámetros de consulta y operadores . . . 248
Parámetro _opmodeor . . . 250
Parámetros _rsStart y _maxItems . . . 251
Parámetro _orderbyasc . . . 252
Parámetros _includecols y _excludecols. . . 253
Parámetro _dropnulls . . . 253
Parámetros _format y _compact . . . 254
Negociación de contenido de representaciones . . . 255
Desplazamiento dentro de la sesión . . . . 256
Almacenamiento en memoria caché de solicitudes GET. . . 257
Métodos PUT, POST y DELETE . . . 259
método PUT. . . 259
Método POST . . . 260
Método DELETE . . . 261
simultáneo simultáneas de recursos . . . . 261
Actualizaciones y consultas de métodos de servicios . . . 262
Métodos de servicios que utilizan HTTP POST para actualizar recursos . . . 262
Métodos de servicios que utilizan HTTP GET para consultar recursos . . . 264
Métodos de servicios que utilizan HTTP GET para consultar datos del sistema . . . 265
Propiedades de la cabecera HTTP . . . 266
Códigos de respuesta. . . 267
Seguridad en la API de REST . . . 268
Personalización de la API de REST . . . 270
Parámetros de consulta REST . . . 271
Propiedades del sistema REST . . . 275
Llamadas de servicios externos . . . 278
integración de OSLC . . . 279
Implementación de OSLC en Maximo Asset Management . . . 279
Configuración de OSLC . . . 281
Especificación de recursos OSLC . . . 281
Proveedores de servicios de dominio . . . 282
Consultas guardadas . . . 284
Seguridad de OSLC . . . 285
Registro de OSLC . . . 287
Transacciones HTTP . . . 287
Consultas de recursos OSLC . . . 288
Creación de una instancia de recursos . . . 292
Modificación de recursos . . . 293
Cabeceras HTTP . . . 296
Códigos de respuesta HTTP . . . 298
Integración como consumidor de OSLC . . . 299
Creación de registros de proveedor de OSLC 299 Diseño de una interacción de OSLC . . . . 304
Creación de grupos de interacciones. . . . 312
Ejemplo: Ejecución de una interacción de OSLC . . . 313
Cambios en el URI público . . . 315
Migración de integraciones de OSLC . . . 315
Modificación manual de la interfaz de usuario . . . 316
Propiedades de OSLC . . . 317
Consultas de integración . . . 318
Servicios de consulta . . . 318
Creación de una consulta de servicio empresarial . . . 319
Consultas de servicios web . . . 319
Estructura XML de consulta . . . 320
Criterios de selección de consultas . . . 323
Selección de campo . . . 323
Evaluación de campos . . . 325
Selección de rango. . . 325
Selección de la cláusula Where . . . 326
Tablas de interfaz . . . 328
Creación de tablas de interfaz . . . 329
Regeneración de las tablas de interfaz . . . . 330
Supresión de tablas de interfaz y registros . . . 330
Sondeo de tablas de interfaz . . . 334 Tarea cron de sondeo de la tabla de interfaz 334 Sondeo de tablas de interfaz avanzado . . . 335 Proceso de tablas de interfaz en un sistema
externo . . . 336 Habilitación del proceso de entrada . . . . 336 Habilitación del proceso de salida . . . . 337 Módulos de integración . . . 337 Componentes de módulo de integración . . . 338 Definiciones de módulos de integración . . 338 Productos de gestión operativos . . . 338 Operaciones de gestión lógica . . . 338 Requisitos previos para la implementación . . 340 Propiedades de implementación . . . 341 Parámetros del módulo de integración . . . 341 Flujo de procesos de módulos de integración 341 Puntos finales . . . 342 Canal de invocación o implementación de clase Java . . . 343
Comparación entre los canales de invocación y las clases Java . . . 343 Implementación de canales de invocación 344 Implementación de clases Java . . . 345 Procesamiento de módulos de integración . . . 346
Identificación de los componentes de
integración . . . 346 Invocación del módulo de integración . . . 347 Procesamiento de respuestas de módulos de integración . . . 350 Configuración de módulos de integración . . . 350 Creación de módulos de integración. . . . 350 Selección de operaciones de gestión lógica para módulos de integración . . . 352 Asociación de una operación de gestión
lógica con un módulo de integración . . . 353 Configuración de operaciones de gestión lógica 355 Creación de operaciones de gestión lógica 355
Adición de atributos a operaciones de
gestión lógica . . . 356 Función de Inicio contextual . . . 356 Preparación de la aplicación externa . . . 357 URL de entrada de ejecución en una aplicación externa . . . 357 URL de entrada de ejecución en una aplicación del producto . . . 357 Habilitación del inicio contextual . . . 358 Creación de una entrada de ejecución . . . 358 Configuración de una opción de firma para un punto de ejecución . . . 360 Adición de un punto de ejecución a un menú de aplicación . . . 360 Adición de un botón como un punto de
ejecución . . . 361 Adición de una condición a un punto de
ejecución . . . 361 Información de referencia de integración . . . . 362 Propiedades del sistema de integración . . . . 362 XML de integración . . . 370 Descripción general . . . 370 Estructura XML . . . 371 Esquemas de XML de integración . . . . 382 Conmutadores de colaboración . . . 394
Formato de los conmutadores de
colaboración . . . 395 Recuperación de un conmutador de
colaboración . . . 396 Configuración de conmutadores de
colaboración . . . 397 Conmutadores de colaboración predefinidos 399
Avisos . . . 409
Integración de datos con aplicaciones externas
La infraestructura de integración le ayuda a integrar datos de aplicación con otras aplicaciones, ya sea dentro de su empresa o con sistemas externos. La
infraestructura incluye contenido predefinido que permite la integración con diversos objetos de negocios y un kit de herramientas que puede utilizar para ampliar el contenido de integración predefinido y desarrollar puntos de integración nuevos.
Descripción general de la infraestructura de integración
La infraestructura de integración le ayuda a integrar datos de aplicación con otras aplicaciones, ya sea dentro de su empresa o con sistemas externos. La
infraestructura incluye contenido predefinido que permite la integración con diversos objetos de negocios y un kit de herramientas que puede utilizar para ampliar el contenido de integración predefinido y desarrollar puntos de integración nuevos.
La infraestructura de integración incluye los componentes y las funciones siguientes:
v Contenido de integración predefinido
v Aplicaciones para crear y configurar componentes de integración
v Soporte para múltiples modalidades de comunicación incluidos servicios web, protocolo de transferencia de hipertexto (HTTP) y Java Message Service (JMS) v Soporte para distintos formatos de datos, incluidos tablas de interfaz de base de
datos, mensajes XML y JSON (JavaScript Object Notation), y archivos sin formato, como archivos de texto separados por comas
v Procesamiento basado en eventos, por lotes, iniciado por un programa e iniciado por el usuario y ejecución basada en el contexto de aplicaciones externas
v Soporte para la integración de productos de gestión de operaciones (PGO) v Soporte para entornos en clúster
v Soporte para la interacción con aplicaciones que soportan la aplicación de integración OSLC (Open Services for Lifecycle Collaboration). La infraestructura de integración puede habilitar a una aplicación para que sea una aplicación de consumidor de OSLC que se pueda integrar con una aplicación externa que haya implementado prestaciones de proveedor de OSLC.
La infraestructura de integración proporciona varias opciones para enviar y recibir datos. Evalúe qué enfoque es el más eficiente para sus necesidades cuando
planifique una integración. Entre algunos escenarios de integración típicos se encuentran los siguientes:
v Cargar archivos con datos heredados durante una implementación.
v Sincronizar datos maestros entre una aplicación de producto y una aplicación ERP externa.
v Utilizar servicios web para habilitar la consulta en tiempo real de datos de aplicación de producto por parte de una aplicación externa.
v Llamar a una aplicación externa para validar datos entrados en una aplicación de producto.
Si desea importar un gran número de registros de un sistema externo, importe los datos en archivos de proceso por lotes o utilice tablas de interfaz. Este enfoque separa los datos de modo que varios mensajes se procesen como transacciones distintas. Con una sola transacción que procese de forma síncrona, como una llamada de servicio web, limite el número de mensajes en una sola transacción para garantizar que la transacción se procese en un margen de tiempo aceptable. Cuando planifique una integración, evalúe qué opción de integración es la más apropiada para sus necesidades.
El contenido de integración predefinido incluye soporte para varios objetos de negocios y las funciones de inserción, actualización y supresión sobre estos objetos de negocios está habilitado. Cuando se utiliza contenido predefinido, hay ciertas limitaciones que pueden afectar a la implementación. Si existen reglas de negocio en el objeto de negocios que no permiten una función, como por ejemplo la
función de supresión, la función no está disponible para la integración. Además del soporte para las operaciones insertar, actualizar y suprimir, las aplicaciones del producto soportan otras funciones que están disponibles como acciones. El contenido de integración predefinido no soporta todas las acciones que están disponibles. En la mayor parte de casos, la acción Cambiar estado está soportada mediante la integración.
Conceptos relacionados:
“Contenido de integración predefinido” en la página 63
La infraestructura de integración proporciona contenido de integración predefinido, que incluye estructuras de objeto, canales de publicación y servicios empresariales que soportan la importación de datos de un sistema externo o la exportación de datos un sistema externo.
Arquitectura
La arquitectura de la infraestructura de integración incluye los datos, el transporte, la comunicación y los componentes de seguridad necesarios para intercambiar información entre aplicaciones y sistemas distintos.
Infraestructura para el intercambio de datos
La infraestructura para el intercambio de datos incluye los componentes y las herramientas que se utilizan para implementar los distintos tipos de escenarios de integración.
Componentes
La infraestructura incluye componentes de integración predefinidos y aplicaciones que puede utilizar para configurar los componentes. En la siguiente tabla se describen los principales componentes.
Tabla 1. Componentes de intercambio de datos de la infraestructura de integración
Componente Descripción
Estructuras de objetos Una estructura de objeto es la capa de datos común que utilizan los componentes de la infraestructura de integración para los procesos de mensajes de aplicaciones entrantes y salientes. Una estructura de objeto consta de uno o varios objetos de negocio relacionados que definen el contenido de un mensaje XML (esquema).
Objetos de negocio Los objetos de negocio de aplicación están disponibles como recursos REST (Representational State Transfer) para consultas y actualizaciones utilizando el componente API de REST de la infraestructura de integración.
Tabla 1. Componentes de intercambio de datos de la infraestructura de integración (continuación)
Componente Descripción
Canales de publicación
Un canal de publicación se utiliza para enviar mensajes asíncronos, a través de una cola JMS, a un sistema externo. Los mensajes del canal de publicación pueden iniciarse utilizando un evento o mediante la función Exportación de datos.
Canales de invocación Los canales de invocación se utilizan para enviar mensajes síncronos a un sistema externo y procesar el contenido de la respuesta. El canal admite la implementación de la lógica de procesos y la correlación de la solicitud y la respuesta. Un canal de invocación también permite utilizar los datos de la respuesta para actualizar objetos de negocio y mostrarlos a los usuarios de la aplicación.
Servicios empresariales
Un servicio empresarial es una interconexión para consultar e importar datos de un sistema externo. Un servicio empresarial puede procesar datos de forma síncrona (sin una cola) o asíncrona (con una cola). Los servicios empresariales pueden utilizar varios protocolos como, por ejemplo, los servicios web y HTTP.
Sistemas externos Se define un sistema externo para la aplicación externa con la que tiene previsto integrarse. El sistema externo identifica el protocolo de comunicación que se utiliza y qué servicios empresariales, canales de publicación y colas JMS se implementan para dicho sistema externo.
Puntos finales y manejadores
Un punto final y su manejador asociado direccionan los mensajes salientes a un sistema externo. La combinación del punto final y el manejador especifica el protocolo de transporte, por ejemplo, HTTP o servicio web, y proporciona los datos de comunicación necesarios para alcanzar el destino, por ejemplo, un URL.
Servicios web Puede desplegar los servicios de la infraestructura de integración como, por ejemplo, servicios empresariales o de estructura de objeto, como servicios web que pueden invocar los sistemas externos.
Importación y exportación de datos
Puede cargar datos desde archivos XML o archivos sin formato, por ejemplo, un archivo de texto separado por comas. Puede iniciar la importación y la exportación de los datos desde una aplicación de producto y programar un proceso por lotes para ejecutar la importación como un proceso en segundo plano. Puede exportar uno o varios registros a un archivo utilizando un Canal de publicación, donde pueden aplicarse condiciones de filtro para controlar el contenido de los datos que se exportan.
Contenido La infraestructura de integración proporciona un contenido predefinido que incluye estructuras de objetos, los servicios empresariales y los canales de publicación correspondientes, un sistema externo y manejadores predefinidos que admiten distintos protocolos de comunicación.
Proceso
Cuando los mensajes de integración fluyen de entrada y salida, la infraestructura proporciona opciones como, por ejemplo, clases Java, reglas de proceso y la correlación XSL para proporcionar la lógica de transformación de los mensajes y reglas de negocio que se adapten a sus requisitos de integración.
Comunicación
La infraestructura de integración facilita el intercambio de datos síncrono y
asíncrono. Los mensajes asíncronos se procesan utilizando colas JMS (Java Message Service). Las colas JMS pueden procesar mensajes por orden de prioridad
(secuencialmente) o de modo multihebra (continuo). Los mensajes síncronos que requieren una respuesta al remitente no se procesan utilizando colas JMS y requieren una conexión directa entre la infraestructura de integración y la aplicación externa.
Puede configurar varios protocolos de comunicación como, por ejemplo, HTTP, servicios web y mensajería JMS.
Cuando se integra con varias aplicaciones externas, puede configurar distintos canales y servicios para utilizar distintos protocolos de comunicación como, por ejemplo, HTTP, servicios web y mensajería JMS, según las prestaciones de cada aplicación externa individual.
Seguridad
La infraestructura de integración utiliza el soporte del producto de la seguridad de autenticación J2EE, para que pueda configurar Enterprise Java Beans (EJB), HTTP y servicios web. Puede configurar la seguridad de autorización de las aplicaciones, los objetos y los métodos de servicios estándar.
Conceptos relacionados:
“API de REST” en la página 243
La API (interfaz de programación de aplicaciones) de REST (Representational State Transfer) proporciona una manera para que las aplicaciones externas consulten y actualicen datos de aplicación en motor de automatización de procesos de Tivoli.
Infraestructura para la integración de productos de gestión de
operaciones
Los productos de gestión de procesos pueden integrarse con productos de gestión de operaciones en una modalidad automatizada utilizando módulos de
integración. Los productos de gestión de procesos pueden utilizar la función de inicio contextual para integrarse con productos de gestión de operaciones en modalidad asistida.
El producto de gestión de procesos proporciona una clase Java de acción que inicia la llamada a un módulo de integración y, posteriormente, al producto de gestión de operaciones. El producto de gestión de procesos procesa luego la respuesta del producto de gestión de operaciones.
Una operación de gestión lógica define la acción que el producto de gestión de procesos realiza sobre el producto de gestión de operaciones. La operación de gestión lógica identifica las propiedades siguientes:
v El nombre y la descripción de la acción a la que da soporte v Si el procesamiento es síncrono o asíncrono
v Los objetos de entrada (origen) y salida (destino) y los campos para la transacción
El módulo de integración proporciona un mecanismo para que un producto de gestión de procesos llame a un producto de gestión de operaciones externo. Cuando lo inicia un producto de gestión de procesos, el módulo de integración utiliza datos proporcionados por el producto de gestión de procesos para ayudar a
llamar al servicio del producto de gestión de operaciones. El módulo de
integración también puede devolver cualquier dato de respuesta al producto de gestión de procesos.
Los productos de gestión de operaciones proporcionan servicios a los que los módulos de integración pueden llamar para iniciar acciones de productos de gestión de operaciones.
Infraestructura para la integración de la interfaz de usuario
Puede configurar la infraestructura de integración para que abra una ventana en una aplicación externa y proporcione datos para incluirlos en el contexto de dicha ventana.Puede configurar un URL de consola para cualquier aplicación con una consola basada en la web y puede configurar URL para consolas que utilicen Java Web Start. No puede utilizar una entrada de ejecución para abrir aplicaciones que no estén habilitadas para la web. Puede configurar un punto de ejecución desde cualquier aplicación del producto. Puede proporcionar acceso a puntos de inicio como acciones, hiperenlaces y en botones de aplicación.
Puede utilizar el mismo procedimiento para abrir una ventana de una aplicación del producto desde una aplicación externa.
Habilitación de la exportación y la importación de datos
Antes de utilizar la infraestructura de integración para intercambiar datos con una aplicación externa, debe configurar los componentes necesarios para la
comunicación entrante y saliente. Estos procedimientos describen los pasos de configuración mínimos necesarios para validar que pueda exportar datos a un archivo e importar datos de un archivo.
Preparación del sistema
Para habilitar la integración, debe realizar algunas tareas de configuración relacionadas con propiedades del sistema, colas JMS y tareas cron.
Configuración de colas JMS
Las colas JMS se configuran en el servidor de aplicaciones. La configuración de colas JMS puede ser automática o manual en WebSphere Application Server. La configuración de colas JMS siempre es un procedimiento manual en WebLogic Server.
Procedimiento
1. Confirme que las colas JMS están configuradas.
2. Confirme que los beans controlados por mensaje estén habilitados para la cola continua.
Configuración de las propiedades de integración
Antes de habilitar la infraestructura de integración, modifique los valores
predeterminados para las propiedades de integración con valores apropiados para su entorno.
Procedimiento
1. En la aplicación Propiedades del sistema, filtre las propiedades que desee configurar. Si filtra mxe.int en el campo Propiedad, aparecerán en la lista todas
2. Seleccione la propiedad mxe.int.dfltuser y verifique que la cuenta de usuario especificada sea una cuenta de usuario del sistema válida. Modifique el valor de la propiedad si es necesario. La propiedad especifica el ID de inicio de sesión predeterminado que se utiliza para todas las transacciones de integración procesadas por una cola JMS entrante.
3. Opcional: Puede configurar un directorio global en el que una única ubicación de archivo pueda contener archivos relacionados con la integración en el sistema de archivos. Los servidores de Maximo Asset Management deben tener acceso al directorio global del sistema de archivos. Por ejemplo, cuando se utiliza un punto final basado en archivo que no tiene configurada una ubicación de archivo, el archivo generado por el punto final se coloca en un directorio predeterminado del directorio global. Puede configurar el nombre del directorio global en la propiedad del sistema mxe.int.globaldir.
Activación de la tarea cron para colas JMS
Para el procesamiento asíncrono, los mensajes de integración se colocan en colas JMS. Las tareas cron sondean las colas JMS frecuentemente y luego procesan los mensajes encontrados en las colas.
Procedimiento
1. En la aplicación Configuración de tarea cron, busque la tarea cron JMSQSEQCONSUMER.
2. Verifique que la tarea cron esté configurada para sondear tanto la cola SEQQIN como la cola SEQQOUT.
3. Establezca la casilla de verificación Activa para cada cola. 4. Pulse Guardar.
5. Haga clic en la acción Recargar solicitud.
Exportación de datos a un archivo de prueba
Para validar que el proceso de salida se ha configurado y habilitado correctamente, ejecute una exportación de prueba.
Acerca de esta tarea
Para probar el proceso de salida, esta tarea utiliza la función de exportación de datos para exportar un registro de persona a un archivo. La tarea utiliza los siguientes componentes de integración predefinidos:
v Sistema externo: EXTSYS1
v Canal de publicación: MXPERSONInterface, que utiliza la estructura de objeto MXPERSON
v Punto final: MXXMLFILE
Procedimiento
1. En la ficha Sistemas, asegúrese de que la casilla de verificación Habilitado esté seleccionada para el sistema externo EXTSYS1.
2. En la ficha Canales de publicación, filtre para el canal de publicación MXPERSONInterface.
3. En la sección Detalles del canal de publicación MXPERSONInterface, especifique MXXMLFILE en el campo Punto final.
4. Pulse en Exportación de datos.
5. En la ventana Exportación de datos, especifique 1 en el campo Recuento para limitar la exportación un solo registro.
Resultados
Si no se especifica una ubicación en la propiedad FILEDIR, el archivo XML se exporta a la ubicación que ha especificado en la propiedad mxe.int.globaldir.
Importación de datos de un archivo de prueba
Para validar que el proceso de entrada esté correctamente configurado y habilitado, ejecute una importación de prueba.
Procedimiento
1. Abra el archivo de prueba que haya exportado en un editor de texto y realice las modificaciones siguientes:
a. Cambie la etiqueta <PublishMXPERSON> por <SyncMXPERSON> para cambiar la operación para el proceso de entrada.
b. Agregue un sufijo al valor LASTNAME, como por ejemplo
LASTNAME_TEST, para facilitar la verificación del cambio cuando importe el archivo de prueba.
c. Guarde el archivo.
2. En la ficha Sistema de la aplicación Sistemas externos, asegúrese de que la casilla de selección Habilitado esté seleccionada para el sistema externo EXTSYS1.
3. En la ficha Servicios empresariales, filtre el servicio empresarial MXPERSONInterface.
4. Seleccione la fila MXPERSONInterface y deseleccione Usar cola continua. 5. Pulse Guardar.
6. Seleccione la fila MXPERSONInterface y pulse Importar datos. 7. En la ventana Importar datos, especifique los valores siguientes:
a. Seleccione la opción Archivo XML.
b. En el campo Especificar archivo de importación, navegue al archivo de prueba modificado y selecciónelo.
8. Pulse Aceptar.
9. En la aplicación Personas, filtre el registro de prueba y verifique que el valor del campo Apellido incluya el sufijo que haya añadido.
10. Suprima el sufijo para restaurar el registro a su valor original y pulse en
Guardar.
Componentes de integración
Según el ámbito y los requisitos de su implementación, puede crear componentes nuevos o copiar, modificar o ampliar los componentes predefinidos.
La duplicación de un componente de integración y la modificación de la copia ofrece varias ventajas. La copia de un componente de integración se convierte en una entidad definida por el usuario y las restricciones de modificación que se aplican al componente predefinido no se aplican a la copia. La versión original del componente no se modifica. Para evitar la modificación de un componente se utiliza para el procesamiento de transacciones, realice todas las modificaciones en modalidad de administrador.
Estructuras de objetos
Management. Una estructura de objeto está formada por uno o varios objetos de negocio relacionados que definen el contenido de un mensaje de integración. Una estructura de objeto proporciona el contenido del mensaje de los canales y los servicios, y habilita la importación y la exportación basada en aplicaciones.
Asimismo, una estructura de objeto, por si sola, puede invocarse como un servicio, para dar soporte a las operaciones Crear, Actualizar, Suprimir, Sincronizar y Consultar.
Identificación de objetos
Para identificar los datos que se deben incluir en una estructura de objeto es necesario conocer las aplicaciones y sus objetos asociados. Revise el modelo de datos de una aplicación para determinar qué objetos, tablas de base de datos y vistas contienen los datos que debe transferir a un sistema externo y desde éste. Debe averiguar qué objetos llenan las tablas de base de datos. Generalmente, existe una relación unívoca entre un objeto y una tabla de base de datos. No obstante, en algunos casos, varios objetos graban datos en una tabla individual.
Se proporciona una estructura de objeto predefinida para intercambiar datos en el objeto de persona con un sistema externo. Si no existe ninguna estructura de objeto predefinida, para crear una, determina que los datos que necesita se encuentran en las tablas PERSONA, TELÉFONO, CORR. ELECT. y SMS. Las tablas de base de datos tienen el mismo nombre que los objetos correspondientes. Incluya estos objetos en la estructura de objeto que cree. El nombre de la estructura de objeto debe empezar por un carácter alfabético.
Cuando una estructura de objeto contiene varios objetos, la estructura de objeto se organiza como una jerarquía, con un objeto raíz (el objeto superior o principal) y objetos hijo. Una estructura de objeto puede dar soporte a cualquier cantidad de niveles de objetos en su jerarquía. Debe especificar como relación una relación padre-hijo válida para todos los objetos bajo el nivel superior de la jerarquía y no puede hacer referencia al mismo objeto más de una vez en la misma ramificación de la jerarquía. Cuando cree una estructura de objeto, empiece añadiendo el objeto principal (nivel superior). A continuación, puede añadir más objetos como objetos hijo del objeto padre.
Teclas alternativas
El proceso de mensajes entrantes se basa en los campos de clave de un objeto para encontrar un registro existente en el sistema para dar soporte a las actualizaciones y las supresiones. El proceso predeterminado se basa en la clave primaria para recuperar los registros existentes. A veces, una clave primaria resulta desconocida para una aplicación externa y se define una clave alternativa (conocida por el sistema externo) para permitir la actualización y la supresión de registros por parte del sistema externo.
Un mensaje entrante suele utilizar la clave primaria de un objeto para buscar y procesar registros que ya existen en el sistema. No obstante, a veces una clave primaria es un valor generado internamente que no está disponible para el sistema externo. En estos casos, puede definir una clave alternativa para un objeto y el sistema externo pasa los campos de clave alternativa que utiliza la infraestructura de integración, en lugar de los campos de clave primaria, para recuperar los datos de dicho objeto.
Puede especificar una clave alternativa para un objeto a nivel de objeto o a nivel de estructura de objeto. Si especifica una clave alternativa a nivel de objeto, todas
las estructuras de objeto que incluyen el objeto utilizan la misma clave alternativa. Si especifica una clave alternativa a nivel de estructura de objeto, puede utilizar estructuras de objeto diferentes para especificar una clave alternativa diferente para cada origen de datos externo que utiliza el objeto. Debe definir el índice que constituye una clave alternativa para un objeto en la aplicación Configuración de base de datos. Después de crear el índice, puede seleccionarlo como clave alternativa para el objeto.
Durante el proceso entrante, la infraestructura de integración procesa la clave alternativa y la clave primaria en el orden siguiente:
v Procesa la clave alternativa de la estructura de objeto, si hay una configurada. v Procesa la clave alternativa del objeto, si hay una configurada y no hay una
clave alternativa configurada para la estructura de objeto.
v Utiliza la clave primaria del objeto si no hay una clave alternativa configurada para la estructura de objeto ni para el objeto.
Después de especificar una clave alternativa, los mensajes entrantes pueden fallar si se cambia o se descarta el índice de la clave alternativa.
Campos de objeto
La infraestructura de integración y el sistema externo intercambian un subconjunto de las columnas de datos en los objetos de la estructura de objeto. Con ciertas restricciones, puede controlar el contenido de los campos de objeto del mensaje incluyendo columnas persistentes y no persistentes de objetos individuales. Un objeto de negocio puede tener varios campos, la mayor parte de los cuales es posible que no sean necesarios en un escenario de integración. Cuando configure una estructura de objeto, puede seleccionar qué campos se deben incluir en los mensajes de integración y mejorar el rendimiento de la transferencia de mensajes entre aplicaciones. De forma predeterminada, los objetos de una estructura de objeto incluyen todas las columnas persistentes de los objetos. Una columna persistente es un campo de datos que un objeto utiliza para escribir datos en una tabla de base de datos como parte de su proceso. Para controlar el tamaño del contenido, puede excluir las columnas persistentes que no intercambia con las aplicaciones externas. Sólo las columnas persistentes incluidas forman parte del mensaje XML para los mensajes salientes. Para los mensajes entrantes, sólo se actualizan las columnas de objeto incluidas en la estructura de objeto. No excluya ninguna columna que forme parte de una clave primaria o alternativa.
De forma predeterminada, una estructura de objeto excluye la mayor parte de las columnas no persistentes de los objetos componentes. Una columna no persistente es un campo de datos temporal que un objeto utiliza para los cálculos o el
almacenamiento temporal. Puede incluir columnas no persistentes adicionales en la estructura de objeto. Por ejemplo, los objetos que contienen la columna persistente DESCRIPTION también contienen la columna no persistente
DESCRIPTION_LONGDESCRIPTION. La mayoría de las estructuras de objeto predefinidas incluyen esta columna no persistente porque muchos escenarios de integración requieren campos de descripción detallada. Si este campo no se incluye, no forma parte de los mensajes de integración.
Si cambia el contenido del mensaje de una estructura de objeto que se está utilizando para una tabla de interfaz, se debe volver a generar la tabla de interfaz para reflejar el contenido actualizado de la estructura de objeto.
Consideraciones sobre las tablas de interfaz y los archivos sin
formato
Si utiliza una estructura de objeto para cambiar datos con tablas de interfaz o archivos sin formato, debe garantizar que la estructura de objeto no contenga nombres de columna duplicados.
Debe seleccionar la casilla de verificación Admitir estructura plana para cualquier estructura de objeto que piense utilizar para escenarios de integración de tabla de interfaz o de archivo sin formato. Cuando esta opción está establecida, se
comprueban los mensajes para garantizar que cada columna para cada objeto de la estructura de objeto tenga un nombre exclusivo. Si existen nombres de columna duplicados, puede crear un nombre de campo de alias para los nombres
duplicados. La modificación del alias garantiza que todos los nombres de columna sean exclusivos y que el sistema pueda generar la tabla de interfaz o el archivo sin formato sin errores. Las tablas de interfaz requieren que todas las columnas
incluidas en el objeto correspondiente tengan un nombre de alias de 18 caracteres o menos.
Modificación de una estructura de objeto predefinida
Existen determinadas restricciones si modifica una estructura de objeto predefinida. Puede añadir objetos a una estructura de objeto predefinida, pero no puede
suprimir objetos predefinidos de la estructura de objeto. Para evitar esta restricción, realice un duplicado de la estructura de objeto predefinida para crear una
estructura de objeto definida por el usuario y suprima los objetos de la versión duplicada.
Puede incluir y excluir columnas persistentes y no persistentes, sujetas a las validaciones estándar que se aplican durante el procesamiento de integración. Los mensajes salientes incluyen las columnas para los objetos que añade a una
estructura de objeto. Pruebe los mensajes entrantes para garantizar que las columnas que añade se procesen correctamente. Si las columnas de objeto adicionales no se procesan correctamente, añada una clase de procesamiento de estructura de objeto para manejar el proceso entrante.
Si utiliza la estructura de objeto en tablas de interfaz o archivos sin formato, compruebe los conflictos de alias. Puede producirse un conflicto de alias si dos objetos de una estructura de objeto que da soporte a archivos sin formato tienen columnas con el mismo nombre. Cuando comprueba si hay conflictos de alias, se identifican los nombres duplicados y puede asignar nombres de alias para
utilizarlos como sustitutos para alterar temporalmente el conflicto. Si utiliza tablas de interfaz, vuelva a generar la tabla para cada servicio empresarial o canal de publicación que utilice la estructura de objeto modificada.
Configuración de una estructura de objeto
Puede crear estructuras de objeto nuevas y, en este proceso, generar archivos de esquema, incluir o excluir campos y resolver conflictos de alias. También puede especificar restricciones de configuración entrante, establecer propiedades de configuración avanzadas y configurar la autorización de aplicaciones.
Creación de una estructura de objeto:
Al crear una estructura de objeto, define un grupo de objetos relacionados para que formen parte de un mensaje de integración que intercambia con aplicaciones externas. Puede identificar campos de datos para cada objeto de negocio que determine el contenido de los mensajes de integración.
Acerca de esta tarea
Durante la configuración, puede definir clases Java, si es necesario, que procesen los mensajes entrantes y salientes. También puede definir una aplicación que proporcione reglas de autorización para los mensajes de integración procesados a través de la estructura de objeto. Si la estructura de objeto únicamente está pensada para la creación de consultas y no desea utilizarla para fines de actualización, seleccione la opción Sólo consulta. Si el objeto principal de la estructura de objeto tiene una relación con él mismo como objeto de nivel inferior, establezca la opción Autoreferencia.
Procedimiento
1. En la aplicación Estructuras de objetos, pulse en Nueva estructura de objeto. 2. En el campo Estructura de objeto, especifique un identificador de estructura de
objeto.
3. Opcional: Si va a utilizar la estructura de objeto para operaciones de consulta, marque la casilla de verificación Sólo consulta.
4. Opcional: Si utiliza tablas de interfaz o archivos planos para intercambiar datos entre la infraestructura de integración y un sistema externo, marque la casilla de verificación Admitir estructura plana.
5. En el campo Consumido por, especifique el módulo que utiliza la estructura de objeto.
Opción Descripción
INTEGRACIÓN Infraestructura de integración
GESTORMIGRACIÓN Gestor de migración
INFORMES Informes
OSLC OSLC
6. En la ventana de tabla Objetos de origen, pulse en Fila nueva.
7. Especifique valores en los campos siguientes para crear una jerarquía de objetos de negocio:
v Objeto
v Objeto de nivel superior v Descripción de informes v Relación
v Orden de objeto
8. Pulse Guardar estructura de objeto.
Qué hacer a continuación
Si la casilla de verificación Conflicto de alias está seleccionada en el registro de estructura de objeto, puede agregar o modificar un alias para corregir los nombres de campo duplicados en los objetos de origen. También puede especificar los campos persistentes y no persistentes que desee excluir e incluir en la estructura de objeto.
Configuración de una clave alternativa:
Para configurar una clave alternativa, cree un índice exclusivo en la aplicación de configuración de base de datos y haga referencia a este índice como la clave
Acerca de esta tarea
Si establece la clave alternativa al nivel de objeto, la clave se aplica a todos los usos del objeto en una estructura de objeto. Si establece la clave alternativa en la
estructura de objeto, la clave se aplica al objeto sólo cuando se accede a ella a través de la estructura de objeto seleccionada.
Procedimiento
1. Identifique el campo o los campos de un objeto para utilizarlos como clave alternativa.
2. Seleccione el objeto en la aplicación Configuración de la base de datos. 3. Cree un índice exclusivo para el campo o los campos en la ficha Índices. 4. Especifique este índice en el campo Clave alternativa en una de las fichas
siguientes:
a. En la ficha Objeto de la aplicación Configuración de la base de datos, si desea aplicar la clave alternativa al objeto para todos los orígenes de datos externos.
b. En la ficha Estructuras de objetos de la aplicación Configuración de la base de datos, si desea aplicar la clave alternativa a este uso específico del objeto.
Inclusión de campos no persistentes en la estructura de objeto:
Los objetos de negocios utilizan campos no persistentes para los cálculos o el almacenamiento temporal de datos. De forma predeterminada, los campos no persistentes en un objeto de negocio se excluyen de la definición de la estructura de objeto. Puede incluir datos de campos no persistentes en los mensajes de integración.
Antes de empezar
Si desea cambiar una estructura de objeto predefinida, realice un duplicado de esa estructura de objeto para crear una versión definida por el usuario que pueda modificarse.
Procedimiento
1. En la aplicación Estructuras de objeto, seleccione la estructura de objeto que desee actualizar.
2. Seleccione el objeto de negocio que contiene el campo no persistente que desea incluir.
3. Seleccione la acción Excluir/Incluir campos.
4. Pulse la ficha Campos no persistentes para visualizar los campos no persistentes del objeto de negocio.
5. Especifique si desea que el campo no persistente se incluya o se excluya.
Opción Incluido
Incluir el campo Seleccionado
Excluir el campo Sin seleccionar
Exclusión de campos persistentes de la estructura de objeto:
Los objetos de negocio utilizan campos persistentes para grabar datos de proceso en una base de datos. De forma predeterminada, los campos persistentes están incluidos en la definición de la estructura de objeto. Puede excluir los datos de campos persistentes que no desee correlacionar con un mensaje de integración.
Antes de empezar
Si desea cambiar una estructura de objeto predefinida, realice un duplicado de esa estructura de objeto para crear una versión definida por el usuario que pueda modificarse.
Acerca de esta tarea
No puede excluir un campo que forme parte de una clave primaria. Si excluye un campo persistente de una estructura de objeto predefinida, el objeto asociado puede que no funcione correctamente durante el proceso de los mensajes entrantes. Compruebe los mensajes entrantes para asegurarse de que un campo persistente excluido no afecte al proceso de objetos.
Procedimiento
1. En la aplicación Estructuras de objeto, seleccione la estructura de objeto que desee actualizar.
2. Seleccione el objeto de negocio que contiene el campo persistente que desea excluir.
3. Seleccione la acción Excluir/Incluir campos.
4. Pulse la ficha Campos persistentes para visualizar los campos persistentes del objeto de negocio.
5. Especifique si desea que el campo persistente se excluya o se incluya.
Opción Excluido
Excluir el campo Seleccionado
Incluir el campo Sin seleccionar
6. Pulse Aceptar.
Resolución de conflictos de alias:
Una estructura de objeto que contenga varios objetos y soporte archivos sin formato o tablas de interfaz no puede tener nombres de campo duplicados para cualquiera de los campos de sus objetos. Deberá resolver cualquier conflicto de nombre de campo (alias) para poder generar tablas de interfaz y registros de archivo sin formato.
Acerca de esta tarea
Si existe un conflicto de alias, se selecciona la casilla de verificación Conflicto de
aliasen el registro de estructura de objeto. Sólo puede cambiar un alias si la casilla de verificación Admitir estructura plana está seleccionada en el registro, indicando que los datos se procesan mediante tablas de interfaz o archivos sin formato.
Procedimiento
1. Cuando exista un conflicto de alias, seleccione un objeto de negocios en la tabla Objetos de origen.
2. Seleccione la acción Agregar/modificar alias. Si en un campo existe un alias duplicado, la casilla de verificación Duplicado correspondiente está
seleccionada.
3. Para actualizar un alias duplicado:
a. Pulse en Ver detalles del alias duplicado. b. Especifique un valor nuevo en el campo Alias. c. Pulse Aceptar.
Qué hacer a continuación
Después de resolver todos los conflictos de alias, puede generar tablas de interfaz y registros de archivo sin formato. Si utiliza tablas de interfaz, deberá volver a generar todas las tablas que utilicen la estructura de objeto actualizada. Para volver a generar tablas de interfaz, seleccione la opción Crear tablas de interfaz en la aplicación Sistemas externos.
Establecimiento de restricciones sobre campos en mensajes entrantes:
El procesamiento de integración estándar establece los valores en campos de objeto con los valores correspondientes de un mensaje entrante. Puede establecer un campo como restringido si no desea que el valor se actualice con los mensajes entrantes, por ejemplo, para un campo con un ID interno o en el que una clase de procesamiento proporciona la lógica para establecer el campo.
Procedimiento
1. Seleccione la acción Restricciones de configuración entrante.
2. En la ventana Restricciones de configuración entrante, seleccione el objeto al que desee aplicar restricciones de configuración. La tabla Restricciones de configuración entrante se renueva con una lista de los campos configurados para el objeto seleccionado.
3. Seleccione el recuadro de selección Restringido para cualquier campo que no desee que se actualice con los valores en los mensajes entrantes.
4. Puede seleccionar el recuadro de selección Alterar temporalmente para eliminar las restricciones establecidas para un campo. No puede alterar temporalmente la restricción establecida en algunos campos, por ejemplo, para un campo con un ID generado por el sistema.
5. Pulse Aceptar.
Establecimiento de configuraciones avanzadas para una estructura de objeto:
Puede establecer configuraciones avanzadas para una estructura de objeto para cambiar el comportamiento de proceso predeterminado de los mensajes de integración. Las configuraciones avanzadas incluyen la configuración de cómo se procesan los campos de clave para los objetos hijo, si un evento en un objeto hijo activa un evento correspondiente en el objeto padre, y si se suprimen los datos generados automáticamente.
Procedimiento
2. Deseleccione el recuadro de selección Excluir atributos de clave padre para todo objeto donde desee que se incluyan estos atributos para los objetos hijo. Cuando se selecciona (el valor predeterminado), los campos de clave que existen en un objeto hijo no se incluyen en la sección del mensaje para el objeto hijo si el mismo campo forma parte de la clave del objeto padre. Si deselecciona esta opción, los campos de clave para un objeto hijo siempre se incluyen y el campo se incluye en la sección de objeto hijo del mensaje y en la sección del objeto padre.
3. Deseleccione el recuadro de selección Suprimir datos autogenerados para todo objeto en el que desee retener estos datos. Cuando se selecciona (el valor predeterminado), el proceso de integración siempre suprime los datos de nivel hijo que crea automáticamente la lógica de objetos de negocio cuando se crea el objeto padre. Si deselecciona esta opción, se mantienen los datos adicionales que se generan automáticamente.
4. Seleccione la opción Sucesos de propagación para los objetos en los que desea que un evento en un objeto hijo desencadene un evento en el objeto principal. Cuando configura un canal de publicación para enviar mensajes basándose en un evento de objeto, se configura el escucha de eventos para el objeto principal de la estructura de objeto. En algunos casos, una actualización de un objeto hijo no desencadena un evento en el objeto principal y no se inicia ningún mensaje. Seleccione esta opción si desea que una actualización del objeto hijo
desencadene un evento en el objeto principal sin actualizar el objeto principal. Si un objeto hijo incluye una lógica que desencadena un evento en su objeto padre, no puede habilitarlo ni inhabilitarlo con esta configuración.
Canales y servicios
Los canales y los servicios hacen referencia a una estructura de objeto para su contenido de mensaje y habilitan el intercambio sincrónico y asíncrono de datos con sistemas externos. Dos tipos de canales procesan los mensajes salientes: los canales de publicación y los canales de invocación. Tres tipos de servicio procesan los mensajes entrantes: servicios de estructura de objeto, servicios empresariales y servicios estándar.
Canales de publicación
Un canal de publicación se utiliza para enviar mensajes asíncronos a través de una cola JMS a un sistema externo. Los mensajes del canal de publicación pueden iniciarse utilizando un evento o mediante la función Exportación de datos. La infraestructura de integración incluye canales de publicación predefinidos o puede configurar sus propios canales de publicación. Cuando configura un canal de publicación, debe asociarlo con una estructura de objeto y, de manera opcional, habilitar un escucha de eventos. También debe configurar el canal de publicación con un sistema externo para determinar dónde se entrega el mensaje.
También puede configurar reglas de proceso, clases de proceso Java o una correlación XSL para personalizar el proceso de transacción del canal de publicación.
Configuración de un canal de publicación:
Para utilizar un canal de publicación para la exportación de datos, debe crear el canal de publicación, asociarlo con una estructura de objeto y habilitar un escucha de eventos. También debe configurar un punto final que direcciona la transacción a
un sistema externo especificado. También puede configurar reglas de publicación, clases de proceso Java o correlación de XSL para personalizar el procesamiento de transacciones.
Creación de canales de publicación:
Puede crear un canal de publicación para enviar mensajes de integración a un sistema externo.
Antes de empezar
Antes de crear y configurar un canal de publicación, utilice la aplicación
Estructuras de objetos para configurar la estructura de objeto que desea asociar con el canal de publicación.
Procedimiento
1. En la aplicación Canales de publicación, pulse en Nuevo canal de publicación. 2. En el campo Canal de publicación, especifique el nombre del canal de
publicación.
3. En el campo Estructura de objeto, especifique la estructura de objeto que desea utilizar con el canal de publicación. La sección Subregistros de estructura de objeto se actualiza con detalles de los objetos incluidos en esta estructura de objeto.
4. Opcional: Si desea utilizar una tabla de interfaz como origen de datos, especifique su nombre en el campo Tabla de interfaz. La estructura de objeto debe estar configurada para admitir que se utilicen archivos sin formato con las tablas de interfaz.
5. Opcional: Si desea personalizar la lógica de proceso saliente, especifique las rutas para las clases Java y la hoja de estilo XSL en los campos siguientes: a. Clase de proceso
b. Clase de salida de usuario
c. Mapa XSL
d. Clase de filtro de eventos
Cualquier clase Java que especifique debe formar parte del archivo EAR de la aplicación. Un archivo XSL puede encontrarse en el archivo EAR o en un sistema de archivos accesible.
6. Opcional: Puede configurar reglas de proceso para el canal de publicación. 7. Opcional: Si es necesario, deseleccione la casilla de verificación Retener objetos
para evitar que el canal de publicación procese reglas basadas en objetos de negocios.
8. Pulse en Guardar canal de publicación.
Qué hacer a continuación
Puede habilitar un escucha de canal de publicación para indicar a la infraestructura de integración que cree y procese el canal de publicación seleccionado. También puede utilizar la aplicación Sistemas externos para asociar el canal de publicación con un sistema externo e identificar un punto final para la entrega de mensajes desde el canal de publicación.
Habilitación de escuchas de canal de publicación:
Habilite un escucha de eventos en un canal de publicación para supervisar la actividad de los procesos en los objetos de canal de publicación asociados. El proceso del canal de publicación se inicia cuando se produce un evento en el objeto principal de la estructura de objeto asociada.
Procedimiento
1. En la aplicación Canales de publicación, seleccione el canal de publicación que desea configurar con un escucha de eventos.
2. Seleccione la acción Habilitar escucha de eventos.
3. Pulse Aceptar para habilitar el escucha del canal de publicación. Los detalles del canal de publicación se actualizan y se selecciona la casilla de verificación
Escucha de eventos.
Qué hacer a continuación
Seleccione la acción Inhabilitar escucha de eventos si desea inhabilitar la escucha de eventos en algún momento.
Canales de invocación
Los canales de invocación definen la lógica de procesamiento y la correlación de datos de entrada y salida, lo que permite a la infraestructura de integración llamar a aplicaciones externas y procesar respuestas. No se suministran canales de
invocación predefinidos.
Creación de canales de invocación:
Puede crear un registro de canal de invocación para enviar datos de salida desde una estructura de objeto a un sistema externo y para procesar las respuestas desde el sistema externo.
Antes de empezar
Debe incluir la clase de proceso definida, la clase de salida del usuario y los archivos de correspondencia XSL en el archivo EAR de la aplicación. También debe definir una ruta de archivo de correspondencia XSL a la que el servidor de
aplicaciones pueda acceder.
Procedimiento
1. En la aplicación Canales de invocación, pulse en Nuevo canal de invocación. 2. En el campo Canal de invocación, especifique un identificador de canal de
invocación.
3. Especifique valores en los campos siguientes: v Adaptador
v Punto final
4. Opcional: Si este canal de invocación procesa respuestas desde una aplicación externa, seleccione la casilla de verificación Respuesta de proceso.
5. En la ventana de tabla Configuración de petición de servicio, especifique valores en los campos siguientes:
Opción Descripción
Estructura de objeto de solicitud La estructura de objeto utilizada para definir el contenido para el proceso de datos de salida.
Clase de proceso de solicitud El archivo de clase Java que se utiliza cuando el canal de invocación requiere lógica de proceso de salida predefinida. Salida de usuario de solicitud El archivo de clase que utiliza el canal de
invocación para personalizar la lógica de proceso de salida predefinida.
Archivo XSL de solicitud El archivo XSL que se utiliza para personalizar la correlación de canales de invocación de salida predefinidos.
6. Opcional: Si ha seleccionado la casilla de verificación Respuesta de proceso, especifique valores en los campos siguientes en la ventana de tabla
Configuración de respuesta de servicio:
Opción Descripción
Estructura de objeto de respuesta La estructura de objeto que se utiliza para definir el contenido para la respuesta. Clase de proceso de respuesta El archivo de clase Java que se utiliza cuando el canal de invocación requiere lógica de proceso de entrada predefinida para la respuesta.
Clase de salida de usuario de respuesta El archivo de clase que utiliza el canal de invocación para personalizar la lógica de proceso de entrada predefinida para la respuesta.
Archivo XSL de respuesta El archivo XSL que se utiliza para personalizar la correlación de canales de invocación de entrada predefinidos para la respuesta.
7. Pulse en Guardar canal de invocación.
Qué hacer a continuación
Puede ver el esquema XML de la estructura de objeto utilizando un URL con el formato siguiente:
http://localhost:puerto/meaweb/schema/service/nombre_estructura_objeto
Configuración de una acción para llamar a un canal de invocación:
La infraestructura de integración proporciona una clase de acción predeterminada que se puede configurar como una acción del sistema. Al proporcionar esta clase de acción, puede configurar un control de interfaz de usuario, una escalabilidad o un flujo de trabajo para invocar un servicio externo utilizando un canal de invocación.
Procedimiento
1. Cree un canal de invocación en la aplicación Canales de invocación. 2. Cree una acción en la aplicación Acciones.
3. Especifique un objeto para la acción. Este objeto debe ser el mismo que el objeto principal de la estructura de objeto de solicitud del canal de invocación y el objeto principal de la aplicación, el flujo de trabajo o la escalabilidad que invoca la acción.
4. Especifique Clase personalizada en el campo Tipo.
5. Especifique el nombre de la clase personalizada en el campo Variable. Puede utilizar el nombre de la clase predeterminada proporcionada para este fin, psdi.iface.action.InvokeCustomClass, o un nombre de clase alternativo si ha creado su propia clase personalizada para invocar un sistema externo.
6. Especifique valores en el campo Parámetros/Atributos. Especifique los valores en el orden siguiente y separe cada valor con una coma:
a. Necesario: El nombre del canal de invocación que se debe utilizar. EL valor debe ser exactamente el mismo que el nombre del canal de invocación. b. Opcional: El nombre de la relación que se debe utilizar si el objeto principal
de la estructura de objeto de respuesta es diferente del objeto principal de la estructura de objeto de solicitud en el canal de invocación. Si el objeto de respuesta es el mismo que el objeto de solicitud, no se requiere ninguna relación.
c. Opcional: Si ha especificado una relación, especifique la acción que se debe aplicar. La acción predeterminada es Agregar, que crea registros. Para actualizar registros existentes, especifique Cambiar como acción. Si las estructuras de objeto de respuesta y solicitud coinciden, los objetos se actualizan si los campos actualizados están correlacionados en la estructura de objeto de respuesta.
7. Especifique si hay que aplicar la acción a todas las aplicaciones, a flujos de trabajo o a aplicaciones.
8. Guarde la acción.
Qué hacer a continuación
Asocie una aplicación, un flujo de trabajo o una escalabilidad con la acción. El objeto principal se pasado a la clase de acción y luego a la estructura de objeto del canal de invocación para formar el XML de la solicitud.
Invocación de un sistema externo desde una aplicación:
Después de configurar una clase de acción para invocar un sistema externo (mediante un canal de invocación), puede configurar un botón en una aplicación para desencadenar la acción de invocación. También puede ampliar la clase de acción para visualizar los resultados de la transacción en cuadro de diálogo de aplicación.
Antes de empezar
Debe crear un canal de invocación y una clase de acción antes de añadir la acción de invocación a una aplicación. Si desea mostrar los resultados de la invocación, cree previamente una ventana Resultados (diálogo).
Procedimiento
1. Abra la aplicación en la aplicación Diseñador de aplicaciones. El objeto principal de esta aplicación debe ser el mismo que el objeto principal para el canal de invocación y la acción que desea invocar desde la aplicación.
2. Agregue un control Grupo de botones al espacio de trabajo desde la paleta de control. El control Grupo de botones añade automáticamente un control Botón al espacio de trabajo.
3. Pulse Propiedades para abrir la ventana Propiedades del botón.
4. Especifique un nombre para el botón en el campo Valor, por ejemplo, Invocar sistema externo.
5. Especifique el ID de control para la ventana Resultados en el campo ID de
destino.
6. Especifique un método en el campo Valor que invoque el canal de invocación y redirija los resultados a la ventana Resultados. Por ejemplo:
InvokeChannelCache.getInstance().getInvokeChannel(channelName) .invoke(metaData, mbo, mbo.getMboSet(rel), action, null);
Donde:
v El valor de channelName es el nombre del canal de invocación. v El valor de mbo es el nombre del objeto.
v El valor de rel es el nombre de la relación (si resulta aplicable). v El valor de action es Añadir.
Servicios de estructura de objeto
Al configurar una estructura de objeto, no es necesario realizar tareas de
configuración adicionales para que esté disponible como servicio o recurso REST.
Conceptos relacionados:
“API de REST” en la página 243
La API (interfaz de programación de aplicaciones) de REST (Representational State Transfer) proporciona una manera para que las aplicaciones externas consulten y actualicen datos de aplicación en motor de automatización de procesos de Tivoli.
Servicios empresariales
Un servicio empresarial es un conducto para consultar datos externos e importar datos desde un sistema externo. Un servicio empresarial puede procesar datos de forma síncrona (sin una cola) o asíncrona (con una cola). Los servicios
empresariales pueden utilizar múltiples protocolos como, por ejemplo, servicios web y HTTP.
Un servicio empresarial tiene capas de proceso de datos que transforman datos y aplican reglas de proceso empresarial a los datos antes de que alcanzar los objetos de destino. Cuando el mensaje de entrada alcanza la capa de la estructura de objeto, el mensaje XML debe tener el formato del esquema de objetos. La
infraestructura de integración puede entonces procesar el mensaje correctamente. Puede configurar un servicio empresarial para que implemente el siguiente proceso de transacciones:
v Reglas de proceso
v Clase de proceso de salida de usuario v Clase de proceso de servicio empresarial v Correlación XSL
El gateway es el punto de acceso para los mensajes de servicio empresarial, excluidos los que se entregan directamente a la cola de integración desde una cola externa. Para algunos escenarios de integración, puede resultar útil configurar propiedades de pasarela, por ejemplo, si se proporcionan propiedades como los ID del sistema dentro del mensaje XML, en lugar de en la información de cabecera.
Puede configurar una clase Java de intérprete para cambiar el ID del sistema externo, el ID de servicio empresarial u otras propiedades de la cabecera de mensajes JMS proporcionadas en un mensaje de entrada. Alternativamente, puede configurar las propiedades de pasarela en la aplicación Servicios empresariales.
Configuración de un servicio empresarial:
Al crear un servicio empresarial, lo asocia con una estructura de objeto. También puede configurar propiedades de pasarela que se agregan a los datos de cabecera de los mensajes entrantes.
Creación de un servicio empresarial:
Puede crear un registro de servicio empresarial para recibir datos entrantes de un sistema externo. En el servicio empresarial, puede identificar la transformación de datos y las normas de proceso que la infraestructura de integración utiliza para recibir datos entrantes de un sistema externo.
Antes de empezar
Antes de crear y configurar un servicio empresarial, utilice la aplicación Estructuras de objetos para configurar una estructura de objeto que asocie al servicio empresarial.
Acerca de esta tarea
Cuando la casilla de verificación Usar esquema externo está seleccionada, los campos Rótulo de división, Archivo de esquema externo y Elemento de esquema
externose pueden editar. Los valores de esquema externo identifican la ubicación del esquema y el nombre del elemento de raíz externo.
Procedimiento
1. En la aplicación Servicios empresariales, pulse en Nuevo servicio empresarial. 2. En el campo Servicio empresarial, especifique un identificador de servicio
empresarial.
3. Especifique valores en los campos siguientes: v Estructura de objeto
v Adaptador
4. Opcional: Especifique valores en los campos siguientes:
Opción Descripción
Operación Determina de qué manera procesa los
datos el servicio empresarial. Por ejemplo, puede sincronizar objetos o crear objetos nuevos.
También puede actualizar, suprimir o consultar los objetos existentes.
Control de multiplicación Determina el control de referencia cruzada que el servicio empresarial utilizará para multiplicar los mensajes entrantes para varias organizaciones o plantas.
Tabla de interfaz Refleja el contenido de las estructuras de objeto de servicio empresarial.