日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
使用Eclipse建立Webservice

這里講解一個(gè)簡(jiǎn)單的例子;

1.首先我們使用Eclipse建立Webservice工程:

點(diǎn)擊finish之后我們就完成了Eclipse建立Webservice的過(guò)程。myeclipse自動(dòng)幫你生成services.xml以及web應(yīng)用目錄結(jié)構(gòu),其中的services.xml是你導(dǎo)出服務(wù)的配置文件,注意在WEB-INF/web.xml文件中配置了xfire自己的servlet.

 
 
 
 
  1. 〈servlet〉
  2. 〈servlet-name〉XFireServlet〈/servlet-name〉
  3. 〈servlet-class〉org.codehaus.xfire.
  4. transport.http.XFireConfigurableServlet
  5. 〈/servlet-class〉
  6. 〈load-on-startup〉0〈/load-on-startup〉
  7. 〈/servlet〉
  8. 〈servlet-mapping〉
  9. 〈servlet-name〉XFireServlet〈/servlet-name〉
  10. 〈url-pattern〉/services/*〈/url-pattern〉
  11. 〈/servlet-mapping〉

2.接下來(lái),現(xiàn)在編寫(xiě)要導(dǎo)出的pojo類,首先是接口:

 
 
 
 
  1. packagenet.rubyeye.webservicedemo;
  2. //GeneratedbyMyEclipse
  3. publicinterfaceIHelloWorldService{
  4. publicStringsayHello(Stringname);
  5. }

這個(gè)接口我們只提供一個(gè)方法:sayHello(),我們沒(méi)有采用JSR181標(biāo)注式的聲明方式,還是采用xml配置文件。然后是實(shí)現(xiàn)類:

 
 
 
 
  1. packagenet.rubyeye.webservicedemo;
  2. //GeneratedbyMyEclipse
  3. publicclassHelloWorld
  4. ServiceImplimplementsIHelloWorldService{
  5. publicStringsayHello(Stringname){
  6. return"hello,"+name;
  7. }
  8. }
  9. 最后,配置下services.xml文件:
  10. 〈service〉
  11. 〈name〉HelloWorldService〈/name〉
  12. 〈serviceClass〉
  13. net.rubyeye.webservicedemo.IHelloWorldService
  14. 〈/serviceClass〉
  15. 〈implementationClass〉
  16. net.rubyeye.webservicedemo.HelloWorldServiceImpl
  17. 〈/implementationClass〉
  18. 〈style〉wrapped〈/style〉
  19. 〈use〉literal〈/use〉
  20. 〈scope〉application〈/scope〉
  21. 〈/service〉

我們使用Eclipse建立的Webserviceweb服務(wù)名稱叫做HelloWorldService,接口是IHelloWorldService,實(shí)現(xiàn)類是HelloWorldServiceImpl。注意,其實(shí)我們這三個(gè)步驟可以一步完成,只要直接使用myeclipse的new web service向?qū)Ъ纯伞?/p>

#p#

3.然后將此工程部署到tomcat上,通過(guò)http://localhost:8081/HelloWorld/services/HelloWorldService?wsdl可以看到生成的wsdl文件。注意,在部署之后,services會(huì)被拷貝到WEB-INFclassesMETA-INFxfire目錄下,xfire會(huì)自動(dòng)搜索此目錄并加載配置文件。我們可以編寫(xiě)一個(gè)client來(lái)測(cè)試web服務(wù),你也可以點(diǎn)擊myeclipse上的Launch the Web Services來(lái)測(cè)試web服務(wù)。

4.編寫(xiě)client代碼:

 
 
 
 
  1. packagenet.rubyeye.webservicedemo;
  2. importjava.net.MalformedURLException;
  3. importjava.util.ArrayList;
  4. importjava.util.List;
  5. importorg.codehaus.xfire.XFireFactory;
  6. importorg.codehaus.xfire.client.
  7. XFireProxyFactory;
  8. importorg.codehaus.xfire.service.Service;
  9. importorg.codehaus.xfire.service.
  10. binding.ObjectServiceFactory;
  11. publicclassHelloWorldClient{
  12. publicstaticvoidmain(Stringargs[]){
  13. ServicesrvcModel=newObjectServiceFactory()
  14. .create(IHelloWorldService.class);
  15. XFireProxyFactoryfactory=
  16. newXFireProxyFactory(XFireFactory
  17. .newInstance().getXFire());
  18. StringhelloWorldURL="http://localhost:
  19. 8081/HelloWorld/services/HelloWorldService";
  20. try{
  21. IHelloWorldServicesrvc=(IHelloWorldService)
  22. factory.create(
  23. srvcModel,helloWorldURL);
  24. System.out.print(srvc.sayHello("dennis"));
  25. }catch(MalformedURLExceptione){
  26. e.printStackTrace();
  27. }
  28. }
  29. }

執(zhí)行,打印:hello,dennis

注意,你也可以使用MyEclipse的new webservice client向?qū)ё詣?dòng)生成client,同時(shí)生成供客戶端調(diào)用的stub類等。

最后,我們?cè)倬帉?xiě)一個(gè)C#調(diào)用Eclipse建立的Webservice的例子。

1.在vs.net中新建一個(gè)windows 應(yīng)用程序項(xiàng)目,并添加一個(gè)button,和一個(gè)label

2.項(xiàng)目菜單——》添加web應(yīng)用,輸入我們要調(diào)用的web服務(wù)的wsdl文件的url,并點(diǎn)擊前往。

3.添加引用之后,vs.net會(huì)自動(dòng)幫你生成提供給客戶端調(diào)用的stub等,這些文件在名為localhost的命名空間下。此空間下將有一個(gè)類,名為HelloWorldService。最后,在button1的onclick事件中添加代碼:

 
 
 
 
  1. usingSystem;
  2. usingSystem.Collections.Generic;
  3. usingSystem.ComponentModel;
  4. usingSystem.Data;
  5. usingSystem.Drawing;
  6. usingSystem.Text;
  7. usingSystem.Windows.Forms;
  8. namespaceMyProject
  9. {
  10. publicpartialclassForm1:Form
  11. {
  12. localhost.HelloWorldServicehelloService=
  13. newlocalhost.HelloWorldService();
  14. publicForm1()
  15. {
  16. InitializeComponent();
  17. }
  18. privatevoidbutton1_Click(objectsender,
  19. EventArgse)
  20. {
  21. label1.Text=helloService.sayHello("dennis");
  22. }
  23. }
  24. }

我們new一個(gè)HelloWorldService ,并調(diào)用sayHello方法,將結(jié)果顯示在label上

4.執(zhí)行ctr+F5


新聞名稱:使用Eclipse建立Webservice
網(wǎng)頁(yè)URL:http://www.5511xx.com/article/cdshssi.html