jaxws-maven-plugin
バージョン2.1
を使用しています。だから、WSDLファイルがディレクトリで検索されjaxws-maven-pluginは、クラスの場所に関連してWSDLの場所を解決します。なぜですか?
static {
URL url = null;
try {
URL baseUrl;
baseUrl = my.package.gen.My_Service.class.getResource(".");
url = new URL(baseUrl, "wsdl/mywsdl.wsdl");
} catch (MalformedURLException e) {
logger.warning("Failed to create URL for the wsdl Location: 'wsdl/mywsdl.wsdl', retrying as a local file");
logger.warning(e.getMessage());
}
MYSERVICE_WSDL_LOCATION = url; }
(パッケージ):
<configuration>
<keep>true</keep>
<sourceDestDir>${basedir}/src/main/java</sourceDestDir>
<extension>true</extension>
<wsdlDirectory>${basedir}/src/main/resources/wsdl</wsdlDirectory>
<packageName>my.package.gen</packageName>
<wsdlLocation>wsdl/*</wsdlLocation>
<wsdlFiles>
<wsdlFile>mywsdl.wsdl</wsdlFile>
</wsdlFiles>
</configuration>
そして、生成されたコードは次のとおりです。私は非常に奇妙なコードがジャー資源からWSDLの場所のために生成されていました生成されたクラスの居住者であり、論理的であるように、メインのjarディレクトリには存在しません。そして、WSDLが見つかりません。
jaxws-maven-plugin
のバグですか、それとも私の設定ではエラーですか?
url = new URL(baseUrl, "wsdl/mywsdl.wsdl");
の世代のために
はその間、あなたは問題の解決策を見つけることができますか?私はあなたと同じ問題に直面しています.Samuelsのソリューションは実際には醜いハックです。 – Vadimo
これは別の解決策と同じ問題です。 http://stackoverflow.com/questions/4163586/jax-ws-client-whats-the-correct-path-to-access-the-local-wsdl – Vadimo