最近應項目需求、負責門戶的單點登錄、(不包括授權),緊緊是用戶的註冊的統一管理,但是有多個系統,這就用到了webservice,
以前竟聽說了,知道怎麼回事,但沒實際用過,比較懶,自己做了一個demo,用的是XFire。自己也做個備忘吧。
服務端參照以下網址做的,感覺寫得很詳細
http://www.ibm.com/developerworks/cn/java/j-lo-xfire/index.html
客戶端呢,代碼如下:但是要注意客戶端的接口要自己定義一下:HelloWorldService
//接口
public interface HelloWorldService {
/**
* sayHello 方法聲明瞭 Web 服務對外暴露的接口
*
* @return 返回給客戶端的字符串
*/
public String sayHello();
}
//調用
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;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Service srModel = new ObjectServiceFactory()
.create(HelloWorldService.class);
XFireProxyFactory factory = new XFireProxyFactory(XFireFactory
.newInstance().getXFire());//創建工廠實例
//這裏不加?wsdl
//查看直接調用服務
String helloURL = "http://localhost:8080/WbXFire/services/HelloWorldService";
try {
HelloWorldService srvc = (HelloWorldService) factory.create(
srModel, helloURL);
System.out.print("/////////"+srvc.sayHello());
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
ok了。原來如此