3

XML カタログを使用して WSDL から Java コードを生成するツールはありますか? 問題は、他のスキーマもインポートする XML スキーマをインポートする wsdl ファイルがあり、スキーマが schemaLocation url で利用できないことです。これが、コード生成が失敗する理由です。ツールが XML カタログを使用できる場合、この問題は、各 WSDL およびスキーマの各 schemaLocation を変更しなくても解決されます。

Eclipse と Netbeans のプラグインを試しましたが、どちらも失敗しました。Eclipse と Netbeans では、XML カタログを使用して別のスキーマの場所を構成したので、エラーなく WSDL ファイルを検証できます。ただし、wsdl からコードを生成すると失敗します。

4

4 に答える 4

1

JBossのwsconsumeツールがエンティティ解決のためにXMLカタログを使用でき、正常に動作することがわかりました。

http://community.jboss.org/wiki/JBossWS-wsconsume

于 2010-01-29T17:54:56.043 に答える
1

記録のために: XML スキーマを使用する小さなサンプル プロジェクトを Github にセットアップしました。それは何かの助けになるかもしれ ません: https://github.com/fmarot/xml-mapping-tutorialチュートリアル/ウィキ

于 2012-10-31T23:11:31.863 に答える
0

WSDLはXMLカタログを使用せずに有効である必要があります。そうでない場合、WSDLを使用するクライアントはそれを使用できません。

もちろん、JBossプラットフォームで実行されていないクライアントを使用しない場合は、問題ありません。

于 2010-03-09T23:06:40.770 に答える
0

その間、自分のニーズに最適な別のソリューションを見つけました。wsdl からソースを生成するときに XMLCatalogs も処理できる jaxws-maven-plugin という Maven プラグインがあります。

https://jax-ws-commons.dev.java.net/jaxws-maven-plugin/

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>1.10</version>
<executions>
    <execution>
        <id>id1</id>
        <phase>generate-sources</phase>
        <goals>
            <goal>wsimport</goal>
        </goals>
        <configuration>
            <verbose>true</verbose>
            <keep>true</keep>
            <catalog>${basedir}/src/main/resources/catalog.xml</catalog>
            <packageName>org.example</packageName>
            <wsdlDirectory>
                ${basedir}/src/main/resources/contracts/wsdl/ExampleService/1
            </wsdlDirectory>
            <wsdlFiles>
                <wsdlFile>ExampleService_1_0.wsdl</wsdlFile>
            </wsdlFiles>
            <xadditionalHeaders>false</xadditionalHeaders>
        </configuration>
    </execution>
</executions>
<configuration>
</configuration>
<dependencies>
    <dependency>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-tools</artifactId>
        <version>2.1.7</version>
    </dependency>
</dependencies>

于 2010-03-10T12:28:22.437 に答える