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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WSDL4J解析WSDL文件方法

發(fā)布時(shí)間:2025/3/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WSDL4J解析WSDL文件方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

利用wsdl4j解析WSDL文件

工具:wsdl4j1.6

解析wsdl文件是axis1.4的服務(wù)wsdl文件

wsdl文件:

?

<?xml version="1.0" encoding="UTF-8"??> -??<wsdl:definitions?targetNamespace="http://localhost:8080/axis/services/SayHelloService"? xmlns:apachesoap="http://xml.apache.org/xml-soap"? xmlns:impl="http://localhost:8080/axis/services/SayHelloService"? xmlns:intf="http://localhost:8080/axis/services/SayHelloService"? xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"? xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"? xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"? xmlns:xsd="http://www.w3.org/2001/XMLSchema"> -?<!-- WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT) --> -?<wsdl:message?name="sayHelloResponse"> ??<wsdl:part?name="sayHelloReturn"?type="xsd:string"?/> </wsdl:message> -?<wsdl:message?name="sayHelloRequest"> ??<wsdl:part?name="name"?type="xsd:string"?/> </wsdl:message> -?<wsdl:portType?name="SayHello"> -?<wsdl:operation?name="sayHello"?parameterOrder="name"> ??<wsdl:input?message="impl:sayHelloRequest"?name="sayHelloRequest"?/> ??<wsdl:output?message="impl:sayHelloResponse"?name="sayHelloResponse"?/> </wsdl:operation> </wsdl:portType> -?<wsdl:binding?name="SayHelloServiceSoapBinding"?type="impl:SayHello"> ??<wsdlsoap:binding?style="rpc"?transport="http://schemas.xmlsoap.org/soap/http"?/> -?<wsdl:operation?name="sayHello"> ??<wsdlsoap:operation?soapAction=""?/> -?<wsdl:input?name="sayHelloRequest"> ??<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://hello.com"?use="encoded"?/> </wsdl:input> -?<wsdl:output?name="sayHelloResponse"> ??<wsdlsoap:body?encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"?namespace="http://localhost:8080/axis/services/SayHelloService"?use="encoded"?/> </wsdl:output> </wsdl:operation> </wsdl:binding> -??<wsdl:service?name="SayHelloService"> ?-?<wsdl:port?binding="impl:SayHelloServiceSoapBinding"?name="SayHelloService">? ??<wsdlsoap:address?location="http://localhost:8080/axis/services/SayHelloService"?/> </wsdl:port> </wsdl:service>

</wsdl:definitions>

?

下面是兩個(gè)程序wsdl4j編寫:

程序1:

view plaincopy to clipboardprint?
  • package?com.wxm;??
  • import?javax.wsdl.*;??
  • import?javax.wsdl.factory.*;??
  • import?javax.wsdl.xml.*;??
  • public?class?ReadWsdl?{??
  • public?static?void?main(String[]args)??
  • {??
  • try{??
  • WSDLFactory?factory=WSDLFactory.newInstance();??
  • WSDLReader?reader=factory.newWSDLReader();??
  • reader.setFeature("javax.wsdl.verbose",true);??
  • reader.setFeature("javax.wsdl.importDocuments",true);??
  • Definition?def=reader.readWSDL("http://localhost:8080/axis/services/SayHelloService?wsdl");??
  • WSDLWriter?writer=factory.newWSDLWriter();??
  • writer.writeWSDL(def,?System.out);??
  • }catch(WSDLException?e){e.printStackTrace();}???
  • }??
  • } ?
  • ?

    程序2:

    view plaincopy to clipboardprint?
  • package?com.wxm;??
  • import?javax.wsdl.*;??
  • import?javax.wsdl.extensions.*;??
  • import?javax.wsdl.factory.*;??
  • import?javax.wsdl.xml.*;??
  • import?javax.xml.namespace.QName;??
  • import?java.util.*;??
  • import?org.w3c.dom.*;??
  • public?class?NavigatingWSDL?{??
  • public?static?void?main(String[]args)??
  • {??
  • try{??
  • ???WSDLFactory?factory=WSDLFactory.newInstance();??
  • ???WSDLReader?reader=factory.newWSDLReader();??
  • ???reader.setFeature("javax.wsdl.verbose",true);??
  • ???reader.setFeature("javax.wsdl.importDocuments",true);??
  • ???Definition?def=reader.readWSDL("http://localhost:8080/axis/services/SayHelloService?wsdl");??
  • ?????????//解析服務(wù)名???
  • ???System.out.println("----------");??
  • ???System.out.println("nService?Name:");??
  • ???String?tns="http://localhost:8080/axis/services/SayHelloService";??
  • ????????Service?service?=def.getService(new?QName(tns,"SayHelloService"));??
  • ???System.out.println(service.getQName().getLocalPart());??
  • ???//解析接口方法名??
  • ???System.out.println("nOperation?Name:");??
  • ???Port?port?=service.getPort("SayHelloService");??
  • ???Binding?binding=port.getBinding();??
  • ???PortType?portType=binding.getPortType();??
  • ???List?operations=portType.getOperations();??
  • ???Iterator?operIter=operations.iterator();??
  • ???while(operIter.hasNext())??
  • ???{??
  • ????Operation?operation=(Operation)operIter.next();??
  • ????if(!operation.isUndefined())??
  • ????{System.out.println(operation.getName())?;}??
  • ???}??
  • ???//解析消息,輸入輸出??
  • ???System.out.println("nMessages:");??
  • ???Map?messages=def.getMessages();??
  • ???Iterator?msgIter=messages.values().iterator();??
  • ???while(msgIter.hasNext())??
  • ???{??
  • ????Message?msg=(Message)msgIter.next();??
  • ????if(!msg.isUndefined())??
  • ????{??
  • ?????System.out.println(msg.getQName().getLocalPart());??
  • ?????Iterator?partIter=msg.getParts().values().iterator();??
  • ?????while(partIter.hasNext())??
  • ?????{??
  • ??????Part?part=(Part)?partIter.next();??
  • ??????System.out.print("parameter?name:"+part.getName()+"t");??
  • ??????System.out.println("parameter?type:"+part.getTypeName().getLocalPart());??
  • ?????}??
  • ????} ??? ??
  • ???}??
  • ???//解析服務(wù)地址??
  • ???System.out.println("nService?location:");??
  • ???List?l=port.getExtensibilityElements();??
  • ???ExtensibilityElement?element=(ExtensibilityElement)?l.get(0);??
  • ???String?s=element.toString();??
  • ?????System.out.println(s.substring(s.indexOf("location")));??
  • ?????System.out.println("---------");??
  • ????
  • }catch(WSDLException?e){e.printStackTrace();}???
  • }??
  • }??
  • ?可以解析出wsdl文件的服務(wù)名,操作接口名,服務(wù)地址等

    ?

    轉(zhuǎn):http://blog.sina.com.cn/s/blog_5ee36ce70100nk97.html

    轉(zhuǎn)載于:https://www.cnblogs.com/xijin-wu/p/6890058.html

    總結(jié)

    以上是生活随笔為你收集整理的WSDL4J解析WSDL文件方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 上海贵妇尝试黑人洋吊 | 视频一区 中文字幕 | 男女做激情爱呻吟口述全过程 | 你懂的在线观看网址 | 天天插天天搞 | 大肉大捧一进一出好爽mba | 毛片aaaaaa | 欧美精品第一页 | 特级大胆西西4444人体 | 一级特黄视频 | 日本少妇高潮喷水xxxxxxx | 激情福利社 | 91插插插插插插插插 | 91丨九色丨丰满 | 在线免费播放av | 午夜精品福利电影 | 中文在线а√天堂 | 木下凛凛子av一区二区三区 | 尹人香蕉 | 蜜芽在线视频 | 成人亚洲免费 | 在线观看国产麻豆 | av一起看香蕉 | www欧美色 | 草色网| 长河落日 | 亚洲日本综合 | 超碰caopor| 天天干夜夜骑 | 国产日韩一区 | 国产视频一区二区在线播放 | 精品久久无码视频 | 中文字幕久久久 | 亚洲综合久久av | 99久久久无码国产精品性波多 | 国产又粗又猛又爽又黄无遮挡 | 最近中文字幕在线中文视频 | 亚洲国产精品久久久久久6q | 国产69精品久久久 | 国产91一区二区三区 | 日韩综合一区二区三区 | 午夜久久 | av我不卡| 逼特逼视频在线观看 | 天堂在线成人 | 色婷婷综合成人 | 日韩久久中文字幕 | 日本高清有码视频 | 中文字幕1页 | 嘿嘿射在线| 伊人青青草 | 在线观看免费小视频 | 骚鸭av| 91伦理视频 | 福利亚洲 | www.美色吧.com | 国产黄色激情视频 | 久久99热人妻偷产国产 | 99精品视频在线播放免费 | 一区二区美女视频 | 光棍影院一区二区 | 男人懂的网站 | 午夜特级毛片 | 日本捏奶吃奶的视频 | 日本成人免费在线 | 婷婷色综合 | 亚洲在线视频网站 | 亚洲色图综合网 | 好吊妞视频一区二区三区 | 99黄色 | 国内精品久久久久久久影视简单 | 久久艳片www.17c.com | 肉色欧美久久久久久久免费看 | 免费精品无码AV片在线观看黄 | 九九热视频免费观看 | 97福利社| 就要操就要日 | 大肉大捧一进一出好爽视频 | 俺来也av| 黑人vs亚洲人在线播放 | 老外毛片 | 成人日韩精品 | 人妻与黑人一区二区三区 | 日韩av中文字幕在线 | 久久久久久蜜桃 | 神马午夜888| 夜夜激情 | 久久婷婷影院 | 成人免费毛片xxx | 成人 黄 色 免费播放 | 噜噜色综合 | 欧美色频| 性网址 | av在线播放器 | 超薄肉色丝袜一二三 | 粗大的内捧猛烈进出在线视频 | 国产一区二区三区免费在线观看 | 精品视频在线一区二区 | 久久日精品 |