私は、フォルダのres/WSDLを作成し、そこにInterface.wsdlを入れて、次のコマンドのApache CXFとWSDL
wsdl2java -ant -impl -wsdlLocation classpath:wsdl/Interface.wsdl -server -d serverclasses Interface.wsdl
を使用してサービスを作成しました。私はresフォルダをビルドパスに追加しました。私はプロジェクトを実行するとき
は、しかし、これで失敗します。
Exception in thread "main" com.sun.xml.internal.ws.server.ServerRtException: [failed to localize] cannot.load.wsdl(classpath:wsdl/Interface.wsdl)
at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.getPrimaryWsdl(Unknown Source)
at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.createEndpoint(Unknown Source)
at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.publish(Unknown Source)
問題はここで何ですか?これを処理する最善の方法は何ですか?注意:私はwsdlからjavaクラスを作成するためにコマンドラインを使用しています。
パッケージ名の1つにキーワードinterfaceが含まれているため、コンパイルできません。それはキーワードとしてではなく、それを扱うようにJavaに指示する方法はありますか?
eclipseにjarファイルにwsdlフォルダを含めるように指示するにはどうすればよいですか?私はこのオプションを好む。 – rukiman
それは単純なJavaプロジェクト(Mavenや他のオートメーション支援のビルドではない)だと仮定すると、単純にwsdlフォルダをプロジェクトのソースフォルダにコピーしようとするかもしれません。プロジェクトをクリーンビルドし、jarファイルをチェックしてください(私はEclipseプロジェクトを使用していませんが)。 – gusto2
wsdlファイルが見つからないためではないようです。私は絶対的な道を作ったが、まだそれを見つけることができなかった。私はどこかでcxf-rt-frontend-jaws-3.1.7.jarファイルを追加する必要がありましたが、このエラーが発生しました。今すぐjava.util.ServiceConfigurationErrorを取得しました。javax.xml.ws.spi.Provider:プロバイダorg.apache.cxf.jaxws.spi.ProviderImplをインスタンス化できませんでした。たぶん私は別のjarファイルがないかもしれません。 Webサービスに必要なjarファイルは何ですか? – rukiman