簡體   English   中英

從wsdl(cxf)生成代碼的最簡單方法是什么?

[英]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插件生成類

http://sourceforge.net/projects/wsdl2javawizard/

我發現我可以忽略wsdl2java的錯誤,因為無論如何它都會生成一個類。 根據從ws-creator獲得的示例,我僅期望另一個類名。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM