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

注釈型WebServiceRef



  • @Target({TYPE,METHOD,FIELD})
    @Retention(RUNTIME)
    @Documented
    @Repeatable(WebServiceRefs.class)
    public @interface WebServiceRef
    WebServiceRef注釈は、Webサービスへの参照と(オプションで)その注入ターゲットを定義するために使用されます。 サービスとプロキシの両方のインスタンスを注入するために使用できます。 これらの注入された参照は、スレッドに対して安全ではありません。 参照が複数のスレッドからアクセスされた場合、通常の同期技法を使用して、複数のスレッドをサポートできます。

    Webサービス参照は、Java EE 5的な意味でのリソースです。 メタ注釈WebServiceFeatureAnnotationで注釈がされた注釈(Addressingなど)を、WebServiceRefと組み合わせて使用できます。 作成された参照は、注釈のWebサービス機能を使用して構成する必要があります。

    たとえば、次に示すコードでは、注入されたStockQuoteProviderプロキシでは、Addressing注釈で指定されるように、WS-Addressingが有効になっている必要があります。

    
        public class MyClient {
           @Addressing
           @WebServiceRef(StockQuoteService.class)
           private StockQuoteProvider stockQuoteProvider;
           ...
        }
     

    JAX-WS実装では、WebServiceRefで指定された、サポートされていないか、または認識されないWebServiceFeatureAnnotation注釈の付いた注釈が検出された場合、エラーを示す必要があります。

    導入されたバージョン:
    1.6, JAX-WS 2.0
    関連項目:
    Resource, WebServiceFeatureAnnotation
    • オプション要素のサマリー

      オプションの要素 
      修飾子と型 オプション要素 説明
      String lookup
      ターゲットのWebサービス参照に解決する移植可能なJNDI検索名。
      String mappedName
      このリソースがマップされる製品固有の名前。
      String name
      リソースのJNDI名。
      Class<?> type
      リソースのJava型です。
      Class<? extends Service> value
      サービス・クラスは、常にjavax.xml.ws.Serviceを拡張する型です。
      String wsdlLocation
      Webサービス用のWSDL文書をポイントするURL。
    • 要素の詳細

      • name

        String name
        リソースのJNDI名。 フィールド注釈の場合、デフォルトはフィールド名です。 メソッド注釈の場合、デフォルトはこのメソッドに対応するJavaBeansプロパティ名です。 クラス注釈の場合、デフォルトは存在せず、これを指定する必要があります。 JNDI名は、JNDI java:comp/env名前空間に対して絶対的(論理名前空間を持つ)か相対的です。
        戻り値:
        絶対または相対JNDI名
        デフォルト:
        ""
      • type

        Class<?> type
        リソースのJava型です。 フィールド注釈の場合、デフォルトはフィールドの型です。 メソッド注釈の場合、デフォルトはJavaBeansプロパティの型です。 クラス注釈の場合、デフォルトは存在せず、これを指定する必要があります。
        戻り値:
        リソースのタイプ
        デフォルト:
        java.lang.Object.class
      • mappedName

        String mappedName
        このリソースがマップされる製品固有の名前。 このリソースの名前は、name要素で定義されるかデフォルトで指定され、リソースを使用するアプリケーション・コンポーネントにとってローカルな名前です。 (相対JNDI名が指定された場合は、JNDI java:comp/env名前空間内の名前になります。) 多くのアプリケーション・サーバーは、これらのローカル名を、アプリケーション・サーバーで既知のリソース名にマップする方法を提供しています。 このマップされた名前はグローバル JNDI名であることがよくありますが、任意の形式の名前にすることができます。

        アプリケーション・サーバーは、マップされる名前の特定の形式またはタイプをサポートする必要や、マップされた名前を使用できる必要はありません。 マップされた名前は、製品依存であり、多くの場合、インストール依存です。 マップされた名前の使用には移植性がありません。

        戻り値:
        製品固有のリソース名
        デフォルト:
        ""
      • value

        Class<? extends Service> value
        サービス・クラスは、常にjavax.xml.ws.Serviceを拡張する型です。 参照の型がサービス端点インタフェースの場合はいつでもこの要素を指定する必要があります。
        戻り値:
        javax.xml.ws.Serviceを拡張するサービス・クラス
        デフォルト:
        javax.xml.ws.Service.class
      • wsdlLocation

        String wsdlLocation
        Webサービス用のWSDL文書をポイントするURL。 指定されない場合、リソース型への注釈によって指定されたWSDLの位置が代わりに使用されます。
        戻り値:
        WSDLドキュメントを指すURL
        デフォルト:
        ""
      • lookup

        String lookup
        ターゲットのWebサービス参照に解決する移植可能なJNDI検索名。
        戻り値:
        移植可能なJNDI参照名
        導入されたバージョン:
        1.7, JAX-WS 2.2
        デフォルト:
        ""