JavaTM Platform
Standard Ed. 6

javax.xml.ws.spi
クラス ServiceDelegate

java.lang.Object
  上位を拡張 javax.xml.ws.spi.ServiceDelegate

public abstract class ServiceDelegate
extends Object

サービスの委譲は、プラグイン可能な JAX-WS 実装を許可するため、Service オブジェクトによって内部的に使用されます。

すべての Service オブジェクトには、javax.xml.ws.Provider#createServiceDelegate メソッドを使用して作成された、それ自身の委譲があります。Service オブジェクトは、それ自身のすべてのインスタンスメソッドをそれの委譲に委任します。

導入されたバージョン:
JAX-WS 2.0
関連項目:
Service, Provider

コンストラクタの概要
protected ServiceDelegate()
           
 
メソッドの概要
abstract  void addPort(QName portName, String bindingId, String endpointAddress)
          サービスの新しいポートを作成します。
abstract
<T> Dispatch<T>
createDispatch(QName portName, Class<T> type, Service.Mode mode)
          ユーザーが選択したオブジェクトで使用する Dispatch インスタンスを作成します。
abstract  Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode)
          JAXB 生成オブジェクトで使用する Dispatch インスタンスを作成します。
abstract  Executor getExecutor()
          この Service インスタンスの Executor を返します。
abstract  HandlerResolver getHandlerResolver()
          設定済みのハンドラリゾルバを返します。
abstract
<T> T
getPort(Class<T> serviceEndpointInterface)
          getPort メソッドはスタブを返します。
abstract
<T> T
getPort(QName portName, Class<T> serviceEndpointInterface)
          getPort メソッドはスタブを返します。
abstract  Iterator<QName> getPorts()
          このサービスによってグループ化されたサービス端点の QName リストの Iterator を返す
abstract  QName getServiceName()
          このサービスの名前を取得します。
abstract  URL getWSDLDocumentLocation()
          このサービスの WSDL 文書の位置を取得します。
abstract  void setExecutor(Executor executor)
          この Service インスタンスの executor を設定します。
abstract  void setHandlerResolver(HandlerResolver handlerResolver)
          この Service インスタンスの HandlerResolver を設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ServiceDelegate

protected ServiceDelegate()
メソッドの詳細

getPort

public abstract <T> T getPort(QName portName,
                              Class<T> serviceEndpointInterface)
getPort メソッドはスタブを返します。サービスクライアントは、このスタブを使用してターゲットサービス端点の操作を呼び出します。serviceEndpointInterface は、作成された動的プロキシまたはスタブインスタンスによってサポートされるサービス端点インタフェースを指定します。

パラメータ:
portName - WSDL サービス記述内のサービス端点の修飾名
serviceEndpointInterface - 動的プロキシまたはスタブインスタンスによってサポートされているサービス端点インタフェース
戻り値:
指定されたサービス端点インタフェースをサポートする Object Proxy インスタンス
例外:
WebServiceException - この例外は、次の場合にスローされる
  • プロキシの作成でエラーが発生した場合
  • このメソッドが必要とする WSDL メタデータが不足している場合
  • オプションとして、不正な serviceEndpointInterface または portName が指定された場合
関連項目:
Proxy, InvocationHandler

getPort

public abstract <T> T getPort(Class<T> serviceEndpointInterface)
getPort メソッドはスタブを返します。パラメータ serviceEndpointInterface は、戻り値のプロキシによってサポートされるサービス端点インタフェースを指定します。このメソッドの実装では、JAX-WS 実行時システムがプロトコルバインディング (およびポート) を選択し、それに従ってプロキシの設定を行います。戻り値のプロキシを、クライアントが設定し直さないようにしてください。

パラメータ:
serviceEndpointInterface - サービス端点インタフェース
戻り値:
指定されたサービス端点インタフェースをサポートするオブジェクトインスタンス
例外:
WebServiceException -
  • プロキシの作成中にエラーがあった場合
  • このメソッドが必要とする WSDL メタデータが不足している場合
  • オプションとして、不正な serviceEndpointInterface が指定された場合

addPort

public abstract void addPort(QName portName,
                             String bindingId,
                             String endpointAddress)
サービスの新しいポートを作成します。この方法で作成されたポートは、WSDL ポート型情報を含まず、Dispatch インスタンスを作成するためにのみ使用できます。

パラメータ:
portName - ターゲットサービス端点の修飾名
bindingId - バインディングの URI 識別子
endpointAddress - ターゲットサービス端点の URI 形式のアドレス
例外:
WebServiceException - ポートの作成でエラーが発生した場合
関連項目:
SOAPBinding.SOAP11HTTP_BINDING, SOAPBinding.SOAP12HTTP_BINDING, HTTPBinding.HTTP_BINDING

createDispatch

public abstract <T> Dispatch<T> createDispatch(QName portName,
                                               Class<T> type,
                                               Service.Mode mode)
ユーザーが選択したオブジェクトで使用する Dispatch インスタンスを作成します。

パラメータ:
portName - ターゲットサービス端点の修飾名
type - メッセージまたはメッセージペイロードに使用されるオブジェクトのクラス。実装は、javax.xml.transform.Source と javax.xml.soap.SOAPMessage をサポートする必要がある
mode - 作成されたディスパッチインスタンスがメッセージ指向であるかペイロード指向であるかを制御する。つまり、ユーザーが完全なプロトコルメッセージを扱うか、メッセージペイロードを扱うかを制御する。たとえば、SOAP プロトコルを使用する場合、このパラメータは、ユーザーが SOAP メッセージを扱うか、SOAP 本体のコンテンツを扱うかを制御する。型が SOAPMessage の場合、Mode は MESSAGE でなければならない
戻り値:
Dispatch インスタンス
例外:
WebServiceException - Dispatch オブジェクトの作成でエラーが発生した場合
関連項目:
Source, SOAPMessage

createDispatch

public abstract Dispatch<Object> createDispatch(QName portName,
                                                JAXBContext context,
                                                Service.Mode mode)
JAXB 生成オブジェクトで使用する Dispatch インスタンスを作成します。

パラメータ:
portName - ターゲットサービス端点の修飾名
context - メッセージまたはメッセージペイロードの整列化と非整列化に使用される JAXB コンテキスト
mode - 作成されたディスパッチインスタンスがメッセージ指向であるかペイロード指向であるかを制御する。つまり、ユーザーが完全なプロトコルメッセージを扱うか、メッセージペイロードを扱うかを制御する。たとえば、SOAP プロトコルを使用する場合、このパラメータは、ユーザーが SOAP メッセージを扱うか、SOAP 本体のコンテンツを扱うかどうかを制御する
戻り値:
Dispatch インスタンス
例外:
ServiceException - Dispatch オブジェクトの作成でエラーが発生した場合
関連項目:
JAXBContext

getServiceName

public abstract QName getServiceName()
このサービスの名前を取得します。

戻り値:
このサービスの修飾名

getPorts

public abstract Iterator<QName> getPorts()
このサービスによってグループ化されたサービス端点の QName リストの Iterator を返す

戻り値:
javax.xml.namespace.QName 型の要素を含む java.util.Iterator を返す
例外:
WebServiceException - このサービスクラスが必要な WSDL メタデータにアクセスできない場合

getWSDLDocumentLocation

public abstract URL getWSDLDocumentLocation()
このサービスの WSDL 文書の位置を取得します。

戻り値:
このサービスの WSDL 文書の位置を示す URL

getHandlerResolver

public abstract HandlerResolver getHandlerResolver()
設定済みのハンドラリゾルバを返します。

戻り値:
HandlerResolver この Service インスタンスによって使用されている HandlerResolver、または、存在しない場合、null

setHandlerResolver

public abstract void setHandlerResolver(HandlerResolver handlerResolver)
この Service インスタンスの HandlerResolver を設定します。

ハンドラリゾルバが存在する場合、作成された各プロキシまたはディスパッチインスタンスに対し一度ハンドラリゾルバが呼び出され、リゾルバによって返されたハンドラチェーンがインスタンスに設定されます。

パラメータ:
handlerResolver - 後に作成されるすべてのプロキシまたはディスパッチオブジェクトに対して使用される HandlerResolver
関連項目:
HandlerResolver

getExecutor

public abstract Executor getExecutor()
この Service インスタンスの Executor を返します。 Executor は、コールバックを必要とするすべての非同期呼び出しに使用されます。

戻り値:
コールバックを呼び出すために使用される java.util.concurrent.Executor
関連項目:
Executor

setExecutor

public abstract void setExecutor(Executor executor)
この Service インスタンスの executor を設定します。 Executor は、コールバックを必要とするすべての非同期呼び出しに使用されます。

パラメータ:
executor - コールバックを呼び出すために使用される java.util.concurrent.Executor
例外:
SecurityException - セキュリティー上の理由により、インスタンスが executor を設定することをサポートしていない場合 (たとえば、 必要なアクセス権が不足している場合)
関連項目:
Executor

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。