Ejemplo: Utilización de propiedades de JAX-WS para manipular las cabeceras SOAP en un manejador JAX-WS

WebSphere Application Server facilita extensiones para los modelos de programación de cliente de la API de Java™ para servicios web basados en XML (JAX-WS) y servicios web para Java EE (Java Platform, Enterprise Edition), incluidas las propiedades jaxws.binding.soap.headers.outbound y jaxws.binding.soap.headers.inbound. En este ejemplo se muestra cómo utilizar estas dos propiedades para manipular cabeceras SOAP en un manejador JAX-WS.

Avoid trouble Avoid trouble: Estas extensiones de API y las API estándar no pueden utilizarse para manipular cabeceras SOAP en el mismo manejador JAX-WS. Deberá decidir si desea utilizar estas extensiones o las API estándar al configurar el procesamiento de manipulación de cabeceras SOAP de un manejador JAX-WS.gotcha
El ejemplo de programación siguiente ilustra cómo establecer dos cabeceras SOAP de solicitud y recuperar una respuesta de cabecera SOAP en un contexto de manejador JAX-WS:
1  //Crear los mapas de totales para las cabeceras SOAP de salida
2  Map<QName, List<String>> outboundHeaders=messageContext.get("jaxws.binding.soap.headers.outbound"); 
3
4  //Añadir "AtmUuid1" y "AtmUuid2" a la correlación de salida
5  List<String> list1 = new ArrayList<String>();
6  list1.add("<AtmUuid1 xmlns=\"com.rotbank.security\"><uuid>ROTB-0A01254385FCA09</uuid></AtmUuid1>");
7  List<String> list2 = new ArrayList<String>();
8  list2.add("<AtmUuid2 xmlns=\"com.rotbank.security\"><uuid>ROTB-0A01254385FCA09</uuid></AtmUuid2>"
9  outboundHeaders.put(new QName("com.rotbank.security", "AtmUuid1"), list1);
10 outboundHeaders.put(new QName("com.rotbank.security", "AtmUuid2"), list2);
11 // Establecer la correlación de salida en el objeto MessageContext, que se pasa al método del manejador JAX-WS
12 messageContext.put("jaxws.binding.soap.headers.outbound", outboundHeaders);

En la línea 2, recuperar la correlación de cabecera SOAP de salida del parámetro MessageContext, que se pasa al método del manejador JAX-WS.

En las líneas 5-10, se añaden los elementos de cabecera AtmUuid1 y AtmUuid2 a la correlación de salida.

En la línea 12, la correlación de salida se establece en el contexto de manejador JAX-WS, que hace que las cabeceras AtmUuid1 y AtmUuid2 se añadan al mensaje de solicitud. Este código no es necesario porque la correlación outboundHeaders es una correlación activa.

Los métodos del manejador JAX-WS también pueden recuperar cabeceras específicas de la correlación y eliminar cabeceras o listas completas de cabeceras, si así se desea.

Nota: Utilice únicamente estas API o únicamente las API estándar para procesar un mensaje. No las mezcle.

Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwbs_manipulatesoapjaxwshandler
File name: rwbs_manipulatesoapjaxwshandler.html