[英]What is the easiest way to generate a Java client from an RPC encoded WSDL
[英]What is the easiest way to generate code from wsdl (cxf)?
我需要使用具有webservice-security的Webservice。 此Web服務是使用cxf創建的(不是我創建的)。
到目前為止,我嘗試過:
wsimport與本地下載的wsdl( http://theopentutorials.com/examples/java-ee/jax-ws/create-and-consume-web-service-using-jax-ws/ )。 這失敗了,並有幾個錯誤。 我在沒有-extension的情況下嘗試了它,說“沒有可用的端口,請嘗試使用-extension”。 我嘗試使用-extension表示“沒有標准SOAP”。 所以我認為這可能是因為他們使用了CXF。
在eclipse中使用cxf的網絡服務客戶端( http://help.eclipse.org/luna/topic/org.eclipse.jst.ws.cxf.doc.user/tasks/create_client.html )。 當我在第3d步“ Apache CXF 2”中選擇“確定”按鈕時,該按鈕變為灰色。 如果我理解正確,可能是未解決的錯誤( https://bugs.eclipse.org/bugs/show_bug.cgi?id=351799 )。
wsdl2java( https://axis.apache.org/axis2/java/core/tools/eclipse/wsdl2java-plugin.html#Installation )。 我按照說明單擊完成后出現異常“完成過程時發生錯誤-java.lang.InterruptedException:java.lang.RuntimeException:java.lang.reflect.InvocationTargetException”。
編輯:我現在在命令提示符下運行wsdl2java得到以下錯誤:
wsdl2java -d C:\\ xkfz -client -verbose C:\\ xkfz.wsdl Loading Front jaxws ... Loading DataBinding jaxb ... wsdl2java -d C:\\ xkfz -client -verbose C:\\ xkfz.wsdl wsdl2java-Apache CXF 3.0.1
2014年8月26日下午4:07:23 org.apache.cxf.wsdl11.WSDLServiceBuilder checkForWrapped信息:操作{ http://www.xoev.de/schemata/xkfz/1_1 } verarbeiteXKfz無法解包,輸入消息必須引用全局與操作具有相同本地名稱的元素聲明
有什么方法可以生成我想要的類嗎? 這不應該那么復雜:-/
我將Win7 / 64與最新的Eclipse EE和JDK結合使用。
CXF包含一個Maven插件,可以從WSDL生成Java構件。 只需添加一些指定的配置值即可,如下所示:
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>${cxf.version}</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${basedir}/src/main/resources/myService.wsdl</wsdl>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
有關更多信息,請參考此地址。 希望這可以幫助。
嘗試使用eclipse插件生成類
我發現我可以忽略wsdl2java的錯誤,因為無論如何它都會生成一個類。 根據從ws-creator獲得的示例,我僅期望另一個類名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.