パッケージ jakarta.xml.ws.spi

クラス Provider


  • public abstract class Provider
    extends ObjectSE
    ServiceDelegate および Endpoint オブジェクトのサービスプロバイダー。
    導入:
    1.6、JAX-WS 2.0
    • コンストラクターの詳細

      • Provider

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

      • provider

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

        使用するプロバイダーサブクラスを見つけるために使用されるアルゴリズムは、次の手順で構成されます。

        • jakarta.xml.ws.spi.Provider という名前のシステムプロパティが定義されている場合、その値が実装クラスの名前として使用されます。ルックアップのこのフェーズでは、Jakarta XML Web Services 実装の JVM ごとのオーバーライドを有効にします。
        • ServiceLoaderSE クラスによって定義されたサービスプロバイダーのロード機能を使用して、デフォルトのロードメカニズムSEを使用して Provider サービスの実装を見つけてロードしようとします。
        • 最後に、上記のすべての手順が失敗した場合、ルックアップの残りは未指定です。とはいえ、推奨される動作は、ハードコードされたプラットフォームのデフォルトの Jakarta XML Web Services 実装を単純に探すことです。ルックアップのこのフェーズは、環境が最後の手段として独自の Jakarta XML Web Services 実装を持つことができるようにするためのものです。
        戻り値:
        プロバイダーオブジェクト
      • createServiceDelegate

        public abstract ServiceDelegate createServiceDelegate​(URLSE wsdlDocumentLocation,
                                                              QNameSE serviceName,
                                                              ClassSE<? extends Service> serviceClass)
        サービスデリゲートオブジェクトを作成します。
        パラメーター:
        wsdlDocumentLocation - サービスの WSDL ドキュメントを指す URL、または存在しない場合は null
        serviceName - サービスの修飾名。
        serviceClass - jakarta.xml.ws.Service またはそのサブクラスのいずれかでなければならないサービスクラス。
        戻り値:
        新しく作成されたサービスデリゲート。
      • createServiceDelegate

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

        public abstract Endpoint createEndpoint​(StringSE bindingId,
                                                ObjectSE implementor)
        提供されたバインディングおよび実装オブジェクトを使用してエンドポイントオブジェクトを作成します。
        パラメーター:
        bindingId - 目的のバインディングを指定する URI (たとえば SOAP/HTTP)
        implementor - 受信リクエストがディスパッチされるサービス実装オブジェクト。対応するクラスには、必要なすべての Web サービスアノテーションを付ける必要があります。
        戻り値:
        新しく作成されたエンドポイント。
      • createAndPublishEndpoint

        public abstract Endpoint createAndPublishEndpoint​(StringSE address,
                                                          ObjectSE implementor)
        指定されたアドレスと実装オブジェクトを使用してエンドポイントオブジェクトを作成および公開します。
        パラメーター:
        address - 使用するアドレスとトランスポート / プロトコルを指定する URI。http:URI では、SOAP 1.1/HTTP バインディングが使用される必要があります。実装は他の URI スキームをサポートする場合があります。
        implementor - 受信リクエストがディスパッチされるサービス実装オブジェクト。対応するクラスには、必要なすべての Web サービスアノテーションを付ける必要があります。
        戻り値:
        新しく作成されたエンドポイント。
      • readEndpointReference

        public abstract EndpointReference readEndpointReference​(SourceSE eprInfoset)
        eprInfoset に含まれている情報セットから EndpointReference を読み取ります。
        パラメーター:
        eprInfoset - EndpointReference の情報セット
        戻り値:
        eprInfoset からアンマーシャルされた EndpointReference。このメソッドは null を返しません。
        例外:
        WebServiceException - 指定された eprInfoset から EndpointReference を作成するときにエラーが発生した場合。
        NullPointerExceptionSE - null の場合 eprInfoset 値が指定されています。
        導入:
        1.6、JAX-WS 2.1
      • getPort

        public abstract <T> T getPort​(EndpointReference endpointReference,
                                      ClassSE<T> serviceEndpointInterface,
                                      WebServiceFeature... features)
        getPort メソッドはプロキシを返します。endpointReference に参照パラメーターがある場合、それらの参照パラメーターは、エンドポイントに送信されるすべてのメッセージで、参照パラメーターであることを示す SOAP ヘッダーとして表示されなければなりません。パラメーター serviceEndpointInterface は、返されるプロキシでサポートされているサービスエンドポイントインターフェースを指定します。パラメーター endpointReference は、返されるプロキシによって呼び出されるエンドポイントを指定します。このメソッドの実装では、Jakarta XML Web Services ランタイムシステムが、プロトコルバインディング (およびポート) を選択し、serviceEndpointInterface および EndpointReference の WSDL メタデータからそれに応じてプロキシを構成する責任を負います。このメソッドがプロキシを正常に返すには、WSDL メタデータが使用可能である必要があり、endpointReference には実装で理解される serviceName メタデータが含まれている必要があります。
        型パラメーター:
        T - サービスエンドポイントインターフェース
        パラメーター:
        endpointReference - 返されたプロキシによって呼び出される EndpointReference。
        serviceEndpointInterface - サービスエンドポイントインターフェース
        features - プロキシで構成する WebServiceFeatures のリスト。features  パラメーターに含まれていないサポートされている機能には、デフォルト値があります。
        戻り値:
        指定されたサービスエンドポイントインターフェースをサポートするオブジェクトプロキシインスタンス
        例外:
        WebServiceException -
        • プロキシの作成中にエラーが発生した場合
        • このメソッドに必要な WSDL メタデータが欠落している場合 }
        • この endpointReference が不正なら
        • 不正な serviceEndpointInterface が指定された場合
        • このポートと互換性がない、またはサポートされていない機能が有効になっている場合。
        導入:
        1.6、JAX-WS 2.1
        関連事項:
        WebServiceFeature
      • createW3CEndpointReference

        public abstract W3CEndpointReference createW3CEndpointReference​(StringSE address,
                                                                        QNameSE serviceName,
                                                                        QNameSE portName,
                                                                        ListSE<ElementSE> metadata,
                                                                        StringSE wsdlDocumentLocation,
                                                                        ListSE<ElementSE> referenceParameters)
        W3CEndpointReference を作成するためのファクトリメソッド。

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

        パラメーター:
        address - ターゲットエンドポイントのアドレスを指定します
        serviceName - WSDL 内のサービスの修飾名。
        portName - WSDL 内のエンドポイントの修飾名。
        metadata - W3CEndpointReference インスタンス wsa:metadata 要素に追加する必要がある要素のリスト。
        wsdlDocumentLocation - サービスの WSDL ドキュメントの場所の URL。
        referenceParameters - 返された EndpointReference インスタンスに関連付けられる参照パラメーター。
        戻り値:
        serviceNameportNamemetadatawsdlDocumentLocationreferenceParameters から作成された W3CEndpointReference。このメソッドは null を返しません。
        例外:
        IllegalStateExceptionSE -
        • addressserviceNameportName がすべて null の場合。
        • serviceName サービスが null で、portName が null ではない場合。
        • address プロパティが null で、serviceName と portName が同じ Jakarta EE アプリケーションによって公開された有効なエンドポイントを指定していない場合。
        • serviceName が null ではなく、指定された WSDL に存在しない場合。
        • portName ポートが null ではなく、WSDL の serviceName サービスに存在しない場合。
        • wsdlDocumentLocation が null ではなく、有効な WSDL を表していない場合。
        WebServiceException - W3CEndpointReference の作成中にエラーが発生した場合。
        導入:
        1.6、JAX-WS 2.1
      • createW3CEndpointReference

        public W3CEndpointReference createW3CEndpointReference​(StringSE address,
                                                               QNameSE interfaceName,
                                                               QNameSE serviceName,
                                                               QNameSE portName,
                                                               ListSE<ElementSE> metadata,
                                                               StringSE wsdlDocumentLocation,
                                                               ListSE<ElementSE> referenceParameters,
                                                               ListSE<ElementSE> elements,
                                                               MapSE<QNameSE,​StringSE> attributes)
        W3CEndpointReference を作成するファクトリメソッド。この方法を使用すると、拡張要素および属性を使用して W3CEndpointReference インスタンスを作成できます。Provider の実装は、デフォルトの実装をオーバーライドする必要があります。

        このメソッドを使用して、他の必要なプロパティとともに address プロパティを指定することにより、任意のエンドポイントの W3CEndpointReference を作成できます。このメソッドは、同じ Jakarta EE アプリケーションによって公開されるエンドポイントの W3CEndpointReference を作成するためにも使用できます。これを行うには、address プロパティを指定するか、このメソッドで、同じ Jakarta EE アプリケーションによって公開され、serviceName および portName プロパティによって識別されるエンドポイントの address を自動的に決定できます。address が null であり、serviceName と portName が同じ Jakarta 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 インスタンスに関連付けられる拡張属性。
        戻り値:
        serviceNameportNamemetadatawsdlDocumentLocationreferenceParameters から作成された W3CEndpointReference。このメソッドは null を返しません。
        例外:
        IllegalStateExceptionSE -
        • addressserviceNameportName がすべて null の場合。
        • serviceName サービスが null で、portName が null ではない場合。
        • address プロパティが null で、serviceName と portName が同じ Jakarta EE アプリケーションによって公開された有効なエンドポイントを指定していない場合。
        • serviceName が null ではなく、指定された WSDL に存在しない場合。
        • portName ポートが null ではなく、WSDL の serviceName サービスに存在しない場合。
        • wsdlDocumentLocation が null ではなく、有効な WSDL を表していない場合。
        • wsdlDocumentLocation が null ではないが、wsdli:wsdlLocation の名前空間名を利用可能なメタデータから取得できない場合。
        WebServiceException - W3CEndpointReference の作成中にエラーが発生した場合。
        導入:
        1.7、JAX-WS 2.2
      • createAndPublishEndpoint

        public Endpoint createAndPublishEndpoint​(StringSE address,
                                                 ObjectSE 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​(StringSE bindingId,
                                       ObjectSE implementor,
                                       WebServiceFeature... features)
        提供されたバインディング、実装オブジェクト、Web サービス機能を使用してエンドポイントオブジェクトを作成します。Provider 実装は、デフォルトの実装をオーバーライドする必要があります。
        パラメーター:
        bindingId - 目的のバインディングを指定する URI (たとえば SOAP/HTTP)
        implementor - 受信リクエストがディスパッチされるサービス実装オブジェクト。対応するクラスには、必要なすべての Web サービスアノテーションを付ける必要があります。
        features - エンドポイントで構成する WebServiceFeatures のリスト。features パラメーターに含まれていないサポートされている機能には、デフォルト値があります。
        戻り値:
        新しく作成されたエンドポイント。
        導入:
        1.7、JAX-WS 2.2
      • createEndpoint

        public Endpoint createEndpoint​(StringSE bindingId,
                                       ClassSE<?> implementorClass,
                                       Invoker invoker,
                                       WebServiceFeature... features)
        提供されたバインディング、実装クラス、呼び出し元、Web サービス機能を使用してエンドポイントオブジェクトを作成します。コンテナーは通常、これを使用してエンドポイントオブジェクトを作成します。Provider 実装は、デフォルトの実装をオーバーライドする必要があります。
        パラメーター:
        bindingId - 目的のバインディングを指定する URI(例: SOAP/HTTP)。null にすることができます。
        implementorClass - 必要なすべての Web サービスアノテーションでアノテーションを付ける必要があるサービス実装クラス。
        invoker - これは、サービスインスタンスで実際の呼び出しを行います。
        features - エンドポイントで構成する WebServiceFeatures のリスト。features  パラメーターに含まれていないサポートされている機能には、デフォルト値があります。
        戻り値:
        新しく作成されたエンドポイント。
        導入:
        1.7、JAX-WS 2.2