最近のアクセス:
Java でのネイティブ SOAP サポートの使用

JAX-WS に基づくネイティブ Java を使用する際に、Web サービスを生成することができます。これにより ws* (web service security、web service addressing など) を実装することができます。

Java を使用して GeneXus でネイティブ SOAP サポートを実装する方法

[ Use Native Soap ]、 [ Generator ] 、 [ Object ] プロパティを Yes に設定します。

要件

  1. JDK 1.6 以上の使用をお勧めします。
    JDK / JRE 1.9 は、GeneXus 15 Upgrade 12 以降でサポートされています。
    JVM 1.9 は、パラメーター --add-modules java.xml.ws で起動する必要があります。
    OpenJdk の場合はバージョンは 11 以上を使用することを推奨します。この場合、GeneXus バージョンは 16 U8 以上である必要があります。
  2. [ Java package name ] プロパティの値を設定します。

実装の詳細

通常の場合、[ Call protocol ] プロパティ = SOAP の各プロシージャー (例: "mywebservice") に web サービスの実装を含む "amywebservice_impl.java" という名前のソースファイルが生成されます。
加えて、[ Use Native Soap ] プロパティ = Yes の場合、amywebservice_services.java という名前のソースファイルが生成されます。コメントを使用した web サービスの定義は、web サービスのパラメーターおよびそのメソッドと同様に宣言されます (現在では、唯一のメソッドが "Execute") です。
Java モデル内 (jaxws ディレクトリー内) のいくつかのクラスは webapp 内の jaxws ディレクトリーにコンパイルおよび転送されます。

生成された記述子

[ Use Native SOAP ] プロパティを Yes に設定すると、いくつかの追加の記述子が WEB-INF ディレクトリーにコピーされます。
  • sun-jaxws.xml
    これに Web サービスの定義が含まれています。
次の例では、パッケージ名が com.webservices.test であり、sun-jaxws.xml は次のようになります:
<endpoint name="get Clientes" implementation="com.webservices.test.agetclientes_services" url-pattern="/servlet/ws/com.webservices.test.agetclientes_services"/>
  • web.xml
    これは、モデルの web ディレクトリー内の web*_native_ws.xml テンプレートから自動的に生成され、WEB-INF ディレクトリーに転送されます。

Web サービスの WSDL の URI

Web サービスの WSDL の URI は次のようになります:
http://server:port/<URL BASE>/servlet/ws/<package>.<servicename>_services?wsdl
例:
http://172.16.3.3:8080/JavaEnvironment/servlet/ws/com.webservices.test.agetclientes_services?wsdl
 


サブページ
Created: 15/10/29 21:26 by Admin Last update: 23/05/08 21:26 by Admin
カテゴリ
Powered by GXwiki 3.0