ナビゲーションリンクをスキップ

Jakarta EE Platform API v9.0.0

パッケージ jakarta.xml.soap

SOAP メッセージを作成および構築するための API を提供します。

参照先: 説明

パッケージ jakarta.xml.soap の説明

SOAP メッセージを作成および構築するための API を提供します。このパッケージは、Jakarta SOAP withAttachments 仕様で定義されています。

jakarta.xml.soap パッケージの API を使用すると、次のことができます。

このドキュメントでの SAAJ への参照は、特に明記されていない限り、添付ファイル API を備えた Jakarta SOAP を指します。
このドキュメントでの JAXB への参照は、特に明記されていない限り、Jakarta XML Binding を指します。

さらに、jakarta.xml.soap パッケージの API は、org.w3c.dom パッケージの対応する API を継承します。これは、SOAPMessage の SOAPPart も DOM レベル 2 Document であり、DOM を使用するアプリケーション、ツール、ライブラリによってそのように操作できることを意味します(詳細については、http://www.w3.org/DOM/ を参照してください)。DOM API を使用して通常の DOM ノードを SAAJ ツリーに追加することは可能ですが、ツリーを調べたり操作したりする場合は、SAAJAPI が SAAJ 型を返す必要があることに注意してください。これを実現するために、SAAJ API(具体的には SOAPElement.getChildElements())は、SAAJ 要件に関連して誤って型付けされたオブジェクトを、必要な型の同等のオブジェクトにサイレントに置き換えることができます。これらの置換によってツリーの論理構造が変更されることは決してないため、DOM API の観点からは、ツリーは変更されません。ただし、ツリーの物理的構成が変更され、置き換えられたノードへの参照は、ツリーの一部ではなくなったノードを参照するようになります。SAAJ API は、必要がない場合はこれらの置換を行うことを許可されていないため、置換オブジェクトがその後 SAAJAPI への呼び出しによってサイレントに置換されることはありません。

これが実際に意味することは、DOMAPI を使用してツリーを操作した後にツリーで SAAJAPI の使用を開始するアプリケーションは、ツリーがすべての SAAJ ツリーに変換され、ツリー内のオブジェクトへの参照が取得されたと想定する必要があるということです。DOMAPI の使用は無効になりました。SAAJAPI から DOMAPI に切り替えると、無効な参照が発生することは許可されておらず、SAAJAPI を排他的に使用することもできません。無効な参照のリスクを引き起こすのは、特定の SAAJ ツリーでの DOMAPI の使用から SAAJAPI の使用への切り替えのみです。

SAAJ 実装の発見

特定の実装を検出してロードするために、SAAJAPI で定義されているいくつかのファクトリがあります。

最初の 3 つは、一般的なルックアップ手順を使用して実装クラスを決定する newInstance() メソッドを定義します。
ナビゲーションリンクをスキップ

Jakarta EE Platform API v9.0.0

Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.