Beispiel: JAX-WS-Eigenschaften zum Bearbeiten von SOAP-Headern verwenden
WebSphere Application Server stellt Erweiterungen für die Clientprogrammiermodelle Java™ API for XML-Based Web Services (JAX-WS) und Web Services for Java Platform, Enterprise Edition (Java EE) bereit, einschließlich der Eigenschaften "jaxws.binding.soap.headers.outbound" und "jaxws.binding.soap.headers.inbound". Dieses Beispiel zeigt, wie JAX-WS-Eigenschaften zum Bearbeiten von SOAP-Headern verwendet werden.

1 //HashMap-Objekte für die SOAP-Header abgehender Anforderungen erstellen
2 Map<QName, List<String>> outboundHeaders=messageContext.get("jaxws.binding.soap.headers.outbound");
34 // "AtmUuid1" und "AtmUuid2" zur Zuordnung abgehender Anforderungen hinzufügen
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 // Zuordnung abgehender Anforderungen im Objekt MessageContext, das an die JAX-WS-Handlermethode übergeben wird
12 messageContext.put("jaxws.binding.soap.headers.outbound", outboundHeaders);
Rufen Sie in Zeile 2 die SOAP-Header-Zuordnung abgehender Anforderungen aus dem Parameter MessageContext ab, der an die JAX-WS-Handlermethode übergeben wird.
In den Zeilen 5 bis 10 werden die Headerelemente AtmUuid1 und AtmUuid2 zur Zuordnung abgehender Anforderungen hinzugefügt.
In der Zeile 12 wird die Zuordnung abgehender Anforderungen im JAX-WS-Handlerkontext definiert, was zur Folge hat, dass die Header AtmUuid1 und AtmUuid2 zur Anforderungsnachricht hinzugefügt werden. Dieser Code ist nicht erforderlich, da die Zuordnung abgehender Anforderungen eine zeitnahe Zuordnung ist.
JAX-WS-Handlermethoden können auch bestimmte Header aus der Zuordnung abrufen und, falls gewünscht, Header oder ganze Headerlisten entfernen.