MyEclipse下XFire开发Webservice实例
???? 在開始前,先介紹一些概念:
???? XFire Java SOAP框架概述 (摘自:http://tech.it168.com/j/e/2006-10-28/200610281432707.shtml )
??? MyEclipse Web Services是建立在XFire Java SOAP框架和工具基礎上的, XFire是一款開源的Java SOAP框架。它擁有一個輕量級的信息處理模塊,通過STAX來與SOAP信息相結合。提供了一個工作在Web Services下的簡單API,支持POJO和schema開發. XFire支持 Web Services standards,Spring 整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP, In-memory傳輸協議
一、環境配置:MyEclipse7.0
???????????????????? JDK1.6
二、創建Web Service Project
????? 1)在MyEclipse中選擇File—>New—>Other,選擇Web Service Project
??????
????? 2)Project Name:WebServiceServer,Framework:XFire,其他選項默認
? ? ?
???? 3)Next,這一步保持默認值
???? 4)Project Library選擇,選擇XFire 1.2? Core Libraries
????
??? 5)Finish,創建成功后看到的工程目錄如下:
???
??? 6)完成以上5步后,查看WebRoot/WEB-INF/web.xml
? ? ? ?? 這里指明了當遇到/services/*請求時,將選用XFireConfigurableServlet來處理 ??
三、創建Web Service Code
??? 1)通過File—>New—>Other—>Web Services—>Web Service wizard創建JAVA CODE
????
???? 2)選擇通過JAVA CLASS創建Web Service
????
???? 3)創建HelloWebService.java,通過New創建com.service package,向導將為工程自動創建對應的接口類與實現類
????
???? 創建成功后查看WebServices/services.xml,發現配置文件多了以下內容:
????
??? 4)修改HelloWebServiceImpl.java
??? package com.service;
??? //Generated by meteorWJ
?? public class HelloWebServiceImpl implements IHelloWebService {
???
???? public String example(String message) {
??? ??? return getAuthor()+","+message;
?? ? }
?? ? private String getAuthor(){
??? ??? return "meteorWJ";
?? ? }
???
?? }
?
四、部署并測試WebSericeServer
??? 1)部署WebServiceServer
???
??? 在部署向導中選擇項目、服務器
???
??? 2)啟動服務器
???
?? 3)測試WebService
?? MyEclipse提供了一個Web Service Explorer來測試Web Service
??
?? 選擇列表中的Launch SOAP Web Services Explorer
?? 4)選擇WSDL模式
??
?? 5)在Explorer中選擇WSDL Main,在右邊的URL中輸入
?? http://localhost:9090/WebServiceServer/services/HelloWebService?WSDL,單擊"Go"
?? 其中9090是服務器端口號,services在之前的web.xml中指定
?? 若在Status中顯示成功打開WSDL文件則測試成功
? ? ?
五、創建WebService客戶端
經過以上幾步,我們已經成功發布了一個WebService,現在需要創建一個客戶端來調用該服務
? 1)創建Java Project:WebServiceClient
? 2)引入MyEclipse Libraries
?????? 右鍵WebServiceClient—>Build Path—>Add Libraries
?
? 選擇XFire 1.2 HTTP Client Libraries
?
?? 3)創建HelloWebService.java
?? 在src目錄下創建com.client.HelloWebService.java
?? package com.client;
?? import java.net.URL;
?? import org.codehaus.xfire.client.Client;
?? public class HelloWebService {
?????? public static void main(String[] args) throws Exception
?????? {
??? ??? Client client = new Client(new URL("http://localhost:9090/WebServiceServer/services/HelloWebService?wsdl"));
??? ??? Object[] results = client.invoke("example", new Object[] {"hello"});
??? ??? System.out.println((String) results[0]);
?????? }
?? }
?? 4)在確認服務器啟動的情況下,運行HelloWebService.java
?? 右鍵點擊Run As>Java Application,在控制臺中看到如下輸出
??
?
本次實例到此就算完成了。
總結
以上是生活随笔為你收集整理的MyEclipse下XFire开发Webservice实例的全部內容,希望文章能夠幫你解決所遇到的問題。