|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object javax.xml.soap.MessageFactory
public abstract class MessageFactory
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()
新しい MessageFactory オブジェクトを作成し、デフォルトの実装インスタンスにします (SOAP 1.1)。 |
static MessageFactory |
newInstance(String protocol)
新しい MessageFactory オブジェクトを作成し、指定の実装インスタンスにします(動的なメッセージファクトリ、SOAP 1.1 メッセージファクトリ、またはSOAP 1.2 メッセージファクトリ)。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public MessageFactory()
メソッドの詳細 |
---|
public static MessageFactory newInstance() throws SOAPException
MessageFactory
オブジェクトを作成し、デフォルトの実装インスタンスにします (SOAP 1.1)。
このメソッドは次の順序の検索手順で、ロードする MessageFactory 実装クラスを決定します。
MessageFactory
の新しいインスタンス
SOAPException
- MessageFactory
のデフォルト実装の作成でエラーが発生した場合SAAJMetaFactory
public 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
の実装の作成でエラーが発生した場合SAAJMetaFactory
public abstract SOAPMessage createMessage() throws SOAPException
SOAPPart
、SOAPEnvelope
、SOAPBody
、およびSOAPHeader
オブジェクトを使用して、SOAPMessage
オブジェクトを新しく作成します。プロファイル固有のメッセージファクトリは、プロファイル固有のヘッダーを持つ SOAPMessage
オブジェクトをあらかじめ作成することを選択できます。
このメッセージの SOAPPart
オブジェクトにはコンテンツを追加できます。SOAP 部分のみを含むメッセージが十分足りている場合、メッセージはそのままの状態で送信できます。足りていない場合、SOAPMessage
オブジェクトは必要な分 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
をスローしてはいけない
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。