jueves, 18 de mayo de 2017

Logear SOAP Envelope de los mensajes Request y Response en BPEL 12c


En este articulo se explicará como obtener y logear los mensajes SOAP intercambiados con un Web Service desde SOA BPEL 12c.

Por alguna razón, BPEL en sí no posee una actividad "Log" como en el caso de OSB. Por ende, debemos recurrir a otras estrategias a la hora de logear mensajes en composites SOA.

Adicionalmente, es importante remarcar que los atributos bpelx:inputHeaderVariable y bpelx:outputHeaderVariable de una actividad invoke/receive en un BPEL, permiten agregar o recuperar SOAP Headers personalizados a un mensaje SOAP intercambiado con un Web Service.






Si lo que se desea es ver todo el mensaje SOAP (Header y Body) no es posible por defecto desde la consola del Enterprise Manager (EM Console) o los logs de WebLogic.

Para poder ver la comunicación entre un Web Service y un Composite SOA, se pueden seguir los pasos descritos a continuación.


Pasos a seguir

1)- Abrir el Composite SOA (archivo: composite.xml).

2)- Adjuntar la Política llamada oracle/log_policy a la referencia del Web Service donde se necesita monitorear los mensajes SOAP.

Para ello, hacer clic derecho sobre la referencia del Web Service y seleccionar Configure SOA WS Policies...



3)- Hacer clic en botón en el apartado Management y añadir la política  oracle/log_policy a la referencia del Web Service.



4)- Redeployar el composite SOA.

5)- Comprobar el siguiente archivo de log  para ver los mensajes SOAP cada vez que se raliza una llamada al WebService:
$MDW_HOME/<nombre_dominio>/servers/<nombre_servidor>/logs/owsm/msglogging/diagnostic.log


Advertencia: por alguna razón, no siempre WebLogic actualiza la fecha y hora de modificación del archivo diagnostic.log por ende, abrir dicho archivo igualmente y ver que registros posee.

No hay comentarios:

Publicar un comentario