日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

CXF wsdl2Java

發布時間:2024/9/27 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CXF wsdl2Java 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Apache CXF 是一個Service框架,他簡化了Service的創建, CXF實現了JAX-WS2.0規范,并通過了JAX-WS2.0 TCK; CXF和Spring無縫集成;CXF支持多種傳輸協議(HTTP, JMS, Corba等), 支持多種Binding數據格式(SOAP,XML,JSON等), 支持多種DataBinding數據類型(JAXB, Aegis) 。CXF基于Interceptor的架構,使得整個框架非常易于擴展。 二.? 如何發布并調用簡單的web service實例 2.1.下載:apache-cxf-2.1.1??http://cxf.apache.org/download.html 2.2. 新建java project ,并加入apache-cxf-2.0.7/lib所有包,編寫要發布的web service 接口和實現 import javax.jws.WebService; @WebService? public interface HelloWorld {?? public String sayHello(String text);?? } import javax.jws.WebService;?? @WebService(endpointInterface="test.HelloWorld")?? public class HelloWorldImpl implements HelloWorld {?? public String sayHello(String text) {?? return "Hello" + text ;?? }?? }? @WebService 注解表示是要發布的web 服務 name:用于Interface,屬映射到wsdl:portType element的name屬性。?
targetNamespace:用于Interface和implement,如果不指定,缺省會使用包名倒序做為wsdl名空間。 serviceName:用于implement,表示wsdl服務名。 portName:用于implement,表示wsdl:port 的name屬性。 endpointInterface:用于implement,指定Interface全名,包括包名。 2.3.發布web service public class Server { protected Server() throws Exception { System.out.println("Starting Server"); HelloWorldImpl implementor = new HelloWorldImpl(); String address = "http://localhost:9000/helloWorld"; Endpoint.publish(address, implementor); } public static void main(String args[]) throws Exception { new Server(); System.out.println("Server ready..."); Thread.sleep(5 * 60 * 1000); System.out.println("Server exiting"); System.exit(0); } } 運行后,在瀏覽器中輸入http://localhost:9000/helloWorld?wsdl將顯示這個web service的wsdl.說明web service發布成功。 2.4.下面就開始創建一個客戶端程序,訪問這個web service, 同樣新建java project ,并加入apache-cxf-2.0.7/lib所有包,由于CXF已經提供wsdl轉化成java 的命令工具,所以創建一個build.xml,用來生成客戶端程序。Bulid.xml內容如下: <?xml version="1.0"?> <project name="cxf wsdl2java" basedir=".">?? <property name="cxf.home" location ="${basedir}/WebRoot/WEB-INF/"/> <path id="cxf.classpath"> <fileset dir="${cxf.home}/lib"> <include name="*.jar"/> </fileset> </path>????? <target name="cxfWSDLToJava"> <java classname="org.apache.cxf.tools.wsdlto.WSDLToJava" fork="true"> <arg value="-client"/> <arg value="-d"/> <arg value="src"/> <arg value="http://localhost:9000/helloWorld?wsdl"/> <classpath> <path refid="cxf.classpath"/> </classpath> </java> </target> </project> 或者:配置環境變量%CXF_HOME%=E:/WebService/CXF/apache-cxf-2.1.1/apache-cxf-2.1.1(以我的目錄為例),并在PATH后加上;%CXF_HOME%/bin 在cmd命令行中輸入wsdl2java如果顯示其用法表示配置好了。 輸入:wsdl2java -d src - client?http://localhost:9000/helloWorld?wsdl 其作用上面的build.xml作用一樣。 附加:wsdl2java用法: wsdl2java -p com -d src -all? aa.wsdl -p? 指定其wsdl的命名空間,也就是要生成代碼的包名: -d? 指定要產生代碼所在目錄 -client 生成客戶端測試web service的代碼 -server 生成服務器啟動web? service的代碼 -impl 生成web service的實現代碼 -ant? 生成build.xml文件 -all 生成所有開始端點代碼:types,service proxy,,service interface, server mainline, client mainline, implementation object, and an Ant build.xml file. 詳細用法見:http://cwiki.apache.org/CXF20DOC/wsdl-to-java.html 2.5.調用web service public class MyClient { public static void main(String[] argv) { HelloWorld? hello = new HelloWorldImplService().getHelloWorldImplPort(); System.out.println(hello.sayHello("Tom") );? } } 注意:運行時,要一定先要發布web sevice. 三.? 參考資料 1.CXF 主頁:?http://cxf.apache.org/ 2. CXF中文討論組:?http://groups.google.com/group/cxf-zh? 3. Web service:?http://www.w3school.com.cn/webservices/index.asp
4. WSDL:?http://www.w3school.com.cn/wsdl/index.asp
5. SOAP:http://www.w3school.com.cn/soap/index.asp -----------------------------------------------------------以上是參考資料,以下是自己的實踐----------------------------------------------------------------------------- 我在操作過程中,發現了一個方法的參數resultCode,以及另一個方法的voteCode都讓我誤操作定義為了錯誤的類型。 因此需要對 WSDL進行修改后,將其放置在:D:/test/0328目錄下面。 我按照上面的地址下載到二級制壓縮文件? apache-cxf-2.3.3.zip以后要注意,不要下載包含有src的 例如: apache-cxf-2.3.3-src.tar.gz 解壓縮到D:/work/lib/apache-cxf-2.3.3 配置環境變量 CXF-HOME? 為“D:/work/lib/apache-cxf-2.3.3” 增加? path? “%CXF-HOME?%bin” 后, 在cmd下運行 D:/>cd test D:/test>cd 0328 D:/test/0328>wsdl2java -frontend jaxws21 -p com.chinatelecom.jx.vote.inf.partner
?*wsdl
即可。完成代碼的生成。覆蓋掉原來的代碼即可。

總結

以上是生活随笔為你收集整理的CXF wsdl2Java的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲精品一区二区三区四区 | 国产综合久久久久 | 日本免费在线观看 | ⅹxxxxhd亚洲日本hd老师 | 99久久精品一区二区成人 | 91国自啪| 欧洲一区二区视频 | 精品成人一区二区三区 | 天天操综合 | 亚洲aaaaaaa | 国产日视频 | 国产亚洲制服欧洲高清一区 | 国模av| 一区免费在线 | 欧美在线色 | 911精品国产一区二区在线 | 一级黄色a| 性感美女av在线 | 亚洲一区美女 | 四虎影酷 | 亚洲国产成人久久 | 国产精品精品久久久久久 | 日日草视频 | 日本中文在线 | 中国久久久| 黄视频免费在线观看 | 国产精品视频一区二区三 | 91福利视频导航 | 神马午夜伦理影院 | 91黄色在线观看 | 精品3p | 自拍偷拍视频在线 | 内谢少妇xxxxx8老少交视频 | 亚洲久热 | 日韩欧美亚洲在线 | 色福利hd写真video | 欧美性色a | 国产一二三四五区 | 欧美特黄aaa| 久久久久久久99 | 在线xxxxx| 午夜精品福利一区二区蜜股av | 6996电视影片免费看 | 秋霞在线一区 | 欧美大片一区二区 | 九九九亚洲 | 亚洲97 | 成人爱爱视频 | 在线 色| 欧美一级在线播放 | 麻豆国产在线视频 | 97xxxxx| 视频这里只有精品 | 国产一区午夜 | 午夜精品久久99蜜桃的功能介绍 | 亚洲色图 一区二区 | 亚洲av无码乱码国产精品 | 亚洲在线激情 | 国产麻豆91 | 欧美自拍第一页 | 嫩草一区二区三区 | 四虎影库| 天天干夜操 | 老女人一区 | 99热这里只有精 | 国产一区二区在线免费观看 | 高潮久久久 | 午夜激情视频网站 | 视频二区在线 | 可以看的黄色网 | 视色在线 | free性娇小hd第一次 | 国产av国片偷人妻麻豆 | 肥老熟妇伦子伦456视频 | 免费看国产曰批40分钟 | 亚洲AV无码片久久精品 | 亚洲成人麻豆 | 欧美xxxx在线 | 国产精品久久久久久福利 | 综合激情亚洲 | 好男人www社区在线视频夜恋 | 曰韩av| 麻豆国产精品视频 | 女优中文字幕 | 国产一区二区三区在线 | 中文字幕女同女同女同 | 婷婷丁香色| 95精品视频| 欧美精品在线一区二区三区 | 中文字幕免费播放 | 国产午夜精品在线观看 | 国产一级二级视频 | 污网址在线观看 | 国产精品免费视频观看 | 欧美极品少妇×xxxbbb | 在线观看91av| 色综合色婷婷 | 强制高潮抽搐哭叫求饶h | 国产日韩精品一区 |