(一)JDK原生支持的WebService

1.接口

package cn.cjc.ws;

import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;

@WebService
// jdk1.6.0_22版本以下的不加這個註解可能無法發佈WS服務
@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface Message {
	String getMsg(String name);
}

2.實現類

package cn.cjc.ws;

import javax.jws.WebService;

@WebService(endpointInterface = "cn.cjc.ws.Message")
public class MessageImpl implements Message {
	@Override
	public String getMsg(String name) {
		return name + ",歡迎學習WebService";
	}
}

3.發佈服務

package cn.cjc.ws;

import javax.xml.ws.Endpoint;

public class Pub {
	public static void main(String[] args) {
		Endpoint.publish("http://localhost:8888/msg", new MessageImpl());
	}
}

4.調用服務

a)在IDE中另建一個工程,目錄爲D:\MyEclipseWorkspace\invoke

b)在CMD命令行輸入命令wsimport -s D:\MyEclipseWorkspace\invoke\src http://localhost:8888/msg?wsdl,用來生成WS客戶端調用代碼,其中wsimport是JDK自帶的命令,-s表示生成源代碼,D:\MyEclipseWorkspace\invoke\src表示源代碼會在該目錄下生成,http://localhost:8888/msg?wsdl是WS服務的發佈地址。

c)調用

package cn.cjc.ws;

public class Invoke {

	public static void main(String[] args) {
		Message service = new MessageImplService().getMessageImplPort();
		System.out.println(service.getMsg("Junki"));
	}

}

d)輸出結果

Junki,歡迎學習WebService


5.結束語

以上就是JDK原生支持的WebService從建立、發佈到調用的整個過程。下一章會分析WebService的協議XML文件和一些個性化設置






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章