2014-01-06 38 views
2

我試圖發送使用Apache CXF在Java中一個非常簡單的SOAP請求:爪哇 - 阿帕奇CXF客戶端,而不WSDL

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> 
    <SOAP-ENV:Body> 
     <element>some string</element> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 

下面的教程介紹了CXF的使用情況發送:只有1單元的消息請求,但它假定我們有一個WSDL文件:http://cxf.apache.org/docs/how-do-i-develop-a-client.html

如果我沒有此WSDL,該怎麼辦?我應該創建一個嗎?在這種情況下它會是什麼樣子?

編輯:該服務不由我維護。

回答

3

您正在尋找的教程是爲了生產一個客戶端。這意味着,您的web服務已經存在或作爲服務器託管。您的客戶將使用本教程簡單地調用它。

CXF的JAX WS API實現符合您的要求。您可以按照這些基本教程來實現,只需使用註釋並更改請求和響應消息結構。

教程鏈接:

http://www.mkyong.com/webservices/jax-ws/jax-ws-hello-world-example/

http://java.dzone.com/articles/jax-ws-hello-world

+0

感謝您的回答。服務不是由我維護的(我甚至不知道它是否是CXF服務或其他)。我怎樣才能得到它的wsdl文件? (通過url:port到達soap服務的方式;但url:port?wsdl不顯示任何內容) –

+1

沒有其他方法,除了服務提供者以外,還沒有其他方法獲得wsdl。如果url?wsdl不起作用,您可以要求服務提供商提供wsdl文件。 – kingAm

+0

是否可以在沒有wsdl文件的情況下使用CXF? –