Oracle® Fusion Middleware Oracle WebLogic Server JAX-WS Webサービスの開発 12c (12.2.1.2.0) E82857-02 |
|
前 |
次 |
com.sun.xml.ws.developer.WSBindingProvider
から利用可能なメソッドを使用して、アウトバウンドSOAPヘッダーの送信またはインバウンドSOAPヘッダーの受信を行う方法について説明します。
この章の内容は次のとおりです:
注意:
com.sun.xml.ws.developer.WSBindingProvider
APIおよびcom.sun.xml.ws.api.message.Headers
APIは、JDK 6.0の拡張としてサポートされています。これらのAPIはJDK 6.0キットの一部としては提供されないため、変更される可能性があります。
プロキシまたはディスパッチ・クライアントを作成すると、そのクライアントにより、javax.xml.ws.BindingProvider
インタフェースが実装されます。SOAPヘッダーを送信または受信する必要がある場合には、Webサービス・プロキシ・クライアントまたはディスパッチ・クライアントをcom.sun.xml.ws.developer.WSBindingProvider
にダウンキャストし、インタフェースのメソッドを使用することで、アウトバウンドSOAPヘッダーの送信やインバウンドSOAPヘッダーの受信を行うことができます。
com.sun.xml.ws.developer.WSBindingProvider
に対してsetOutboundHeaders
メソッドを使用し、SOAPヘッダーを送信します。SOAPヘッダーの作成にはcom.sun.xml.ws.api.message.Headers
メソッドを使用します。
たとえば、次のコードの抜粋は、簡単な文字列値をヘッダーとして渡す方法を示しています。
例25-1 WSBindingProviderを使用したSOAPヘッダーの送信
import com.sun.xml.ws.developer.WSBindingProvider; import com.sun.xml.ws.api.message.Headers; import javax.xml.namespace.QName; ... HelloService helloService = new HelloService(); HelloPort port = helloService.getHelloPort(); WSBindingProvider bp = (WSBindingProvider)port; bp.setOutboundHeaders( // Sets a simple string value as a header Headers.create(new QName("simpleHeader"),"stringValue") ); ...
com.sun.xml.ws.developer.WSBindingProvider
に対してgetInboundHeaders
メソッドを使用し、SOAPヘッダーを受信します。
たとえば、次のコードの抜粋は、インバウンド・ヘッダーを取得する方法を示しています。
例25-2 WSBindingProviderを使用したSOAPヘッダーの受信
import com.sun.xml.ws.developer.WSBindingProvider; import com.sun.xml.ws.api.message.Headers; import javax.xml.namespace.QName; import java.util.List; ... HelloService helloService = new HelloService(); HelloPort port = helloService.getHelloPort(); WSBindingProvider bp = (WSBindingProvider)port; List inboundHeaders = bp.getInboundHeaders(); ...