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

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

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

    posts - 1,  comments - 25,  trackbacks - 0

    非常感謝呼必斯哈拉圖,寫得非常的詳細(xì),圖文并茂。
    但是,我的環(huán)境和他文中的不太一樣,所以根據(jù)自己的環(huán)境重寫如下。

    一、環(huán)境準(zhǔn)備

    1.1軟件下載準(zhǔn)備
    Tomcat 5.5下載地址:
    http://tomcat.apache.org/download-55.cgi#5.5.20

    Axis War包:
    http://ftp.wayne.edu/apache/ws/axis2/1_1_1/axis2.war

    Axis Eclipse plug-in(代碼生成工具和打包工具):
    http://apache.justdn.org/ws/axis2/tools/1_1_1/axis2-eclipse-codegen-wizard.zip
    http://apache.justdn.org/ws/axis2/tools/1_1_1/axis2-eclipse-service-archiver-wizard.zip

    Eclipse 3.2:
    http://www.eclipse.org/

    MyEclipse5.5M1
    http://www.myeclipseide.com/

    1.2安裝

    A.首先搭建開(kāi)發(fā)環(huán)境,將下載的Eclipse解壓縮到一個(gè)目錄,D:eclipse-SDK-3.2-win32。
    B.將下載到的Axis 的兩個(gè)plug-in解壓縮到D:Axis-Plugin-Direclipseplugins目錄下

    C.在eclipse目錄下創(chuàng)建D:eclipse-SDK-3.2-win32eclipselinks,新建文件名為:axis-eclipse-plugin.link

    內(nèi)容為:
    path=D:Axis-Plugin-Dir


    D.安裝MyEclipse5.5M1,將eclipse目錄指向D:eclipse-SDK-3.2-win32,刪除D:eclipse-SDK-3.2-win32eclipseconfiguration下的org.eclipse.update目錄。然后啟動(dòng)MyEclipse,選擇“File->New->Other”可以看到如下的兩個(gè)界面
    1、Axis2 plugins


    2、Web Servieces plugins

    E.下面開(kāi)始搭建Web Services的部署環(huán)境。

    將下載的tomcat5.5解壓縮到一個(gè)目錄D:Tomcat5.5。

    F.將axis2.war包拷貝到tomcat安裝目錄下的webapps目錄。

    G.啟動(dòng)Tomcat(D:Tomcat5.5binstartup.bat),打開(kāi)瀏覽器輸入并訪問(wèn):http://127.0.0.1:8080/axis2 來(lái)查看,結(jié)果如下圖,表示axis2已經(jīng)工作正常。

    二、快速開(kāi)始

    2.1創(chuàng)建webApps項(xiàng)目

    啟動(dòng)MyEclipse,新建立一個(gè)WebAppsFile->New->Project->Web Project,Project Name SayHello
    ,其他保持不改變。

    2.2創(chuàng)建WSDL文件

    A.選擇File->New-Other菜單,進(jìn)入后找到MyEclipse->Web Services并選擇WSDL.如下圖:

    B.點(diǎn)擊下一步按鈕,顯示如下圖:

    C.選擇“src”目錄作為“Enter or select the parent folder”的值,“File name”值給定為SayHello.wsdl。

    D.下一步》所有界面內(nèi)容取默認(rèn)值,F(xiàn)inish!

    E.顯示WSDL設(shè)計(jì)器的界面如下:

    F.修改圖中標(biāo)紅色的部分:
    修改圖中的NewOperation為SayHello;
    修改input中parameters為SayHelloRequest;
    修改output中parameters為SayHelloResponse;
    修改完后如下圖:

    紅色框內(nèi)為變化的內(nèi)容,WSDL文件修改完畢。

    2.3WSDL生成Java代碼

    A.選擇菜單“File->New->Other”,從對(duì)話框中選取“Axis2 Wizards”下面的“Axis2 Code Generator”.點(diǎn)擊“Next”

    B.進(jìn)入下一個(gè)頁(yè)面,保持“Generate java source code from WSDL file”被選中,點(diǎn)擊“Next”進(jìn)入下一步。
    C.點(diǎn)擊“Browse”來(lái)選取存放在src目錄下的SayHello.wsdl文件,“Next”
    進(jìn)入下一步。
    D.首先生成客戶端代碼和測(cè)試代碼,設(shè)置如下:

    E.下一步后,選擇SayHellosrc目錄,如下圖:

    Finish !

    F.重復(fù)從A到C的步驟,然后生成服務(wù)端代碼,設(shè)置如下:


    后面同E。

    G.結(jié)束后,刷新項(xiàng)目,如圖:

    這是由于沒(méi)有將Axis2jar包放入class path 中以及源代碼的package不為org.example.www.sayhello引起的。

    H.修改包名為org.example.www.sayhello并從tomcat中的axis2 web應(yīng)用WEB-INF/lib目錄中加載所有jar包到項(xiàng)目的classpath中。

    I.在SayHelloTest.java 中引入junit包。

    2.4編寫業(yè)務(wù)代碼

    打開(kāi)SayHelloSKeleton.java文件其中的方法如下:

     

    public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest param0)

    {

    // Todo fill this with the necessary business logic

    throw new java.lang.UnsupportedOperationException();

    }

     

     修改為:

     

    public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest request)
    {
          try
        {
                 SayHelloResponse response = new SayHelloResponse();
                 response.setOut("Hi,"+request.getIn()+".How are you?");
                 return response;
        }catch(UnsupportedOperationException e)
           {
               throw e;
       }
    }

     

    2.5打包

    A.選擇菜單“File->New->Other”,從對(duì)話框中選取“Axis2 Wizards”下面的“Axis2 Services Archive”.點(diǎn)擊“Next”進(jìn)入下一個(gè)頁(yè)面

    B.選擇編譯好的class文件所在目錄(本項(xiàng)目應(yīng)該是WebRoot下面WEB-INF/classes),“Next”進(jìn)入下一步。

    C.選擇WSDL文件所在目錄,此處為src目錄下的SayHello.wsdl文件。“Next”,再“Next”。選擇services.xm文件。

    D.點(diǎn)擊“Next”,將記入最后一個(gè)頁(yè)面,此處有兩個(gè)選項(xiàng),一個(gè)是輸出目錄一個(gè)是處處文件名稱。這里的輸出文件名稱給的是SayHello。點(diǎn)擊“Finish”完成。

    2.6部署

    A.將打包好的文件SayHello.jar拷貝到Tomcat中已經(jīng)部署的Axis2應(yīng)用的WEB-INF/services目錄下面。

    B.重新啟動(dòng)Tomcat

    C.打開(kāi)瀏覽器,輸入http://127.0.0.1:8080/axis2,并點(diǎn)擊其中的“services”鏈接可以看到SayHello已經(jīng)被部署。點(diǎn)擊SayHello提供的連接可以看到與之對(duì)應(yīng)的WSDL。

    2.7調(diào)用測(cè)試
    A.修改SayHelloTest.java文件中的方法
    testSayHello的內(nèi)容為:

     

    public void testSayHello() throws java.lang.Exception {
      String url="http://localhost:8080/axis2/services/SayHello";
      org.example.www.sayhello.SayHelloStub stub = new org.example.www.sayhello.SayHelloStub(url);
      org.example.www.sayhello.SayHelloStub.SayHello request = (org.example.www.sayhello.SayHelloStub.SayHello) getTestObject(org.example.www.sayhello.SayHelloStub.SayHello.class);
      request.setIn("Teamlet");
      System.out.println(stub.SayHello(request).getOut());
      assertNotNull(stub.SayHello(request));
     }

     

      從菜單中選擇“Run>Run as->JUnit Test 完成測(cè)試!

    <EOF>


    posted on 2008-03-10 23:02 Daniel 閱讀(23848) 評(píng)論(14)  編輯  收藏 所屬分類: WebService

    FeedBack:
    # re: MyEclipse + AXIS2
    2008-10-29 22:10 | yoan
    在使用Axis2 Codegen Wizard的時(shí)候報(bào)錯(cuò):

    An error occurred while completing process
    -java.lang.reflect.InvocationTargetException

    ...  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2009-03-20 16:41 | 初學(xué)者
    請(qǐng)問(wèn)我按照您的步驟做到打包時(shí)點(diǎn)finish時(shí)報(bào)錯(cuò)說(shuō)是filesets
    怎么處理啊?是哪里錯(cuò)了呢QQ114435179  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2 [未登錄](méi)
    2009-04-18 16:40 |
    請(qǐng)問(wèn)我用的是MyEclipse +tomcat6.5 那兩個(gè)plugin文件怎么找不到路徑Axis-Plugin-Direclipseplugins目錄啊?謝謝……
      回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2009-04-21 10:02 | pkrosaline
    你好。2.5D步驟,一個(gè)是Service name,這個(gè)是隨便自己寫的,對(duì)嗎?另一個(gè)是Class name,這個(gè)名字寫什么呢?我是隨便寫的。但是最后finish按鈕無(wú)效。根本無(wú)法點(diǎn)擊。  回復(fù)  更多評(píng)論
      
    # re: java.lang.reflect.InvocationTargetException
    2009-10-23 17:53 | lihw
    Axis2 Eclipse plugin: Code Generator 在Finish 時(shí)產(chǎn)生Exception: java.lang.reflect.InvocationTargetException
    [版本]
    Eclipse 3.2
    Axis2 1.4

    [問(wèn)題原因]
    主要的問(wèn)題在于 Code Generator plugin 內(nèi)缺少了 backport-util-concurrent-3.1.jar 包

    [解決方案]
    - 關(guān)閉 Eclipse
    - copy %AXIS2_HOME%\lib\backport-util-concurrent-3.1.jar 到下列 folder
    %ECLIPSE_HOME%\plugins\Axis2_Codegen_Wizard_1.3.0\lib

    - 注冊(cè)此 jar 包: 編輯 %ECLIPSE_HOME%\plugins\Axis2_Codegen_Wizard_1.3.0\plugin.xml , 在 <runtime> 內(nèi)加入下面的字串
    <library name="lib/backport-util-concurrent-3.1.jar">
    <export name="*"/>
    </library>

    - 執(zhí)行 Eclipse 即可

    - 若問(wèn)題仍存在, 嘗試改變Eclipse 使用的 JRE, 換成 JAVA 6
    - 使用 JRE 1.6 啟動(dòng) Eclipse 后, 若仍有問(wèn)題, 試著加入 -clean 參數(shù)啟動(dòng) Eclipse, 清除 osig cache:
    eclipse.exe -vm "c:\java\jre1.6.0_05\bin\java.exe" -clean -console -consoleLog -debug -vmargs -Xmx384M

    - 關(guān)閉 Eclipse 后, 再以一般方式啟動(dòng) Eclipse, 應(yīng)可解決問(wèn)題

      回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2 [未登錄](méi)
    2010-01-07 21:26 | xxx
    非常好~~謝謝你!!!  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2 [未登錄](méi)
    2010-03-25 20:55 | kk
    根據(jù)您的方法一步一步的做但是有點(diǎn)不對(duì)頭和您的有些不同,
    在2.4編寫業(yè)務(wù)代碼

    打開(kāi)SayHelloSKeleton.java文件
    .sayhello.SayHelloRequest param0 處不同,

    自己生成的文里沒(méi)有SayHelloRequest,敲點(diǎn)后也沒(méi)找不到,

    您的那個(gè)SayHelloRequest 是怎么得到的,請(qǐng)指點(diǎn)迷津!  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2 [未登錄](méi)
    2010-04-10 22:02 | guyue
    MyEclipse + Axis2 報(bào)錯(cuò) "filesets”
    這個(gè)問(wèn)題的原因,就是你使用了Axis_Service_Archiver_1.0.0這個(gè)打包工具來(lái)打包,改用Axis2_Service_Archiver_1.3.0來(lái)打包

    Axis2_Service_Archiver_1.3.0 下載 http://taomujian.javaeye.com/blog/334405
      回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2010-06-27 09:44 | yvee
    @kk
    這個(gè)問(wèn)題我知道,跟我的一樣,是因?yàn)槟阍谧?.1步驟中的F.修改圖中標(biāo)紅色的部分:
    修改圖中的NewOperation為SayHello;
    修改input中parameters為SayHelloRequest;
    修改output中parameters為SayHelloResponse;
    input參數(shù)沒(méi)有改,這個(gè)沒(méi)有關(guān)系 的,只要自己知道SayHello類就是SayHelloRequest請(qǐng)求就行了。  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2010-06-27 09:45 | yvee
    你好。2.5D步驟,一個(gè)是Service name,這個(gè)是隨便自己寫的,對(duì)嗎?另一個(gè)是Class name,這個(gè)名字寫什么呢?我是隨便寫的。但是最后finish按鈕無(wú)效。根本無(wú)法點(diǎn)擊。期待解決  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2011-03-03 11:43 | hslh22
    無(wú)法新建Axis代碼生成器,
    這個(gè)是我的郵件地址:hslh22@163.com  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2012-10-14 21:23 | 文海
    @yoan
    我也出現(xiàn)同樣的錯(cuò)誤了,按照這個(gè)操作成功了。
    http://www.myexception.cn/ruby-rails/443126.html  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2013-03-11 18:06 | zmaike
    從tomcat中的axis2 web應(yīng)用WEB-INF/lib目錄中加載所有jar包到項(xiàng)目的classpath中。

    能不能具體說(shuō)說(shuō)怎么做?我將jar文件全部拷貝到項(xiàng)目的lib里……不行  回復(fù)  更多評(píng)論
      
    # re: MyEclipse + AXIS2
    2015-07-08 22:48 | wangqf
    @zmaike
    從tomcat中的axis2 web應(yīng)用WEB-INF/lib目錄中加載所有jar包到項(xiàng)目的classpath中。

    I.在SayHelloTest.java 中引入junit包。 這兩句到底怎么操作。。新手啊,能不能詳細(xì)些  回復(fù)  更多評(píng)論
      
    <2015年7月>
    2829301234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    常用鏈接

    留言簿(3)

    隨筆檔案

    文章分類

    文章檔案

    相冊(cè)

    搜索

    •  

    最新評(píng)論

    主站蜘蛛池模板: 亚欧日韩毛片在线看免费网站| 四虎国产精品永久免费网址| 久久99亚洲综合精品首页| 青青操在线免费观看| 亚洲人成电影青青在线播放| 国产一级一片免费播放i| 久久国产免费观看精品| 亚洲综合激情五月色一区| 2048亚洲精品国产| 亚洲三级在线免费观看| 美女裸体无遮挡免费视频网站| 亚洲av无码不卡一区二区三区| 成人毛片免费在线观看| 免费看黄的成人APP| 亚洲七久久之综合七久久| 亚洲国产日韩在线视频| 在线免费观看a级片| 日韩视频在线观看免费| 亚洲av无码专区国产不乱码| 久久久综合亚洲色一区二区三区| 日本xxwwxxww在线视频免费| 久久青草国产免费观看| h片在线播放免费高清| 亚洲色大成网站WWW国产| 午夜影视日本亚洲欧洲精品一区| 免费永久在线观看黄网站| 91成年人免费视频| a级黄色毛片免费播放视频| 黄色网址在线免费观看| 亚洲一区二区三区久久久久| 亚洲乱码中文字幕久久孕妇黑人| 在线播放免费播放av片| 久久久久久精品免费免费自慰| 成人无码精品1区2区3区免费看| 亚洲国产AV无码一区二区三区| 亚洲AV无码第一区二区三区 | 国产精品亚洲片在线观看不卡| 免费涩涩在线视频网| 午夜性色一区二区三区免费不卡视频| 野花香高清视频在线观看免费| 一个人看www免费高清字幕|