public abstract class MessageFactory extends Object
SOAPMessage オブジェクトを作成するためのファクトリです。
SAAJ クライアントは、newInstance メソッドを使用して MessageFactory オブジェクトを作成できます。このコードの例を次に示します。
MessageFactory mf = MessageFactory.newInstance();
MessageFactory mf12 = MessageFactory.newInstance(SOAPConstants.SOAP_1_2_PROTOCOL);
その作成方法に関係なく、すべての MessageFactory オブジェクトは、デフォルトで次の要素を持つ SOAPMessage オブジェクトを生成します。
SOAPPart オブジェクト
SOAPEnvelope オブジェクト
SOAPBody オブジェクト
SOAPHeader オブジェクト
SOAPHeader オブジェクトや SOAPBody オブジェクトに、追加のエントリであらかじめ作成されたメッセージを生成する特殊な MessageFactory オブジェクトが含まれていることがあります。新しい SOAPMessage オブジェクトのコンテンツは、作成時に次の 2 つの MessageFactory メソッドのうちどちらが使用されるかによって異なります。
createMessage() createMessage(MimeHeaders, java.io.InputStream) -- InputStream オブジェクトのコンテンツと MimeHeaders オブジェクトのヘッダーを持つメッセージ| コンストラクタと説明 |
|---|
MessageFactory() |
| 修飾子と型 | メソッドと説明 |
|---|---|
abstract SOAPMessage |
createMessage()
デフォルトの
SOAPPart、SOAPEnvelope、SOAPBody、および SOAPHeader オブジェクトを使用して、SOAPMessage オブジェクトを新しく作成します。 |
abstract SOAPMessage |
createMessage(MimeHeaders headers, InputStream in)
指定された
InputStream オブジェクトの内容を新しい SOAPMessage オブジェクトに内部化し、その SOAPMessage オブジェクトを返します。 |
static MessageFactory |
newInstance()
デフォルトの実装 (SOAP 1.1) のインスタンスである、新しい
MessageFactory オブジェクトを作成します。
このメソッドは次の順序の検索手順で、ロードする MessageFactory 実装クラスを決定します。
javax.xml.soap.MessageFactory システムプロパティーを使用します。 |
static MessageFactory |
newInstance(String protocol)
指定された実装のインスタンスである、新しい
MessageFactory オブジェクトを作成します。 |
public static MessageFactory newInstance() throws SOAPException
MessageFactory オブジェクトを作成します。
このメソッドは次の順序の検索手順で、ロードする MessageFactory 実装クラスを決定します。
MessageFactory の新しいインスタンスSOAPException - MessageFactory のデフォルト実装の作成でエラーが発生した場合。SAAJMetaFactorypublic static MessageFactory newInstance(String protocol) throws SOAPException
MessageFactory オブジェクトを作成します。(動的なメッセージファクトリ、SOAP 1.1 メッセージファクトリ、または SOAP 1.2 メッセージファクトリ)。動的なメッセージファクトリは、createMessage メソッドの引数として指定された MIME ヘッダーに基づいてメッセージを作成します。
このメソッドは SAAJMetaFactory を使用して実装クラスを検索し、MessageFactory のインスタンスを作成します。protocol - 指定のメッセージファクトリ実装のクラスを表す文字列定数。DYNAMIC_SOAP_PROTOCOL、DEFAULT_SOAP_PROTOCOL (SOAP_1_1_PROTOCOL と同じ)、または SOAP_1_2_PROTOCOL のいずれかを指定できます。MessageFactory の新しいインスタンスSOAPException - 指定の MessageFactory の実装の作成でエラーが発生した場合。SAAJMetaFactorypublic abstract SOAPMessage createMessage() throws SOAPException
SOAPPart、SOAPEnvelope、SOAPBody、および SOAPHeader オブジェクトを使用して、SOAPMessage オブジェクトを新しく作成します。プロファイル固有のメッセージファクトリは、プロファイル固有のヘッダーを持つ SOAPMessage オブジェクトをあらかじめ作成することを選択できます。
このメッセージの SOAPPart オブジェクトにはコンテンツを追加できます。SOAP 部分のみを含むメッセージが十分足りている場合、メッセージは「そのままの状態で」送信できます。足りていない場合、SOAPMessage オブジェクトは 1 つ以上の AttachmentPart オブジェクトを作成し、それらを自身に追加する必要があります。XML 形式でないコンテンツは AttachmentPart オブジェクト内にある必要があります。
SOAPMessage オブジェクトSOAPException - SOAP エラーが発生した場合UnsupportedOperationException - この MessageFactory インスタンスのプロトコルが DYNAMIC_SOAP_PROTOCOL の場合public abstract SOAPMessage createMessage(MimeHeaders headers, InputStream in) throws IOException, SOAPException
InputStream オブジェクトの内容を新しい SOAPMessage オブジェクトに内部化し、その SOAPMessage オブジェクトを返します。in - メッセージのデータを含む InputStream オブジェクトheaders - メッセージ作成時にトランスポートに依存しない形式でメッセージに渡されるトランスポート固有のヘッダーInputStream オブジェクトのデータを含む新しい SOAPMessage オブジェクトIOException - 入力ストリームからのデータの読み込みに問題が発生した場合SOAPException - メッセージが無効の場合、スローされるIllegalArgumentException - MessageFactory の headers パラメータに必要な 1 つ以上の MIME ヘッダーが存在しない場合。この理由から、SOAP_1_1_PROTOCOL または SOAP_1_2_PROTOCOL の MessageFactory 実装では、IllegalArgumentException をスローしてはいけない。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.