クラス WebServiceTemplate
- 実装されたすべてのインターフェース:
org.springframework.beans.factory.InitializingBean
,WebServiceOperations
WebServiceMessage
インスタンスを送受信するためのメッセージ駆動型アプローチを提供します。 このクラスを使用するコードは、コールバックインターフェースを実装するか、データを読み取るための Source
SE オブジェクトを提供するか、プラグ可能な Marshaller
サポートを使用するだけで済みます。marshalling methods
を呼び出すには、marshaller
プロパティと unmarshaller
プロパティを設定する必要があります。
このテンプレートは、SoapFaultMessageResolver
を使用して障害レスポンスメッセージを処理します。別の FaultMessageResolver
は、faultMessageResolver
プロパティを使用して定義できます。このプロパティが null
に設定されている場合、障害解決は実行されません。
このテンプレートは、送受信に次のアルゴリズムを使用します。
createConnection()
を呼び出します。- 登録済みメッセージファクトリで
createWebServiceMessage()
を呼び出して、リクエストメッセージを作成します。 - リクエストコールバックがある場合は、
doWithMessage()
を呼び出します。このステップでは、Source
、マーシャリングなどに基づいて、リクエストメッセージにコンテンツを保存します。 - 登録された
interceptors
でhandleRequest()
を呼び出します。インターセプターは順番に実行されます。インターセプターのいずれかがメッセージコンテキストでレスポンスメッセージを作成する場合は、手順 7 にスキップします。 - 接続で
send()
を呼び出します。 hasError()
を呼び出して、接続にエラーがあるかどうかを確認します。HTTP トランスポートの場合、2xx
以外のステータスコードはエラーを示します。ただし、ステータスコード 500 は SOAP 障害を示している可能性もあるため、テンプレートはエラーが障害ではないかどうかを確認します。- 接続にエラーがある場合は、
handleError()
メソッドを呼び出します。このメソッドは、デフォルトでWebServiceTransportException
をスローします。 - 接続にエラーがない場合は、次の手順に進みます。
- 接続で
receive
を呼び出して、レスポンスメッセージがある場合はそれを読み取ります。 - レスポンスがない場合は、
null
またはfalse
を返します。 hasFault()
を呼び出して、レスポンスに障害があるかどうかを判別します。ある場合は、ClientInterceptor.handleFault(MessageContext)
およびhandleFault()
メソッドを呼び出します。- それ以外の場合は、レスポンスエクストラクターで
ClientInterceptor.handleResponse(MessageContext)
とextractData()
を呼び出すか、レスポンスコールバックでdoWithMessage
を呼び出します。 - 接続で
close
を呼び出します。
- 導入:
- 1.0.0
- 作成者:
- Arjen Poutsma
フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSE
メッセージトレースに使用するログカテゴリ。protected static final org.apache.commons.logging.Log
受信メッセージのトレースに使用する追加のロガー。protected static final org.apache.commons.logging.Log
送信メッセージのトレースに使用する追加のロガー。クラス org.springframework.xml.transform.TransformerObjectSupport から継承されたフィールド
logger
コンストラクターの概要
コンストラクターコンストラクター説明デフォルト設定を使用して新しいWebServiceTemplate
を作成します。WebServiceTemplate
(org.springframework.oxm.Marshaller marshaller) 指定されたマーシャラーで新しいWebServiceTemplate
を作成します。WebServiceTemplate
(org.springframework.oxm.Marshaller marshaller, org.springframework.oxm.Unmarshaller unmarshaller) 指定されたマーシャラーとアンマーシャラーを使用して新しいMarshallingMethodEndpointAdapter
を作成します。WebServiceTemplate
(WebServiceMessageFactory messageFactory) 指定されたメッセージファクトリに基づいて新しいWebServiceTemplate
を作成します。メソッドのサマリー
修飾子と型メソッド説明protected <T> T
doSendAndReceive
(MessageContext messageContext, WebServiceConnection connection, WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) MessageContext
を送受信します。URI パラメーターを持たない操作で使用されるデフォルトの URI を返します。URI パラメーターを持たない操作で使用される宛先プロバイダーを返します。このテンプレートの障害メッセージリゾルバーを返します。このテンプレートによって行われたすべての Web サービス呼び出しに適用するクライアントインターセプターを返します。org.springframework.oxm.Marshaller
このテンプレートのマーシャラーを返します。org.springframework.oxm.Unmarshaller
このテンプレートのアンマーシャラーを返します。protected ObjectSE
handleError
(WebServiceConnection connection, WebServiceMessage request) 指定された接続のエラーを処理します。protected ObjectSE
handleFault
(WebServiceConnection connection, MessageContext messageContext) 指定されたレスポンスメッセージの障害を処理します。protected boolean
hasError
(WebServiceConnection connection, WebServiceMessage request) 指定された接続またはメッセージコンテキストにエラーがあるかどうかを判別します。protected boolean
hasFault
(WebServiceConnection connection, WebServiceMessage response) 指定された接続またはメッセージに障害があるかどうかを判別します。protected void
テンプレートの戦略のデフォルトの実装を初期化します:SoapFaultMessageResolver
、SaajSoapMessageFactory
、HttpUrlConnectionMessageSender
。marshalSendAndReceive
(ObjectSE requestPayload) 構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。marshalSendAndReceive
(ObjectSE requestPayload, WebServiceMessageCallback requestCallback) 構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。marshalSendAndReceive
(StringSE uri, ObjectSE requestPayload) 構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。marshalSendAndReceive
(StringSE uri, ObjectSE requestPayload, WebServiceMessageCallback requestCallback) 構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。boolean
sendAndReceive
(StringSE uri, WebServiceMessageCallback requestCallback, WebServiceMessageCallback responseCallback) 指定されたリクエストコールバックで操作できる Web サービスメッセージを送信し、レスポンスコールバックでレスポンスを処理します。<T> T
sendAndReceive
(StringSE uriString, WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) 指定されたコールバックで操作できる Web サービスメッセージを送信し、WebServiceMessageExtractor
で結果を読み取ります。boolean
sendAndReceive
(WebServiceMessageCallback requestCallback, WebServiceMessageCallback responseCallback) 指定されたリクエストコールバックで操作できる Web サービスメッセージを送信し、レスポンスコールバックでレスポンスを処理します。<T> T
sendAndReceive
(WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) 指定されたコールバックで操作できる Web サービスメッセージを送信し、WebServiceMessageExtractor
で結果を読み取ります。<T> T
sendSourceAndReceive
(StringSE uri, SourceSE requestPayload, SourceExtractor<T> responseExtractor) 指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。<T> T
sendSourceAndReceive
(StringSE uri, SourceSE requestPayload, WebServiceMessageCallback requestCallback, SourceExtractor<T> responseExtractor) 指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。<T> T
sendSourceAndReceive
(SourceSE requestPayload, SourceExtractor<T> responseExtractor) 指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。<T> T
sendSourceAndReceive
(SourceSE requestPayload, WebServiceMessageCallback requestCallback, SourceExtractor<T> responseExtractor) 指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。boolean
sendSourceAndReceiveToResult
(StringSE uri, SourceSE requestPayload, ResultSE responseResult) 指定されたペイロードを含む Web サービスメッセージを送信します。boolean
sendSourceAndReceiveToResult
(StringSE uri, SourceSE requestPayload, WebServiceMessageCallback requestCallback, ResultSE responseResult) 指定されたペイロードを含む Web サービスメッセージを送信します。boolean
sendSourceAndReceiveToResult
(SourceSE requestPayload, ResultSE responseResult) 指定されたペイロードを含む Web サービスメッセージを送信します。boolean
sendSourceAndReceiveToResult
(SourceSE requestPayload, WebServiceMessageCallback requestCallback, ResultSE responseResult) 指定されたペイロードを含む Web サービスメッセージを送信します。void
setCheckConnectionForError
(boolean checkConnectionForError) void
setCheckConnectionForFault
(boolean checkConnectionForFault) void
setDefaultUri
(StringSE uri) URI パラメーターを持たない操作で使用されるデフォルトの URI を設定します。void
setDestinationProvider
(DestinationProvider destinationProvider) URI パラメーターを持たない操作で使用される宛先プロバイダー URI を設定します。void
setFaultMessageResolver
(FaultMessageResolver faultMessageResolver) このテンプレートの障害解決ツールを設定します。final void
setInterceptors
(ClientInterceptor[] interceptors) このテンプレートによって行われたすべての Web サービス呼び出しに適用するようにクライアントインターセプターを設定します。void
setMarshaller
(org.springframework.oxm.Marshaller marshaller) このテンプレートのマーシャラーを設定します。void
setUnmarshaller
(org.springframework.oxm.Unmarshaller unmarshaller) このテンプレートのアンマーシャラーを設定します。クラス org.springframework.ws.client.support.WebServiceAccessor から継承されたメソッド
afterPropertiesSet, createConnection, getMessageFactory, getMessageSenders, setMessageFactory, setMessageSender, setMessageSenders
クラス org.springframework.xml.transform.TransformerObjectSupport から継承されたメソッド
createTransformer, getTransformerFactory, newTransformerFactory, setTransformerFactoryClass, transform
フィールドの詳細
MESSAGE_TRACING_LOG_CATEGORY
メッセージトレースに使用するログカテゴリ。- 関連事項:
sentMessageTracingLogger
protected static final org.apache.commons.logging.Log sentMessageTracingLogger送信メッセージのトレースに使用する追加のロガー。receivedMessageTracingLogger
protected static final org.apache.commons.logging.Log receivedMessageTracingLogger受信メッセージのトレースに使用する追加のロガー。
コンストラクターの詳細
WebServiceTemplate
public WebServiceTemplate()デフォルト設定を使用して新しいWebServiceTemplate
を作成します。WebServiceTemplate
指定されたメッセージファクトリに基づいて新しいWebServiceTemplate
を作成します。- パラメーター:
messageFactory
- 使用するメッセージファクトリ
WebServiceTemplate
public WebServiceTemplate(org.springframework.oxm.Marshaller marshaller) 指定されたマーシャラーで新しいWebServiceTemplate
を作成します。指定されたMarshaller
がUnmarshaller
インターフェースも実装している場合、マーシャリングとアンマーシャリングの両方に使用されます。それ以外の場合は、例外がスローされます。Spring のすべての
Marshaller
実装もUnmarshaller
インターフェースを実装するため、このコンストラクターを安全に使用できることに注意してください。- パラメーター:
marshaller
- マーシャラーおよびアンマーシャラーとして使用されるオブジェクト- 例外:
IllegalArgumentExceptionSE
-marshaller
がUnmarshaller
インターフェースを実装していない場合- 導入:
- 2.0.3
WebServiceTemplate
public WebServiceTemplate(org.springframework.oxm.Marshaller marshaller, org.springframework.oxm.Unmarshaller unmarshaller) 指定されたマーシャラーとアンマーシャラーを使用して新しいMarshallingMethodEndpointAdapter
を作成します。- パラメーター:
marshaller
- 使用するマーシャラーunmarshaller
- 使用するアンマーシャラー- 導入:
- 2.0.3
メソッドの詳細
getDefaultUri
URI パラメーターを持たない操作で使用されるデフォルトの URI を返します。setDefaultUri
URI パラメーターを持たない操作で使用されるデフォルトの URI を設定します。通常、このプロパティは設定されているか、
setDestinationProvider(DestinationProvider)
のいずれかですが、両方は設定されていません。- 関連事項:
marshalSendAndReceive(Object)
marshalSendAndReceive(Object,WebServiceMessageCallback)
sendSourceAndReceiveToResult(Source,Result)
sendSourceAndReceiveToResult(Source,WebServiceMessageCallback,Result)
sendSourceAndReceive(Source,SourceExtractor)
sendSourceAndReceive(Source,WebServiceMessageCallback,SourceExtractor)
sendAndReceive(WebServiceMessageCallback,WebServiceMessageCallback)
getDestinationProvider
URI パラメーターを持たない操作で使用される宛先プロバイダーを返します。setDestinationProvider
URI パラメーターを持たない操作で使用される宛先プロバイダー URI を設定します。通常、このプロパティは設定されているか、
setDefaultUri(String)
のいずれかですが、両方は設定されていません。- 関連事項:
marshalSendAndReceive(Object)
marshalSendAndReceive(Object,WebServiceMessageCallback)
sendSourceAndReceiveToResult(Source,Result)
sendSourceAndReceiveToResult(Source,WebServiceMessageCallback,Result)
sendSourceAndReceive(Source,SourceExtractor)
sendSourceAndReceive(Source,WebServiceMessageCallback,SourceExtractor)
sendAndReceive(WebServiceMessageCallback,WebServiceMessageCallback)
getMarshaller
public org.springframework.oxm.Marshaller getMarshaller()このテンプレートのマーシャラーを返します。setMarshaller
public void setMarshaller(org.springframework.oxm.Marshaller marshaller) このテンプレートのマーシャラーを設定します。getUnmarshaller
public org.springframework.oxm.Unmarshaller getUnmarshaller()このテンプレートのアンマーシャラーを返します。setUnmarshaller
public void setUnmarshaller(org.springframework.oxm.Unmarshaller unmarshaller) このテンプレートのアンマーシャラーを設定します。getFaultMessageResolver
このテンプレートの障害メッセージリゾルバーを返します。setFaultMessageResolver
このテンプレートの障害解決ツールを設定します。デフォルトはSoapFaultMessageResolver
ですが、障害処理を無効にするためにnull
に設定することもできます。setCheckConnectionForError
public void setCheckConnectionForError(boolean checkConnectionForError) 接続でエラーインジケータをチェックする必要があるか(true
)、またはこれらを無視する必要があるか(false
)を示します。デフォルトはtrue
です。HTTP トランスポートを使用する場合、このプロパティは、HTTP レスポンスステータスコードが 2xx 成功範囲内にあるかどうかを確認するかどうかを定義します。SOAP 仕様と WS-I 基本プロファイルの両方で、Web サービスは通常のレスポンスに対して "200OK" または "202Accepted" HTTP ステータスコードを返す必要があると定義されています。このプロパティを
false
に設定すると、このテンプレートは不適合なサービスを処理できます。setCheckConnectionForFault
public void setCheckConnectionForFault(boolean checkConnectionForFault) 接続で障害インジケータをチェックする必要があるか(true
)、またはmessage
のみに依存する必要があるか(false
)を示します。デフォルトはtrue
です。HTTP トランスポートを使用する場合、このプロパティは、HTTP レスポンスステータスコードで障害インジケータをチェックするかどうかを定義します。SOAP 仕様と WS-I 基本プロファイルの両方で、レスポンスエンベロープが障害の場合、Web サービスは「500 内部サーバーエラー」HTTP ステータスコードを返す必要があると定義されています。このプロパティを
false
に設定すると、このテンプレートは不適合なサービスを処理できます。getInterceptors
このテンプレートによって行われたすべての Web サービス呼び出しに適用するクライアントインターセプターを返します。- 戻り値:
- エンドポイントインターセプターの配列、または存在しない場合は
null
setInterceptors
このテンプレートによって行われたすべての Web サービス呼び出しに適用するようにクライアントインターセプターを設定します。- パラメーター:
interceptors
- エンドポイントインターセプターの配列、または存在しない場合はnull
initDefaultStrategies
protected void initDefaultStrategies()テンプレートの戦略のデフォルトの実装を初期化します:SoapFaultMessageResolver
、SaajSoapMessageFactory
、HttpUrlConnectionMessageSender
。- 例外:
org.springframework.beans.factory.BeanInitializationException
- 初期化エラーの場合- 関連事項:
marshalSendAndReceive
インターフェースからコピーされた説明:WebServiceOperations
構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスメッセージのマーシャリングされていないペイロードがあれば、それを返します。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のmarshalSendAndReceive
- パラメーター:
requestPayload
- リクエストメッセージペイロードにマーシャリングするオブジェクト- 戻り値:
- レスポンスメッセージのマーシャリングされていないペイロード、またはレスポンスがない場合は
null
- 関連事項:
marshalSendAndReceive
インターフェースからコピーされた説明:WebServiceOperations
構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスメッセージのマーシャリングされていないペイロードがあれば、それを返します。- 次で指定:
- インターフェース
WebServiceOperations
のmarshalSendAndReceive
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージペイロードにマーシャリングするオブジェクト- 戻り値:
- レスポンスメッセージのマーシャリングされていないペイロード、またはレスポンスがない場合は
null
- 関連事項:
marshalSendAndReceive
public ObjectSE marshalSendAndReceive(ObjectSE requestPayload, WebServiceMessageCallback requestCallback) インターフェースからコピーされた説明:WebServiceOperations
構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスメッセージのマーシャリングされていないペイロードがあれば、それを返します。指定されたコールバックでは、ペイロードがマーシャリングされた後、リクエストメッセージを変更できます。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のmarshalSendAndReceive
- パラメーター:
requestPayload
- リクエストメッセージペイロードにマーシャリングするオブジェクトrequestCallback
- メッセージを変更するためのコールバック、null
にすることができます- 戻り値:
- レスポンスメッセージのマーシャリングされていないペイロード、またはレスポンスがない場合は
null
- 関連事項:
marshalSendAndReceive
public ObjectSE marshalSendAndReceive(StringSE uri, ObjectSE requestPayload, WebServiceMessageCallback requestCallback) インターフェースからコピーされた説明:WebServiceOperations
構成されたMarshaller
によってマーシャリングされた、指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスメッセージのマーシャリングされていないペイロードがあれば、それを返します。指定されたコールバックでは、ペイロードがマーシャリングされた後、リクエストメッセージを変更できます。- 次で指定:
- インターフェース
WebServiceOperations
のmarshalSendAndReceive
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージペイロードにマーシャリングするオブジェクトrequestCallback
- メッセージを変更するためのコールバック、null
にすることができます- 戻り値:
- レスポンスメッセージのマーシャリングされていないペイロード、またはレスポンスがない場合は
null
- 関連事項:
sendSourceAndReceiveToResult
インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスがある場合は、指定されたResult
に書き込みます。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceiveToResult
- パラメーター:
requestPayload
- リクエストメッセージのペイロードresponseResult
- レスポンスペイロードを書き込む結果- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendSourceAndReceiveToResult
public boolean sendSourceAndReceiveToResult(StringSE uri, SourceSE requestPayload, ResultSE responseResult) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスがある場合は、指定されたResult
に書き込みます。- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceiveToResult
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージのペイロードresponseResult
- レスポンスペイロードを書き込む結果- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendSourceAndReceiveToResult
public boolean sendSourceAndReceiveToResult(SourceSE requestPayload, WebServiceMessageCallback requestCallback, ResultSE responseResult) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスがある場合は、指定されたResult
に書き込みます。指定されたコールバックでは、ペイロードが書き込まれた後、リクエストメッセージを変更できます。
これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceiveToResult
- パラメーター:
requestPayload
- リクエストメッセージのペイロードrequestCallback
- メッセージを変更するためのコールバック、null
にすることができますresponseResult
- レスポンスペイロードを書き込む結果- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendSourceAndReceiveToResult
public boolean sendSourceAndReceiveToResult(StringSE uri, SourceSE requestPayload, WebServiceMessageCallback requestCallback, ResultSE responseResult) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信します。レスポンスがある場合は、指定されたResult
に書き込みます。指定されたコールバックでは、ペイロードが書き込まれた後、リクエストメッセージを変更できます。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceiveToResult
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージのペイロードrequestCallback
- メッセージを変更するためのコールバック、null
にすることができますresponseResult
- レスポンスペイロードを書き込む結果- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendSourceAndReceive
インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceive
- パラメーター:
requestPayload
- リクエストメッセージのペイロードresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
SourceExtractor
によって返される任意の結果オブジェクト
sendSourceAndReceive
public <T> T sendSourceAndReceive(StringSE uri, SourceSE requestPayload, SourceExtractor<T> responseExtractor) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceive
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージのペイロードresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
SourceExtractor
によって返される任意の結果オブジェクト
sendSourceAndReceive
public <T> T sendSourceAndReceive(SourceSE requestPayload, WebServiceMessageCallback requestCallback, SourceExtractor<T> responseExtractor) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。指定されたコールバックでは、ペイロードが書き込まれた後、リクエストメッセージを変更できます。
これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceive
- パラメーター:
requestPayload
- リクエストメッセージのペイロードrequestCallback
- メッセージを変更するためのコールバック、null
にすることができますresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
SourceExtractor
によって返される任意の結果オブジェクト
sendSourceAndReceive
public <T> T sendSourceAndReceive(StringSE uri, SourceSE requestPayload, WebServiceMessageCallback requestCallback, SourceExtractor<T> responseExtractor) インターフェースからコピーされた説明:WebServiceOperations
指定されたペイロードを含む Web サービスメッセージを送信し、SourceExtractor
で結果を読み取ります。指定されたコールバックでは、ペイロードが書き込まれた後、リクエストメッセージを変更できます。
- 次で指定:
- インターフェース
WebServiceOperations
のsendSourceAndReceive
- パラメーター:
uri
- メッセージを送信する URIrequestPayload
- リクエストメッセージのペイロードrequestCallback
- メッセージを変更するためのコールバック、null
にすることができますresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
SourceExtractor
によって返される任意の結果オブジェクト
sendAndReceive
public boolean sendAndReceive(WebServiceMessageCallback requestCallback, WebServiceMessageCallback responseCallback) インターフェースからコピーされた説明:WebServiceOperations
指定されたリクエストコールバックで操作できる Web サービスメッセージを送信し、レスポンスコールバックでレスポンスを処理します。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendAndReceive
- パラメーター:
requestCallback
- リクエストメッセージの操作に使用されるコールバックresponseCallback
- レスポンスメッセージの操作に使用されるコールバック- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendAndReceive
public boolean sendAndReceive(StringSE uri, WebServiceMessageCallback requestCallback, WebServiceMessageCallback responseCallback) インターフェースからコピーされた説明:WebServiceOperations
指定されたリクエストコールバックで操作できる Web サービスメッセージを送信し、レスポンスコールバックでレスポンスを処理します。- 次で指定:
- インターフェース
WebServiceOperations
のsendAndReceive
- パラメーター:
uri
- メッセージを送信する URIrequestCallback
- リクエストメッセージの操作に使用されるコールバックresponseCallback
- レスポンスメッセージの操作に使用されるコールバック- 戻り値:
- レスポンスを受信した場合は
true
。それ以外の場合はfalse
sendAndReceive
public <T> T sendAndReceive(WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) インターフェースからコピーされた説明:WebServiceOperations
指定されたコールバックで操作できる Web サービスメッセージを送信し、WebServiceMessageExtractor
で結果を読み取ります。これは、デフォルトの URI が指定されている場合にのみ機能します。
- 次で指定:
- インターフェース
WebServiceOperations
のsendAndReceive
- パラメーター:
requestCallback
- リクエストメッセージの操作に使用される requestCallbackresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
WebServiceMessageExtractor
によって返される任意の結果オブジェクト
sendAndReceive
public <T> T sendAndReceive(StringSE uriString, WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) インターフェースからコピーされた説明:WebServiceOperations
指定されたコールバックで操作できる Web サービスメッセージを送信し、WebServiceMessageExtractor
で結果を読み取ります。- 次で指定:
- インターフェース
WebServiceOperations
のsendAndReceive
- パラメーター:
uriString
- メッセージを送信する URIrequestCallback
- リクエストメッセージの操作に使用される requestCallbackresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
WebServiceMessageExtractor
によって返される任意の結果オブジェクト
doSendAndReceive
protected <T> T doSendAndReceive(MessageContext messageContext, WebServiceConnection connection, WebServiceMessageCallback requestCallback, WebServiceMessageExtractor<T> responseExtractor) throws IOExceptionSE MessageContext
を送受信します。request message
を送信し、repsonse message
に受信します。プロセスの一部として、定義されたinterceptors
を呼び出します。- パラメーター:
messageContext
- メッセージコンテキストconnection
- 使用する接続requestCallback
- リクエストメッセージの操作に使用される requestCallbackresponseExtractor
- 結果を抽出するオブジェクト- 戻り値:
WebServiceMessageExtractor
によって返される任意の結果オブジェクト- 例外:
WebServiceClientException
- メッセージの送受信に問題がある場合IOExceptionSE
- I/O エラーの場合
hasError
protected boolean hasError(WebServiceConnection connection, WebServiceMessage request) throws IOExceptionSE 指定された接続またはメッセージコンテキストにエラーがあるかどうかを判別します。この実装は、最初に
connection
をチェックします。エラーを示している場合は、fault
ではないことを確認します。- パラメーター:
connection
- 接続(おそらくFaultAwareWebServiceConnection
request
- レスポンスメッセージ(おそらくFaultAwareWebServiceMessage
- 戻り値:
- 接続にエラーがある場合は
true
。それ以外の場合はfalse
- 例外:
IOExceptionSE
- I/O エラーの場合
handleError
protected ObjectSE handleError(WebServiceConnection connection, WebServiceMessage request) throws IOExceptionSE 指定された接続のエラーを処理します。デフォルトの実装はWebServiceTransportException
をスローします。- パラメーター:
connection
- 誤った接続request
- 対応するリクエストメッセージ- 戻り値:
sendAndReceive(String,WebServiceMessageCallback, WebServiceMessageExtractor)
から返されるオブジェクト(存在する場合)- 例外:
IOExceptionSE
hasFault
protected boolean hasFault(WebServiceConnection connection, WebServiceMessage response) throws IOExceptionSE 指定された接続またはメッセージに障害があるかどうかを判別します。この実装は、
checkConnectionForFault
プロパティが true の場合はconnection
をチェックし、それ以外の場合はデフォルトでmessage
になります。- パラメーター:
connection
- 接続(おそらくFaultAwareWebServiceConnection
response
- レスポンスメッセージ(おそらくFaultAwareWebServiceMessage
- 戻り値:
- 接続またはメッセージのいずれかに障害がある場合は
true
。それ以外の場合はfalse
- 例外:
IOExceptionSE
- I/O エラーの場合
handleFault
protected ObjectSE handleFault(WebServiceConnection connection, MessageContext messageContext) throws IOExceptionSE 指定されたレスポンスメッセージの障害を処理します。デフォルトの実装では、登録されている場合はfault resolver
が呼び出され、登録されていない場合はhandleError(WebServiceConnection, WebServiceMessage)
が呼び出されます。- パラメーター:
connection
- 障害のある接続messageContext
- メッセージコンテキスト- 戻り値:
sendAndReceive(String,WebServiceMessageCallback, WebServiceMessageExtractor)
から返されるオブジェクト(存在する場合)- 例外:
IOExceptionSE