2009-11-03 60 views
22

我使用WSDL2Java轉換器從WSDL生成Java文件,但我不知道如何使用這些文件的服務,因爲沒有任何示例。我正在實施客戶端。如何使用Axis WSDL2Java生成的文件?

+0

您使用的是Axis1還是Axis2?如果是Axis2,那麼您使用了哪個數據綁定選項?什麼是你指定給wsdl2java的確切參數? – 2009-11-03 06:59:07

+0

軸1和我只給了選項-s wsdl_filename.wsdl當然類路徑和Java,包括所有必須的jar – newbie 2009-11-03 07:02:22

+0

閱讀下面 – 2009-11-03 07:11:04

回答

10

關於Axis2的:閱讀這些這些鏈接,它們包含一些例子:

http://ws.apache.org/axis2/1_5_1/quickstartguide.html#clients
http://ws.apache.org/axis2/1_0/userguide3.html

編輯:關於軸1:它是基於JAX-RPC,你需要實例化存根對象或使用服務定位器來獲取存根實例,並且所有的WS操作都將在其中。舉例如下here

public class Tester { 
    public static void main(String [] args) throws Exception { 
    // Make a service 
    AddressBookService service = new AddressBookServiceLocator(); 

    // Now use the service to get a stub which implements the SDI. 
    AddressBook port = service.getAddressBook(); 

    // Make the actual call 
    Address address = new Address(...); 
    port.addEntry("Russell Butek", address); 
    } 
} 
+1

我的答案我有這樣的文件:ServiceBindingImpl.java ServiceBindingStub.java ServicePortType.java ServiceService.java ServiceLocator.java ... – newbie 2009-11-03 07:32:21

+0

然後只是實例化你的ServiceLocator。 <您的返回類型> result = new ServiceLocator()。getService()。<您的操作參數名稱> – 2009-11-03 07:38:14

+2

由於某些原因ServiceLocator沒有getService()方法。無論如何,Thx幫助 – newbie 2009-11-03 07:55:13

3

通常,客戶端不會在Web服務中實例化存根,您可以使用服務定位器並調用get方法。我無法從你的問題中得知,但是如果你問一個更一般的「我在哪裏獲得JavaDocs(或者這樣)來更好地理解API」,你將不得不告訴你使用哪個WS。

Axis User Guide

相關問題