筆記

          way

          RCP與Document風(fēng)格

          有兩種SOAP message風(fēng)格,documentRPC,他們定義了SOAP message body的格式。使用document風(fēng)格時(shí)(包括wrapped和unwrapped),在wsdl中有一個(gè)非空的types部分,這個(gè)部分用XML Schema language定義了web service要用到的類型。wsgen工具從SIB(有SEI就足夠了)中生成與XSD對(duì)應(yīng)的java類。用java代碼生成WSDL文件的時(shí)候需要一些java類,wsgen工具可以生成這些Java類,生成的這些java類被稱為wsgen artifacts,底層的JWS類庫(kù)會(huì)用到這些類,特別是JAX-B系列的包,會(huì)用來(lái)轉(zhuǎn)換(marshal)java類實(shí)例(that is, Java in-memory objects)為XML類型的XML實(shí)例(滿足XML Schema document的XML文檔實(shí)例),

          The inverse operation is used to convert (unmarshal) an XML document instance to an in-memory
          object, an object of a Java type or a comparable type in some other language。因此wsgen工具生成的artifacts,支持了Java為基礎(chǔ)的web service的互操作性。JAX-B類庫(kù)提供了Java和XSD類型轉(zhuǎn)換的底層支持。

          For the most part, the wsgen utility can be used without our bothering to inspect the artifacts that it produces. For the most part, JAX-B remains unseen infrastructure.

          wsgen artifacts實(shí)際上是wsdl message的數(shù)據(jù)類型,他們和XML Schema type綁定,每個(gè)message的XML Schema types從這些java類型得來(lái)的。注:在當(dāng)前的jdk1.6.24中,已經(jīng)融入wsgen自動(dòng)生成的過(guò)程,不需手動(dòng)調(diào)用。

          wsgen工具可用來(lái)生成wsdl文件,如:% wsgen -cp "." -wsdl ch01.ts.TimeServerImpl 。這為TimeServer服務(wù)生成了wsdl。用wsgen生成的wsdl和通過(guò)訪問(wèn)發(fā)布的服務(wù)生成的wsdl 有個(gè)很大的區(qū)別:wsgen生成的沒(méi)有endpoint,因?yàn)檫@個(gè)URL是在發(fā)布服務(wù)的時(shí)候決定的。其他地方兩個(gè)wsdl是相同的。

          wsimport(以前叫wsdl2java和 java2wsdl更形象)工具可使用WSDL生成用來(lái)幫助寫客戶端的artifacts .

          1 先契約再編碼方式
          一個(gè)例子:得到一個(gè)tempConvert.wsdl文件,使用命令 wsimport -keep -p ch02.tc tempConvert.wsdl ,命令根據(jù)wsdl的portType生成一個(gè)SEI類,把SEI的interface換為class,再把方法改為實(shí)現(xiàn)就可變?yōu)镾IB。把該SIB發(fā)布,再使用命令wsimport -keep -p clientTC http://localhost:5599/tc?wsdl,來(lái)生成客戶端輔助類
          2 編碼優(yōu)先
          服務(wù)被發(fā)布之后,會(huì)自動(dòng)生成WSDL供客戶端使用。然而,使用annotations可以控制WSDL或WSDL-generated artifacts的生成。

          posted on 2011-10-08 21:47 yuxh 閱讀(580) 評(píng)論(0)  編輯  收藏 所屬分類: web service


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          <2011年10月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          統(tǒng)計(jì)

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          收藏夾

          博客

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 甘孜县| 天峻县| 榆中县| 静海县| 阿克陶县| 滨州市| 临夏县| 慈利县| 清镇市| 同德县| 江阴市| 永城市| 浏阳市| 始兴县| 永登县| 灌阳县| 叙永县| 修武县| 阳朔县| 许昌市| 东乌珠穆沁旗| 连州市| 明光市| 垣曲县| 体育| 莱芜市| 仁化县| 饶阳县| 阿坝县| 静乐县| 辉南县| 四川省| 辽宁省| 绥中县| 平潭县| 台山市| 永顺县| 雷波县| 柳江县| 湖南省| 惠水县|