创建客户端
在这个部分,我们将看看基于StockQuoteService类创建客户端的四种方式:
构建基于AXIOM的客户端;
使用Axis2 Databinding Frame work(ADB)生成客户端;
使用XMLBeans生成客户端;
使用JiBX生成客户端。
使用AXIOM创建一个客户端
你应该得到以下输出:
done
Current
使用ADB生成一个客户端
通过在Axis2_HOME/samples/quickstartadb目录键入以下命令来生成客户端数据绑定:
%AXIS2_HOME%/bin/WSDL2Java -uri resources/META-INF/StockQuoteService.wsdl -p samples.quickstart.clients -d adb -s -o build/client
或者在Axis2_HOME/samples/quickstartadb目录简单的键入ant generate.client。
下一步看看quickstartadb/src/samples/quickstart/clients/ADBClient.java,并看看它在Code Listing 10中是怎样定义的。
你应该得到以下输出:
使用XMLBeans生成一个客户端
执行以下步骤来使用XMLBeans数据绑定来构建一个客户端。
通过在xmlbeansClient目录键入以下命令来生成数据绑定:
%AXIS2_HOME%/bin/WSDL2Java -uri resources/META-INF/StockQuoteService.wsdl -p samples.quickstart.service.xmlbeans -d xmlbeans -s -o build/client
或者简单的在Axis2_HOME/samples/quickstartxmlbeans目录下键入ant generate.client。
注意这只会创建客户端存根代码而不会创建服务器端代码。
下一步看看quickstartxmlbeans/src/samples/quickstart/clients/XMLBEANSClient.java,该类使用你创建的XMLBeans数据绑定创建一个客户端存根,然后它在Web服务上调用getPrice和update操作。getPrice方法操作创建GetPriceDocument,它内部的GetPrice类,并设置symbol为ABC。然后它发送请求并得到GetPriceResponseDocument
update方法创建一个UpdateDocument和Update并设置symbol为ABC及price为42.32,当完成时显示done。
现在通过在Axis2_HOME/samples/quickstartxmlbeans目录键入ant run.client构建并运行工程。
你应该得到下列输出:
使用JiBX生成一个客户端
执行以下步骤来使用JiBX构建一个客户端。
通过在Axis2_HOME/samples/quickstartjibx目录的控制台键入以下命令来生成客户端存根:
- %AXIS2_HOME%/bin/wsdl2java
-uri resources/META-INF/StockQuoteService.wsdl -p samples.quickstart.clients -d jibx -s - -uw
-o build/client
下一步看看quickstartjibx/src/samples/quickstart/clients/JiBXClient.java。该类使用创建的JiBX客户端存根在Web服务上访问getPrice和update操作。getPrice方法为股票"ABC"发送请求并显示当前price。
update方法为股票"ABC"设置价格为42.35。
现在通过在Axis2_HOME/samples/quickstartjibx目录的控制台键入" ant run.client[b]"来构建并运行客户端。
你应该得到以下输出: