モジュール java.xml.ws
パッケージ javax.xml.ws.spi

クラスProvider



  • public abstract class Provider
    extends Object
    ServiceDelegateおよびEndpointオブジェクトのサービス・プロバイダです。
    導入されたバージョン:
    1.6, JAX-WS 2.0
    • コンストラクタの詳細

      • Provider

        protected Provider​()
        新しいProviderインスタンスを作成します
    • メソッドの詳細

      • provider

        public static Provider provider​()
        新しいプロバイダ・オブジェクトを作成します。

        プロバイダのサブクラスの場所を特定するために使用されるアルゴリズムは、次のステップから構成されます。

        • ServiceLoaderクラスで定義されているサービス・プロバイダのロード機能を使用して、「デフォルトのロード・メカニズム」を使用してProviderサービスの実装を見つけてロードしようとします。
        • 構成ファイル"jaxws.properties"を使用します。 このファイルは標準のProperties形式であり、通常Javaインストールのconfディレクトリにあります。 これには、キーjavax.xml.ws.spi.Providerを使用した実装クラスの完全修飾名が含まれます。
        • javax.xml.ws.spi.Providerという名前のシステム・プロパティが定義されている場合、その値が実装クラスの名前として使用されます。
        • 最後に、プラットフォームのデフォルト実装が使用されます。
        戻り値:
        プロバイダ・オブジェクト
      • createServiceDelegate

        public abstract ServiceDelegate createServiceDelegate​(URL wsdlDocumentLocation,
                                                              QName serviceName,
                                                              Class<? extends Service> serviceClass)
        サービス委譲オブジェクトを作成します。
        パラメータ:
        wsdlDocumentLocation - サービス用のWSDLドキュメントをポイントするURL。存在しない場合はnull
        serviceName - サービスの修飾名。
        serviceClass - javax.xml.ws.Service、または、そのサブクラスのいずれかであるサービス・クラス。
        戻り値:
        新しく作成されたサービス委譲。
      • createServiceDelegate

        public ServiceDelegate createServiceDelegate​(URL wsdlDocumentLocation,
                                                     QName serviceName,
                                                     Class<? extends Service> serviceClass,
                                                     WebServiceFeature... features)
        サービス委譲オブジェクトを作成します。
        パラメータ:
        wsdlDocumentLocation - サービス用のWSDLドキュメントをポイントするURL。存在しない場合はnull
        serviceName - サービスの修飾名。
        serviceClass - javax.xml.ws.Service、または、そのサブクラスのいずれかであるサービス・クラス。
        features - サービスに構成される必要があるWebサービス機能。 プロバイダが機能を理解しない場合、WebServiceExceptionをスローする必要があります。
        戻り値:
        新しく作成されたサービス委譲。
        導入されたバージョン:
        1.7, JAX-WS 2.2
      • createEndpoint

        public abstract Endpoint createEndpoint​(String bindingId,
                                                Object implementor)
        指定されたバインディングおよび実装オブジェクトを持つ、端点オブジェクトを作成します。
        パラメータ:
        bindingId - 希望するバインディング(SOAP/HTTPなど)を指定するURI
        implementor - 着信要求のディスパッチ先となるサービス実装オブジェクト。 対応しているクラスが、すべての必要なWebサービス注釈で注釈されている必要がある。
        戻り値:
        新しく作成された端点。
      • createAndPublishEndpoint

        public abstract Endpoint createAndPublishEndpoint​(String address,
                                                          Object implementor)
        与えられたアドレスと実装オブジェクトを持つ端点オブジェクトを作成および発行します。
        パラメータ:
        address - 使用するアドレス、および、トランスポートまたはプロトコルを指定するURI。 http: URIが、使用されているSOAP 1.1/HTTPバインディングに帰着する必要がある。 実装がその他のURIスキームをサポートすることも可能である。
        implementor - 着信要求のディスパッチ先となるサービス実装オブジェクト。 対応しているクラスが、すべての必要なWebサービス注釈で注釈されている必要がある。
        戻り値:
        新しく作成された端点。
      • readEndpointReference

        public abstract EndpointReference readEndpointReference​(Source eprInfoset)
        eprInfosetに含まれている情報セットからEndpointReferenceを読み取ります。
        パラメータ:
        eprInfoset - EndpointReferenceの情報セット
        戻り値:
        eprInfosetから非整列化されたEndpointReference このメソッドがnullを返すことはない。
        例外:
        WebServiceException - EndpointReferenceを指定のeprInfosetから作成するときにエラーが発生した場合。
        NullPointerException - 指定されたeprInfosetの値がnullの場合。
        導入されたバージョン:
        1.6, JAX-WS 2.1
      • getPort

        public abstract <T> T getPort​(EndpointReference endpointReference,
                                      Class<T> serviceEndpointInterface,
                                      WebServiceFeature... features)
        getPortメソッドはプロキシを返します。 endpointReferenceに参照パラメータがある場合は、端点に送信されるすべてのメッセージにそれらの参照パラメータをSOAPヘッダーとして含め、それらが参照パラメータであることを示す必要があります。 パラメータserviceEndpointInterfaceは、戻り値のプロキシによってサポートされるサービス端点インタフェースを指定します。 パラメータendpointReferenceは、戻り値のプロキシによって呼び出される端点を指定します。 このメソッドの実装では、serviceEndpointInterfaceのWSDLメタデータおよびEndpointReferenceに従って、JAX-WS実行システムがプロトコル・バインディング(およびポート)の選択とプロキシの構成を行います。 このメソッドで正常にプロキシを取得するには、WSDLメタデータが利用可能であることと、実装で認識されるserviceNameメタデータがendpointReferenceに含まれていることが必要です。
        型パラメータ:
        T - サービス・エンドポイント・インタフェース
        パラメータ:
        endpointReference - 戻り値のプロキシによって呼び出されるEndpointReference。
        serviceEndpointInterface - サービス端点インタフェース
        features - プロキシに構成するWebServiceFeaturesのリスト。 features パラメータに含まれていないサポートされる機能には、デフォルト値が設定される。
        戻り値:
        指定されたサービス端点インタフェースをサポートするObject Proxyインスタンス
        例外:
        WebServiceException -
        • プロキシの作成中にエラーがあった場合
        • このメソッドが必要とするWSDLメタデータが不足している場合
        • このendpointReferenceが不正である場合
        • 不正なserviceEndpointInterfaceが指定された場合
        • このポートと互換性のない機能、またはサポートされていない機能を有効にした場合。
        導入されたバージョン:
        1.6, JAX-WS 2.1
        関連項目:
        WebServiceFeature
      • createW3CEndpointReference

        public abstract W3CEndpointReference createW3CEndpointReference​(String address,
                                                                        QName serviceName,
                                                                        QName portName,
                                                                        List<Element> metadata,
                                                                        String wsdlDocumentLocation,
                                                                        List<Element> referenceParameters)
        W3CEndpointReferenceを作成するファクトリ・メソッドです。

        このメソッドを使用して、addressプロパティと必要なほかのプロパティを指定することにより、任意の端点のW3CEndpointReferenceを作成できます。 このメソッドを使用して、同じJava EEアプリケーションによって発行される端点のW3CEndpointReferenceを作成することもできます。 これを実行するには、addressプロパティを指定するか、このメソッドが、同じJava EEアプリケーションによって公開され、serviceNameおよびportNameプロパティによって識別されるエンドポイントのaddressを自動的に判別することができます。 addressnullの場合に、serviceNameportNameで識別される対象が同じJava EEアプリケーションから発行された端点でないときは、javax.lang.IllegalStateExceptionをスローする必要があります。

        パラメータ:
        address - ターゲット端点のアドレスを指定する
        serviceName - WSDL内のサービスの修飾名。
        portName - WSDL内の端点の修飾名。
        metadata - W3CEndpointReferenceインスタンスのwsa:metadata要素に追加する要素のリスト。
        wsdlDocumentLocation - サービスのWSDLドキュメントの位置を示すURL。
        referenceParameters - 返されるEndpointReferenceインスタンスに関連付けられる参照パラメータ。
        戻り値:
        serviceNameportNamemetadatawsdlDocumentLocation、およびreferenceParametersから作成されたW3CEndpointReference このメソッドがnullを返すことはない。
        例外:
        IllegalStateException -
        • addressserviceName、およびportNameがすべてnullの場合。
        • serviceNameサービスがnullで、portNamenullでない場合。
        • addressプロパティがnullの場合に、serviceNameportNameで指定される対象が同じJava EEアプリケーションから発行された有効な端点でないとき。
        • serviceNamenullでなく、指定のWSDL内に存在しない場合。
        • portNameポートがnullでなく、WSDLのserviceNameサービス内に存在しない場合。
        • wsdlDocumentLocationnullでなく、有効なWSDLを表していない場合。
        WebServiceException - W3CEndpointReferenceの作成中にエラーが発生した場合。
        導入されたバージョン:
        1.6, JAX-WS 2.1
      • createW3CEndpointReference

        public W3CEndpointReference createW3CEndpointReference​(String address,
                                                               QName interfaceName,
                                                               QName serviceName,
                                                               QName portName,
                                                               List<Element> metadata,
                                                               String wsdlDocumentLocation,
                                                               List<Element> referenceParameters,
                                                               List<Element> elements,
                                                               Map<QName,String> attributes)
        W3CEndpointReferenceを作成するファクトリ・メソッドです。 このメソッドを使用すると、拡張要素と属性を使ってW3CEndpointReferenceインスタンスを作成できます。 Providerの実装は、デフォルト実装をオーバーライドする必要があります。

        このメソッドを使用して、addressプロパティと必要なほかのプロパティを指定することにより、任意の端点のW3CEndpointReferenceを作成できます。 このメソッドを使用して、同じJava EEアプリケーションによって発行される端点のW3CEndpointReferenceを作成することもできます。 そのためには、addressプロパティを指定することもできますが、そうでない場合このメソッドでは、serviceNameおよびportNameプロパティで識別される同じJava EEアプリケーションによって発行された端点のaddressを自動的に判定することができます。 addressnullの場合に、serviceNameportNameで識別される対象が同じJava EEアプリケーションから発行された端点でないときは、javax.lang.IllegalStateExceptionをスローする必要があります。

        パラメータ:
        address - ターゲット端点のアドレスを指定する
        interfaceName - wsa:Metadata要素内のwsam:InterfaceName要素。
        serviceName - WSDL内のサービスの修飾名。
        portName - WSDL内の端点の修飾名。
        metadata - W3CEndpointReferenceインスタンスのwsa:metadata要素に追加する要素のリスト。
        wsdlDocumentLocation - サービスのWSDLドキュメントの位置を示すURL。
        referenceParameters - 返されるEndpointReferenceインスタンスに関連付けられる参照パラメータ。
        elements - 返されるEndpointReferenceインスタンスに関連付けられる拡張要素。
        attributes - 返されるEndpointReferenceインスタンスに関連付けられる拡張属性。
        戻り値:
        serviceNameportNamemetadatawsdlDocumentLocation、およびreferenceParametersから作成されたW3CEndpointReference このメソッドがnullを返すことはない。
        例外:
        IllegalStateException -
        • addressserviceName、およびportNameがすべてnullの場合。
        • serviceNameサービスがnullで、portNamenullでない場合。
        • addressプロパティがnullの場合に、serviceNameportNameで指定される対象が同じJava EEアプリケーションから発行された有効な端点でないとき。
        • serviceNamenullでなく、指定のWSDL内に存在しない場合。
        • portNameポートがnullでなく、WSDLのserviceNameサービス内に存在しない場合。
        • wsdlDocumentLocationnullでなく、有効なWSDLを表していない場合。
        • wsdlDocumentLocationnullではないが、使用可能なメタデータからwsdli:wsdlLocationの名前空間名を取得できない場合。
        WebServiceException - W3CEndpointReferenceの作成中にエラーが発生した場合。
        導入されたバージョン:
        1.7, JAX-WS 2.2
      • createAndPublishEndpoint

        public Endpoint createAndPublishEndpoint​(String address,
                                                 Object implementor,
                                                 WebServiceFeature... features)
        指定されたアドレス、実装オブジェクト、およびWebサービス機能を持つ端点オブジェクトを作成して発行します。 Provider実装は、デフォルトの実装をオーバーライドする必要があります。
        パラメータ:
        address - 使用するアドレス、および、トランスポートまたはプロトコルを指定するURI。 http: URIが、使用されているSOAP 1.1/HTTPバインディングに帰着する必要がある。 実装がその他のURIスキームをサポートすることも可能である。
        implementor - 着信要求のディスパッチ先となるサービス実装オブジェクト。 対応しているクラスが、すべての必要なWebサービス注釈で注釈されている必要がある。
        features - 端点に構成するWebServiceFeaturesのリスト。 featuresパラメータに含まれていないサポートされる機能には、デフォルト値が設定される。
        戻り値:
        新しく作成された端点。
        導入されたバージョン:
        1.7, JAX-WS 2.2
      • createEndpoint

        public Endpoint createEndpoint​(String bindingId,
                                       Object implementor,
                                       WebServiceFeature... features)
        提供されたバインディング、実装オブジェクト、およびWebサービス機能を持つ端点オブジェクトを作成します。 Provider実装は、デフォルトの実装をオーバーライドする必要があります。
        パラメータ:
        bindingId - 希望するバインディング(SOAP/HTTPなど)を指定するURI
        implementor - 着信要求のディスパッチ先となるサービス実装オブジェクト。 対応しているクラスが、すべての必要なWebサービス注釈で注釈されている必要がある。
        features - 端点に構成するWebServiceFeaturesのリスト。 featuresパラメータに含まれていないサポートされる機能には、デフォルト値が設定される。
        戻り値:
        新しく作成された端点。
        導入されたバージョン:
        1.7, JAX-WS 2.2
      • createEndpoint

        public Endpoint createEndpoint​(String bindingId,
                                       Class<?> implementorClass,
                                       Invoker invoker,
                                       WebServiceFeature... features)
        指定されたバインディング、実装クラス、インボーカ、およびWebサービス機能を持つ端点オブジェクトを作成します。 コンテナは、通常、これを使用して端点オブジェクトを作成します。 Provider実装は、デフォルトの実装をオーバーライドする必要があります。
        パラメータ:
        bindingId - 希望するバインディング(SOAP/HTTPなど)を指定するURI。 nullも可。
        implementorClass - すべての必要なWebサービス注釈で注釈されていなければならないサービス実装クラス。
        invoker - サービス・インスタンスの実際の呼出しを行う。
        features - 端点に構成するWebServiceFeaturesのリスト。 features パラメータに含まれていないサポートされる機能には、デフォルト値が設定される。
        戻り値:
        新しく作成された端点。
        導入されたバージョン:
        1.7, JAX-WS 2.2