日韩性视频-久久久蜜桃-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的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 亚洲丁香色 | 色欲av无码精品一区 | 狠狠干婷婷 | 91狠狠| 91麻豆精品91久久久久同性 | 少妇 av | 成年人网站免费观看 | 日本少妇吞精囗交 | 国产亚洲精品熟女国产成人 | 亚洲欧洲日韩综合 | 国产精品偷伦视频免费观看了 | 伊人焦久影院 | av大全在线 | 欧美日韩亚洲国产另类 | 色综合av综合无码综合网站 | 免费av福利 | 大奶一区 | 亚洲国产精品激情在线观看 | 国产av天堂无码一区二区三区 | 无套中出丰满人妻无码 | 国产日韩欧美在线观看视频 | 婷婷视频网 | 久久精品视频一区二区三区 | 丁香六月五月婷婷 | 91视频播放 | 成人性视频sm. | 国产一级黄 | 青青视频二区 | 国产污视频在线播放 | 99久久久久| 爱露出| 日韩免费电影一区 | 欧美人与禽zozzo性之恋的特点 | 国产青草视频在线观看 | 色在线影院 | 动漫av一区二区三区 | 日韩a在线播放 | 久久性感美女视频 | 亚洲国产福利视频 | 欧美激情视频一区二区 | 久久人精品 | 亚洲人成网站999久久久综合 | 中出在线 | 欧洲av一区二区 | 福利视频精品 | 中文亚洲av片不卡在线观看 | 日韩午夜在线视频 | 亚洲在线国产 | 国产精品国语对白 | 成人www视频 | 日本a∨视频| 非洲一级黄色片 | 丁香色婷婷 | 韩日黄色片 | 国产资源视频 | 亚洲一区二区三区蜜桃 | 久久久久久久999 | 欧美日韩美女 | 精品久久蜜桃 | 东方av在线免费观看 | 97操碰 | 国产欧美一区二区三区视频在线观看 | 在线观看av免费 | 亚洲欧美91 | 欧美搞逼视频 | 国产一级一片免费播放 | 日本免费一区二区三区视频 | 日本二三区| 日韩免费av一区二区 | 成人天堂噜噜噜 | 蜜乳av一区二区三区 | 伊人网站 | 免费看日批视频 | 自拍偷拍福利视频 | 久久黄色网址 | 91婷婷在线 | 黄色精品网站 | 日本天堂网在线观看 | 老头巨大又粗又长xxxxx | 福利在线一区 | 国产亚洲欧美视频 | 成人在线超碰 | 亚洲一级黄色片 | 视频在线观看一区二区 | 人人干天天操 | 古装做爰无遮挡三级 | 三年中文在线观看免费观看 | 中文在线免费看视频 | 亚洲欧美一区二区三区四区五区 | 欧美级毛片| 亚洲AV综合色区国产精品天天 | 好看的国产精品 | 麻豆传谋在线观看免费mv | 伦理亚洲 | 精品午夜福利在线观看 | 一区二区精品 | 久久精品国产精品亚洲毛片 | 无码人妻精品一区二区三区66 | 女人高潮被爽到呻吟在线观看 |