SOAP-over-JMS-Nachrichtentypen konfigurieren
Sie können Ihre SOAP-over-JMS-Anforderungs- und -Antwortnahrichten so konfigurieren, dass sie entweder BytesMessage- oder TextMessage-Objekte verwenden.
Vorbereitende Schritte
Wenn über den JMS-Transport auf einen Web-Service zugegriffen werden soll, muss dieser als Enterprise-Bean implementiert sein.
Informationen zu diesem Vorgang
Für Ihre Web-Services, die das aufstrebende Branchenstandardprotokoll "SOAP over JMS" verwenden, können Sie die SOAP-over-JMS-Anforderungen und -Antworten konfigurieren, um festzulegen, ob die Nachrichten in JMS-BytesMessage- (javax.jms.BytesMessage) oder in TextMessage-Objekten (javax.jms.TextMessage) übertragen werden. Der Standardnachrichtentyp ist BytesMessage.
Hat die JMS-Nachricht den Typ "BytesMessage", besteht der Hauptteil der JMS-Nachricht aus Binärdaten.
Hat die JMS-Nachricht den Typ "TextMessage", besteht der Hauptteil der JMS-Nachricht aus Zeichenfolgedaten. Sie sollten über die Konfiguration von Textnachrichten nachdenken, wenn Sie eine Prüf- oder Protokolleinrichtung implementieren möchten, die von Personen lesbare JMS-Nachrichten erfordert.
- Speicherbelegung -
Die Nutzdaten in einem TextMessage-Objekt sind zeichenfolgebasiert, und da die einzelnen Zeichen auf der Zeichencodierung UTF-16 basieren, belegen die Nutzdaten in einem TextMessage-Objekt wahrscheinlich zweimal so viele Bytes wie in einem entsprechenden BytesMessage-Objekt. Für Anforderungs- und Antwortnachrichten mit wenig Nutzdaten ist die Differenz bei der Speicherbelegung zwischen TextMessage- und BytesMessage-Objekten möglicherweise nicht von Bedeutung, aber bei sehr vielen Nutzdaten kann die Differenz bei der Speicherbelegung für Ihre Geschäftsumgebung eine wichtige Rolle spielen.
- Binäre Anhänge -
Wenn ein JMS-TextMessage-Objekt für den Transaport von Anforderungs- und Antwortnachrichten verwendet wird, müssen alle eingeschlossenen binären Anhänge sowie der Hauptteil der SOAP-Nachricht Base64-verschlüsselt sein, weil die zugrunde liegenden Nachrichtennutzdaten zeichenfolgebasiert sind. Wenn binäre Anhänge Base64-verschlüsselt sind, nehmen Verarbeitungszeit und Speicherbedarf für die Durchführung der Umsetzung dieser Daten zu. Deshalb ist es möglich, dass ein Base64-verschlüsselter binärer Anhang bis zu einem Drittel größer ist als die ursprüngliche nicht verschlüsselte Version des Anhangs. Wenn dieser größere verschlüsselte Anhang dann in zeichenfolgebasierten Nachrichtennutzdaten übertragen wird, kann die Speicherbelegung beim Transport des binären Anhangs fast dreimal so hoch sein wie beim ursprünglichen nicht verschlüsselten binären Anhang in einem BytesMessage-Objekt.
Vorgehensweise
Ergebnisse
Sie haben einen Web-Service-Client für die Verwendung von TextMessage- oder BytesMessage-Objekten konfiguriert, wenn das Protokoll "SOAP over JMS" für die Übertragung von Anforderungs- und Antwortnachrichten verwendet wird.