cxf を使用したいのですが、cxf-codegen-plugin wsdl2java を使用して Maven によって提供された WSDL からクライアント スタブを生成しようとしています。
問題は、targetNamespace の名前です。
http://ip:port/ws/EndpointName.inbound.ws:companyName
maven generate-sources フェーズは次のように失敗します。
[ERROR] Failed to execute goal org.apache.cxf:cxf-codegen-plugin:2.7.5:wsdl2java (generate-jaxb) on project: Execution generate-jaxb of goal org.apache.cxf:cxf-codegen-plugin:2.7.5:wsdl2java failed: org.apache.cxf.tools.common.ToolException: : is not a valid char in the targetNamespace -> [Help 1]
エンドポイントは WebMethods を使用して開発されていると思います。この WS エンドポイントをホストしている会社は、targetNamespace を制御できないと言っています。
差し替えてみました
:companyName
に
/companyName
クライアント スタブの生成はうまくいきますが、サーバーに接続しようとするとエラーが発生します。
Caused by: javax.ejb.EJBException: javax.xml.ws.WebServiceException: Could not find service named {http://ip:port/ws/EndpointName.inbound.ws/companyName}WebServiceName in wsdl http://ip:port/ws/EndpointName.inbound.ws:companyName?WSDL
何か案が?WebMethods と互換性を持たせるには、axis2 に切り替える必要がありますか?
どうもありがとう