نشر توسط:admin Views 76 تاریخ : 2 خرداد 1395 نظرات ()
این کلاس شبیه کلاس های دیگر است با برچسب @WebService و متد هایی از این کلاس که باید قابلیت فراخوانی از طریق کلاینت ها را داشته باشند باید برچسب @WebMethod خورده باشند.
مثال:
@WebService
public class SayHelloEndpoint }
private SayHelloServiceImpl service;
public SayHelloServiceImpl getService(){
return service;
}
public void setService(SayHelloServiceImpl service(){
this.service = service;
public SayHelloEndpoint(){
this.service = new SayHelloServiceImpl();
@WebMethod
public String sayHello(String name){
String ret = "nothing";
if (name != null) {
ret = service.sayHello(name);
return ret;
ابتدا فایلی بنام sun-jaxws.xml در WEB-INF ایجاد می کنیم. این فایل محل قرارگیری تنظیمات Endpoint هاست. مثال:
url-pattern='/services2/SayHello'/>
implementation="com.behsazan.corebanking.cms.webservice.endpoint.ChangeCardTransLimitEndpoint"
url-pattern="/services2/ChangeCardTransLimit" />
بعضی از این کتابخانه ها لزوماً نباید باشد اما با این ها حتماً کار می کند.
javax.xml.bind
jaxb-api
2.2
com.sun.xml.bind
jaxb-impl
2.2.6
jaxb-xjc
2.2.1.1
javax.xml.ws
jaxws-api
2.2.1
com.sun.xml.ws
jaxws-rt
2.1.7
jaxws-tools
برای اینکه بتواند وب سرویس ها را به سمت سرولت JAX-WS هدایت کنیم:
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
JAX-WS endpoint
WSServlet
com.sun.xml.ws.transport.http.servlet.WSServlet
1
/services2/*
تست
برنامه را اجرا کرده در آدرس بار نام Endpoint مورد نظر را می زنیم :
که چنین صفحه ای باید مشاهده شود:
همانطور که مشاهده می شود فایل wsdl تولید شده با کلیک بر روی لینک می توان wsdl آنرا مشاهده کرد:
و فایل xsd آن که در کادر قرمز رنگ مشاهده می شود:
فایل pdf
فایل word