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

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

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

    邀月

    從.net中走來的Java愛好者
    posts - 22, comments - 10, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Java與WCF交互(二):WCF客戶端調用Java web service

    Posted on 2010-08-25 11:22 邀月 閱讀(3130) 評論(2)  編輯  收藏 所屬分類: Eclipse

    在上篇《 Java與WCF交互(一):Java客戶端調用WCF服務》中,我介紹了自己如何使用axis2生成java客戶端的悲慘經歷。有同學問起使用什么協議,經初步驗證,發現只有wsHttpBinding可行,而NetTcpBinding不可行,具體原因待查。昨晚回去重新測試WCF客戶端調用Java Web Service,并將過程公布如下:

    其實本不需要做web service,只是原來公開的經典的Web service像(http://soapinterop.java.sun.com/round2.base?WSDL)等不可訪問了。于是邀月重寫了一個本地的web service,以作演示。

    第一步:建立本地java環境,并構建 web Service代碼,發布web service

    1、設置Java環境:

    JDK6/J2SE1.6以上,必須!!后面邀月會說明原因。

    Eclipse 3.6

    Axis2_Codegen_Wizard_1.4.1插件,配置見上文 Java與WCF交互(一):Java客戶端調用WCF服務

    假定以上環境都OK

    2、Services 服務端應用程序

    在Eclipse中新建一個java project,名為JavaServiceForWCFClient,如圖:
    邀月工作室

    選擇一個運行時庫
     邀月工作室

    在src下新建一個package,如圖:
    邀月工作室 

    在該package下新建一個類HelloTimeForWCF,代碼如下:

    邀月工作室

    請注意上圖中:@WebService的 使用。這稱為 Annotation 或元數據,由 Java SE 5 中引入的 Web Services 元數據規范 (Web Services Metadata Specification) 所使用。開發人員在對類和方法應用 Annotation 之前定義類和方法,以向運行時引擎指明如何將類及其方法作為 Web Services 和 Web Services 操作來啟用。Java SE 6 附帶了這樣一個引擎。@WebService Annotation 將 SayHello 類標記為實現某個 Web Services ,從而產生可部署的 Web Services 。這個特定的 Annotation 是一個 WSDL 映射 Annotation,并將 Java 源代碼與表示 Web Services 的 WSDL 元素相關聯。(注:本段內容來自IBM官方網站,https://www6.software.ibm.com/developerworks/cn/education/webservices/ws-eclipse-javase1/section3.html)

    下一步,就是Ant工具大派用場的時候了,

    在項目根路徑下新建一build.xml,內容如圖:

    邀月工作室

    以"Ant Build"方式運行該文件:
    邀月工作室

    應該在控制臺收到如下信息:
    邀月工作室

    以上信息,表明ant創建成功!此時,刷新項目視圖,應該得到如圖所示的結果,其中黃色部分為剛生成的內容:
    邀月工作室

    在package中新增一個主類,是否感覺有點像WCF中的Host引擎?其實作用就是如此。

    邀月工作室

    其內容如下:
    邀月工作室

    運行程序,就如同運行WCF中的Host:


    邀月工作室

    可以用內部的瀏覽器來瀏覽這個地址:http://localhost:8080/JavaServiceForWCFClient?wsdl

    邀月工作室

    至此,Java web端部署完成。


    第二步:建立本地WCF客戶端,調用第一步生成的web service

    新建一個普通的控制臺項目,名為WCFClientFromJava,, 并按下圖所示使用SvcUtil命令:(Svcutil.exe,ServiceModel 元數據實用工具用于依據元數據文檔生成服務模型代碼,以及依據服務模型代碼生成元數據文檔。ServiceModel 元數據實用工具可在 Windows SDK 安裝位置中找到,一般位置為 C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin)


    邀月工作室

    生成后,將生成的文件包含在項目中,項目結構如下:
    邀月工作室

    生成的app.config文件如下:
    邀月工作室
    此時,在program.cs文件中添加如下方法:
    邀月工作室

     至此,WCF客戶端調用Java Web service成功!

    小結,這是一個很簡單的demo,主要技術點在于:

    1、@Webservice的使用,參看http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/

    2、SvcUtil的使用,參看MSDN:http://msdn.microsoft.com/zh-cn/library/aa347733%28VS.90%29.aspx

    本文參考:

    使用 Eclipse 和 Java SE 6 創建獨立 Web Services 應用程序,第 1 部分: Web Services 服務端應用程序

    https://www6.software.ibm.com/developerworks/cn/education/webservices/ws-eclipse-javase1/section3.html

    Introducing JAX-WS 2.0 With the Java SE 6 Platform, Part 1

    http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/



    邀月注:本文版權由邀月和博客園(BlogJava)共同所有,轉載請注明出處。
    助人等于自助!   3w@live.cn

    評論

    # re: Java與WCF交互(二):WCF客戶端調用Java web service  回復  更多評論   

    2010-08-26 15:04 by 朔望魔刃
    很帥很帥,最近剛好用到

    # re: Java與WCF交互(二):WCF客戶端調用Java web service  回復  更多評論   

    2010-08-31 11:36 by 邀月
    @朔望魔刃
    ^-^
    主站蜘蛛池模板: 亚洲色四在线视频观看| 亚洲gv白嫩小受在线观看| 色偷偷女男人的天堂亚洲网| 热99RE久久精品这里都是精品免费| 亚洲精品网站在线观看不卡无广告| 国产成人亚洲综合无| 国产国产成年年人免费看片| 国产成人亚洲精品无码AV大片| 永久免费无码网站在线观看| 亚洲精品无码aⅴ中文字幕蜜桃| 免费无码看av的网站| 国产av无码专区亚洲av毛片搜| 免费一级毛片不卡不收费| 人成电影网在线观看免费| 亚洲精品无码国产| 久久99国产乱子伦精品免费| 亚洲日本在线播放| 好爽又高潮了毛片免费下载| 国产亚洲综合久久| 亚洲日韩中文字幕在线播放| 亚洲一区二区在线免费观看| 亚洲国产精品成人精品小说| 成人毛片免费观看视频大全| 特黄特色大片免费| 亚洲成a人片在线观看无码专区| 亚洲美女免费视频| MM1313亚洲国产精品| 亚洲午夜无码久久久久| 91免费在线播放| 含羞草国产亚洲精品岁国产精品| 久久精品国产精品亚洲人人| 99re在线这里只有精品免费| 狠狠色伊人亚洲综合网站色| 亚洲女人被黑人巨大进入| 欧洲一级毛片免费| 特级aaaaaaaaa毛片免费视频| 日本久久久久亚洲中字幕| 国产无遮挡裸体免费视频| 国产婷婷成人久久Av免费高清| 中中文字幕亚洲无线码| 久久久久国产亚洲AV麻豆|