<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 5,  comments - 6,  trackbacks - 0

    關鍵字: webservice

    1. Introduction
    This document will outline the process of developing a JAX-WS web service and deploying it using MyEclipse 6.5 to the internal MyEclipse Tomcat server. The web service used in this tutorial will be a very simple calculator service that provides add, subtract, multiply and divide operations to the caller.

    MyEclipse also supports developing web services using the existing XFire framework from previous MyEclipse releases. For folks needing to develop and deploy WebSphere JAX-RPC or WebSphere JAX-WS web services, please take a look at our MyEclipse Blue Edition of the MyEclipse IDE.

    Additional resources covering web service creation using JAX-RPC, JAX-WS or XFire are included in the Resources section of this document.


    2. System Requirements
    This tutorial was created with MyEclipse 6.5. If you are using another version of MyEclipse (possibly newer), most of these screens and instructions should still be very similar.

    If you are using a newer version of MyEclipse and notice portions of this tutorial looking different than the screens you are seeing, please let us know and we will make sure to resolve any inconsistencies.

    3.新建一個工程
    開始我們新建一個Web Service Project工程File->New->Web Service Project(Optional Maven Support)

     
    Note:A JAX-WS web service can also be generated in any existing Java EE 5 web project.

    我們給這個工程取名為WebServiceProject.注意JAX-WS支持只在javaEE5或更高版本的工程中是可行的。如果你需要使用低版本的工程類型(java1.4或者1.3),那么只能使用XFire Web Service代替JAX-WS。

     

    這里我們使用上面的JAX—WS。
    4.創建服務類
    服務類就是一個普通的java類,負責提供我們想要發布的執行方法。這里我們寫一個簡單的計算器類,實現幾個典型的計算器應用方法,如加減乘除。
    首先我們先建一個包,WebServiceProject->src->new->package,取名com.myeclipseide.ws

    讓后我們在這個包下建一個類,Calculator.java.


    根據上面提到的,這個計算器類實現計算器的加減乘除算法,簡單實現:
    Java代碼

    package com.myeclipseide.ws; 

    public class Calculator 
    public int add(int a, int b) 
    return (a + b); 
    }
     

    public int subtract(int a, int b) 
    return (a - b); 
    }
     

    public int multiply(int a, int b) 
    return (a * b); 
    }
     

    public int divide(int a, int b) 
    return (a / b); 
    }
     
    }
     


    可以看出,這個類中的方法是非常簡單的,沒有用到特殊的注釋還有接口,父類之類的東西。
    5.創建一個Web Service
    在上面的工具條中點擊新建Web Service

    Note:如果沒有的話可以File->New->others->Myeclipse->WebService->webService
    點擊之后出現的屏幕,在Strategy中選擇Bottom-up scenario,因為我們已經建立好了Calculator類而且想根據它建立JAX-WS服務。

    下面是創建的最后一個屏幕,你需要選擇提供webService方法的javaBean,在我們這個例子中就是我們已經建立好的Calculator類。

    填好之后,Myeclipse會自動幫我們填滿其他的項,Select Generate WSDL in project and hit Finish.


    點擊完成之后,Myeclipse會自動生成CalculatorDelegate代理類,還有一些必須的JAX-WS描述符,而且會自動在服務器目錄下的web.xml中配置WebService的一些mappings,方便將webService部署到服務器中。

    到此web service已經建立好了,我們開始部署它然后進行測試。
    6.部署和測試webService。
    這里我們不使用用Myeclipse自帶的tomcat服務器,使用自己應經在電腦中部署好的tomcat5.5。
    在server面板中右擊,選擇configure


    部署自己的tomcat注意選擇jdk要跟項目中的相同。

    現在要向工程中導入JAX-WS的jar包
    在項目名稱上右擊->properties->Add Library->Myeclipse Libraries->最后面的兩個。

    點擊完成,導入成功。
    Note:Myeclipse自帶的tomcat中有自帶的這兩個jar包,可以不用導入。

    6.1部署
    在部署好的tomcat服務器上右擊選擇Add Deployment


    點擊完成。
    6.2測試
    運行tomcat服務器,在工具欄中點擊launch WebService Explorer

    打開后,點擊右上角的WSDL視圖,可以看到下面的屏幕

    在WSDL URL中填寫路徑:http://localhost:8888/WebServiceProject/CalculatorPort?WSDL
    解釋下路徑組成:
    http://localhost:8888/是服務器的路徑,我的端口號是8888,可以根據自己的更改,一般都是8080。
    /WebServiceProject = We know by default the Web Context-root that is used to deploy(部署) web projects matches the name of the projects. (因為我們沒有為這個工程自定義我們的Web Context-root,所以他就是這個工程的名字)
    /CalculatorPort = As we saw from the last screenshot in Section #5, when our JAX-WS web service was generated, it was bound using a servlet-mapping in the web.xml file to the /CalculatorPort path.
    XML代碼
      

    <servlet>     
        
    <description>JAX-WS endpoint - CalculatorService</description>     
        
    <display-name>CalculatorService</display-name>     
        
    <servlet-name>CalculatorService</servlet-name>     
        
    <servlet-class>     
            com.sun.xml.ws.transport.http.servlet.WSServlet      
        
    </servlet-class>     
        
    <load-on-startup>1</load-on-startup>     
      
    </servlet>     
      
    <servlet-mapping>     
        
    <servlet-name>CalculatorService</servlet-name>     
        
    <url-pattern>/CalculatorPort</url-pattern>     
      
    </servlet-mapping>    
    <servlet>  
        
    <description>JAX-WS endpoint - CalculatorService</description>  
        
    <display-name>CalculatorService</display-name>  
        
    <servlet-name>CalculatorService</servlet-name>  
        
    <servlet-class>  
            com.sun.xml.ws.transport.http.servlet.WSServlet   
        
    </servlet-class>  
        
    <load-on-startup>1</load-on-startup>  
      
    </servlet>  
      
    <servlet-mapping>  
        
    <servlet-name>CalculatorService</servlet-name>  
        
    <url-pattern>/CalculatorPort</url-pattern>  
      
    </servlet-mapping>

     WSDL = This is a universal query string argument that can be added to the end of any web service which will tell the web service to return it's full WSDL to the caller. In this case, the WSDL is returned to our Web Services Explorer tool which loads it up, and displays the web services exposed operations to us.
    弄清楚之后,我們開始測試,比如我們選擇add方法:
    填寫args,點擊go,在status中就會顯示結果。  

    結果是正確的。
    7.創建Webservice Client
    現在我們已經部署好Webservice,而且應經測試過了,那我們新建一個Webservice client,來調用Webservice提供的方法。
    7.1新建一個java project,給他取個名字。比如我們叫它ClientofWebService


    在工具條中點擊new Web Service Client

    然后按照以下步驟操作:


    The last step of the web service client creation is to specify either a WSDL File or a WSDL URL for the wizard to retrieve the web service WSDL from. In our case we are using the URL and generate the client into the new package com.myeclipseide.ws.client:

    http://localhost:8888/WebServiceProject/CalculatorPort?WSDL


    點擊Next知道完成。
    可以看到在新建的java project ClientofWebService中,src文件夾下產生了許多的文件,根據名稱我們大體可以了解其意思,可以打開看一下源代碼,其實不難理解。比如add文件,就是Calculator類中add方法的兩個參數的get和set方法。其他類似。
    我們在文件夾下見一個類test.java寫一個main函數測試
    Java代碼     

    public static void main(String[] args) {    
        
    /* Create the service instance */    
        CalculatorService service 
    = new CalculatorService();    
        CalculatorDelegate delegate 
    = service.getCalculatorPort();    
      
        
    /* Using the web service, perform the 4 calculations */    
        System.out.println( 
    "1. 3+7=" + delegate.add(37));    
        System.out.println( 
    "2. 12-2=" + delegate.subtract(122));    
        System.out.println( 
    "3. 9*9=" + delegate.multiply(99));    
        System.out.println( 
    "4. 40/2=" + delegate.divide(402));    
    }
       

     運行得到如下結果:
    1. 3+7=10
    2. 12-2=10
    3. 9*9=81
    4. 40/2=20
    測試完成。

    本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/foart/archive/2009/06/21/4287515.aspx

    posted on 2009-10-17 22:50 潯陽江頭夜送客 閱讀(3030) 評論(6)  編輯  收藏 所屬分類: WebService

    FeedBack:
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)
    2011-09-14 17:25 | nishilaji
    垃圾內容丟九江人的臉  回復  更多評論
      
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)
    2011-11-07 10:24 | gxylh
    @nishilaji
    樓上的太沒素質了,人家辛辛苦苦寫的這么詳細,對于初學者來說就希望有這種細致的文檔介紹。在此我很感謝樓主,謝謝你,讓我很清楚明了的學會了這個實現方法!  回復  更多評論
      
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)
    2011-11-12 15:45 | whily
    我是新手,你寫的很好,一看就明白  回復  更多評論
      
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)[未登錄]
    2012-08-07 17:12 | test
    內容介紹的非常好,非常適合新人 。謝謝。。  回復  更多評論
      
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)[未登錄]
    2012-08-07 17:13 | test
    順便再說一下,1L純2B,大家不要理它~~~~~~~~  回復  更多評論
      
    # re: MyEclipse6.5上基于JAX-WS開發Webservice(中文示例)
    2012-08-14 10:10 | hhs
    為什么我用的MyEclipse9.0不能達到跟你一樣的效果呢?就是WSDL頁面時不會顯示方法名,更不用說測試了!還有就是web service client測試的時候,我輸入的wsdl url總是提示錯誤,求解啊!糾結了我一上午!用Xfire也是不好使!  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2012年8月>
    2930311234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    myeclipse6.5上基于JAX-WS開發Webservice(中文示例)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲无线观看国产精品| 好男人资源在线WWW免费| 亚洲国产综合91精品麻豆| 午夜免费福利网站| 1000部拍拍拍18勿入免费视频下载| 人妻仑刮八A级毛片免费看| 国产精品亚洲专区在线观看 | 久久亚洲国产成人影院| 亚洲成AV人片在| 亚洲欧洲∨国产一区二区三区| 国产大片91精品免费观看男同 | 亚洲男人的天堂久久精品| 亚洲s色大片在线观看| 精品亚洲一区二区三区在线观看| 夫妻免费无码V看片| 成年女人免费碰碰视频| 在线观看的免费网站无遮挡| 中国内地毛片免费高清| 一个人免费观看视频在线中文| 国产精品亚洲专区无码WEB| 亚洲人AV在线无码影院观看| 亚洲一级毛片中文字幕| 亚洲国产精品久久人人爱| 亚洲影院在线观看| 亚洲国产人成网站在线电影动漫| 亚洲gv白嫩小受在线观看| 日韩va亚洲va欧洲va国产| 国产亚洲精品xxx| 亚洲爆乳精品无码一区二区三区| 国产AⅤ无码专区亚洲AV| 色久悠悠婷婷综合在线亚洲| 国产亚洲精品国看不卡| 国产午夜亚洲不卡| 亚洲乱色熟女一区二区三区丝袜 | 亚洲高清有码中文字| 亚洲乱码卡一卡二卡三| 亚洲成a人片在线观看精品| 亚洲色图激情文学| 亚洲成a人片在线不卡一二三区| 亚洲一区二区三区高清在线观看 | 最近中文字幕高清免费中文字幕mv|