« ايجاد web service در JavaEE 5 توسط NetBeans 5.5 | صفحه اصلی | Binding بين XML Schema و كلاس هاي جاوا »
استفاده از Web Service در برنامه
October 1, 2007 12:49 PM
در مطلب قبل چگونگي ايجاد يك Web Service را ديديم. در اين مطلب يك Web Service Client خواهيم ساخت كه از Web Service ساخته شده در قسمت قبل استفاده كند. براي اينكار ما همچنان ازJavaEE 5 و NetBeans IDE 5.5 استفاده خواهيم نمود.
مراحل كار:
1- ساخت يك Web Application
همانگونه كه در مطلب قبل نيز توضيح داده شد براي ساخت يك Web Application بايد پس از اجراي NetBeans IDE از منوي File منوي New Project را انتخاب نماييد. با اين كار فرم ديگري باز مي شود. در فرم مذكور از قسمت Web گزينه Web Application را انتخاب كرده، دكمه Next را بفشاريد. در مرحله بعدي، نام پروژه و مسير آن را مشخص كنيد و دكمه Finish را بزنيد.
نكته: اجباري نيست كه براي استفاده از Web Service حتما يك Web Application داشته باشيد. مي توان Web Service را از داخل هر Application جاوا فراخواني كرد. در اينجا بعنوان نمونه از Web Application براي اين كار استفاده شده است.
2- ساخت يك package
در NetBeans روي پروژه راست كليك كرده، گزينه New و سپس Java Package را انتخاب نماييد. در فرمي كه باز مي شود نام package را WSClientPac وارد كنيد. همچنين فيلد location را Source Package قرار دهيد. در انتها دكمه Finish را فشار دهيد.
3- ساخت يك Web Service Client
روي پروژه راست كليك كرده، گزينه New و سپس Web Service client را انتخاب نماييد. فرمي باز مي شود. در اين فرم اولا گزينه WSDL URL را انتخاب كنيد و مسير فايل wsdl مربوط به Web Service را در باكس مقابل آن وارد كنيد. همچنين فيلد package را با WSClientPac پر كنيد. دكمه Finish را در پايان فشار دهيد. اگر خطايي رخ ندهد، با اين كار در مسير پروژه فولدري به نام Web Service Refrences ايجاد مي شود كه مشخصات Web Service Client مربوطه را در خود دارد.
سوال: فايل wsdl چيست و چطور آن را بيابيم؟
wsdl مخفف Web Service Description Language ، فايلي است به فرمت XML كه مشخصات Web Service را در خود دارد. براي استفاده از Web Service بايد مسير فايل wsdl آن را بدانيد. همه توليد كنندگان Web Service اين مسير را در اختيار استفاده كنندگان قرار مي دهند.
در مورد Web Service اي كه در قسمت قبل ساختيم، براي پيدا كردن مسير اين فايل، روي Web Service مربوطه راست كليك كنيد و گزينه peoperties را انتخاب كنيد. مسير wsdl در پايين اين صفحه نوشته شده است. اين مسير بايد چنين باشد:
مراحل كار:
1- ساخت يك Web Application
همانگونه كه در مطلب قبل نيز توضيح داده شد براي ساخت يك Web Application بايد پس از اجراي NetBeans IDE از منوي File منوي New Project را انتخاب نماييد. با اين كار فرم ديگري باز مي شود. در فرم مذكور از قسمت Web گزينه Web Application را انتخاب كرده، دكمه Next را بفشاريد. در مرحله بعدي، نام پروژه و مسير آن را مشخص كنيد و دكمه Finish را بزنيد.
نكته: اجباري نيست كه براي استفاده از Web Service حتما يك Web Application داشته باشيد. مي توان Web Service را از داخل هر Application جاوا فراخواني كرد. در اينجا بعنوان نمونه از Web Application براي اين كار استفاده شده است.
2- ساخت يك package
در NetBeans روي پروژه راست كليك كرده، گزينه New و سپس Java Package را انتخاب نماييد. در فرمي كه باز مي شود نام package را WSClientPac وارد كنيد. همچنين فيلد location را Source Package قرار دهيد. در انتها دكمه Finish را فشار دهيد.
3- ساخت يك Web Service Client
روي پروژه راست كليك كرده، گزينه New و سپس Web Service client را انتخاب نماييد. فرمي باز مي شود. در اين فرم اولا گزينه WSDL URL را انتخاب كنيد و مسير فايل wsdl مربوط به Web Service را در باكس مقابل آن وارد كنيد. همچنين فيلد package را با WSClientPac پر كنيد. دكمه Finish را در پايان فشار دهيد. اگر خطايي رخ ندهد، با اين كار در مسير پروژه فولدري به نام Web Service Refrences ايجاد مي شود كه مشخصات Web Service Client مربوطه را در خود دارد.
سوال: فايل wsdl چيست و چطور آن را بيابيم؟
wsdl مخفف Web Service Description Language ، فايلي است به فرمت XML كه مشخصات Web Service را در خود دارد. براي استفاده از Web Service بايد مسير فايل wsdl آن را بدانيد. همه توليد كنندگان Web Service اين مسير را در اختيار استفاده كنندگان قرار مي دهند.
در مورد Web Service اي كه در قسمت قبل ساختيم، براي پيدا كردن مسير اين فايل، روي Web Service مربوطه راست كليك كنيد و گزينه peoperties را انتخاب كنيد. مسير wsdl در پايين اين صفحه نوشته شده است. اين مسير بايد چنين باشد:
4- ايجاد يك كلاس براي فراخواني Web Service و نوشتن كدهاي لازم
روي پروژه راست كليك كرده و New و سپس Java Class را انتخاب كنيد. نام كلاس را HelloClient وارد كنيد. همچنين فيلد Package را هم با WSClientPac مقداردهي كنيد. دكمه Finish را بزنيد.
بدين ترتيب فابل HelloClient.java ساخته مي شود كه حاوي كدهاي اوليه تعريف كلاس است. كدهاي لازم را به اين فايل اضافه كنيد تا نهايتا محتويات فايل به اين صورت شود:
روي پروژه راست كليك كرده و New و سپس Java Class را انتخاب كنيد. نام كلاس را HelloClient وارد كنيد. همچنين فيلد Package را هم با WSClientPac مقداردهي كنيد. دكمه Finish را بزنيد.
بدين ترتيب فابل HelloClient.java ساخته مي شود كه حاوي كدهاي اوليه تعريف كلاس است. كدهاي لازم را به اين فايل اضافه كنيد تا نهايتا محتويات فايل به اين صورت شود:
package WSClientPac;
import javax.xml.ws.WebServiceRef;
import WSClientPac.TestWebService;
import WSClientPac.TestWebServiceService;
import WSClientPac.TestWebService;
import WSClientPac.TestWebServiceService;
public class HelloClient {
static TestWebServiceService service = new TestWebServiceService();
public HelloClient() {}
public String getHello(String name){
String result="";
try{
TestWebService port = service.getTestWebServicePort();
result = port.sayHello(name);
} catch (Exception e){
result = e.toString();
}
return result;
}
}
static TestWebServiceService service = new TestWebServiceService();
public HelloClient() {}
public String getHello(String name){
String result="";
try{
TestWebService port = service.getTestWebServicePort();
result = port.sayHello(name);
} catch (Exception e){
result = e.toString();
}
return result;
}
}
5- فراخواني متد getHello
در قسمت body فايل index.jsp واقع در فولدر Web Pages دستورات زير را اضافه نماييد:
در قسمت body فايل index.jsp واقع در فولدر Web Pages دستورات زير را اضافه نماييد:
<%@ page import="WSClientPac.HelloClient" %>
<% HelloClient hc = new HelloClient(); %>
<p><%= hc.getHello("JavaBorder") %> </p>
<% HelloClient hc = new HelloClient(); %>
<p><%= hc.getHello("JavaBorder") %> </p>
6- اجراي برنامه
با F6 برنامه را اجرا كرده و نتيجه را در Browser ببينيد. اگر خطايي رخ ندهد، در خروجي بايد پيغام "Hello, JavaBorder" را ببينيد. البته فراموش نكنيد كه قبل از اجراي برنامه Web Service را Deploy نماييد.
با F6 برنامه را اجرا كرده و نتيجه را در Browser ببينيد. اگر خطايي رخ ندهد، در خروجي بايد پيغام "Hello, JavaBorder" را ببينيد. البته فراموش نكنيد كه قبل از اجراي برنامه Web Service را Deploy نماييد.
نظرخواهی
ارسال شده توسط: ایمان در ساعت October 1, 2007 09:57 PM
سلام دوست عزيز
خوشحالم كه به نوشته هام توجه مي كنيد. همينطور از اينكه در وبلاگتان به اينجا لينك داده ايد خوشحال و ممنونم.
موفق باشيد
ارسال شده توسط: Mahyar در ساعت October 2, 2007 10:08 AM