XFire Java SOAP框架概述
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傳輸協議.
一 建立Web Service Project
- 輸入項目名稱 wsexample 選擇XFire framework
- 配置XFire servlet,這裏我們就是用默認的配置
- 爲了方便測試,我們將XFire 1.2 HTTP Client Libraries 也導入進來。項目建立完成。
二 創建Web Service類
- 在src下建立Web Service,New->Other->MyEclipse->Web Services->Web Service
- 輸入 Web Service Name,選擇放置的package,會自動生成Service接口與實現類
三 在Web Service Explorer中測試
- 將項目發佈到Tomcat 點擊SOAP Web Service Explorer
- 選擇 WSDL Page -> WSDL Main -> 輸入 WSDL URL "http://127.0.0.1:8080/wsexample/service/HelloWorldService?WSDL" -> GO
- 選擇example方法
- 在in() 輸入 "This is a wsexample!" -> GO
測試完成!
四 Web Service Client test
- 編寫HelloWorldServiceClient
package cn.wsexample.client;
import java.net.MalformedURLException;
import org.codehaus.xfire.XFireFactory;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;
import cn.wsexample.webservice.IHelloWorldService;
public class HelloWorldServiceClient {
public static void main(String[] args) {
Service srvcModel = new ObjectServiceFactory().create(IHelloWorldService.class);
XFireProxyFactory factory =
new XFireProxyFactory(XFireFactory.newInstance().getXFire());
String helloWorldURL =
"http://localhost:8080/wsexample/services/HelloWorldService";
try {
IHelloWorldService srvc = (IHelloWorldService)factory.create(srvcModel, helloWorldURL);
String result = srvc.example("wsexample client test");
System.out.print(result);
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
} - 運行 顯示結果:wsexample client test