love fish大鵬一曰同風(fēng)起,扶搖直上九萬里

          常用鏈接

          統(tǒng)計(jì)

          積分與排名

          friends

          link

          最新評論

          學(xué)習(xí)Java6(一) WebServices (2)客戶端

          Java6 WebServices (一)服務(wù)端這篇文章中和大家分享了Java6 WebServices 服務(wù)端的寫法,光有服務(wù)端還不行,還要有客戶端才行啊??戳艘恍┚W(wǎng)友的相關(guān)文章,都只給出了服務(wù)端的寫法,沒有說客戶端怎么說。經(jīng)過一番研究,終于搞定了客戶端,今天偶就和大家分享下。
          首先啟動Java6 WebServices (一)服務(wù)端一文中寫好的服務(wù)端。
          新建個項(xiàng)目。命令行到src目錄執(zhí)行,
          wsimport -keep? http://localhost:8080/HelloService?wsdl
          會自動生成一些代碼。


          package?org.hermit.study.jdk.client;

          import?javax.jws.WebMethod;
          import?javax.jws.WebParam;
          import?javax.jws.WebResult;
          import?javax.jws.WebService;
          import?javax.jws.soap.SOAPBinding;


          /**
          ?*?This?class?was?generated?by?the?JAXWS?SI.
          ?*?JAX-WS?RI?2.0_02-b08-fcs
          ?*?Generated?source?version:?2.0
          ?*?
          ?
          */
          @WebService(name?
          =?"Hello",?targetNamespace?=?"http://jdk.study.hermit.org/client")
          @SOAPBinding(style?
          =?SOAPBinding.Style.RPC)
          public?interface?Hello?{


          ????
          /**
          ?????*?
          ?????*?
          @param?arg0
          ?????*?
          @return
          ?????*?????returns?java.lang.String
          ?????
          */
          ????@WebMethod
          ????@WebResult(partName?
          =?"return")
          ????
          public?String?sayHello(
          ????????@WebParam(name?
          =?"arg0",?partName?=?"arg0")
          ????????String?arg0);

          }

          package?org.hermit.study.jdk.client;

          import?java.net.MalformedURLException;
          import?java.net.URL;
          import?javax.xml.namespace.QName;
          import?javax.xml.ws.Service;
          import?javax.xml.ws.WebEndpoint;
          import?javax.xml.ws.WebServiceClient;


          /**
          ?*?This?class?was?generated?by?the?JAXWS?SI.
          ?*?JAX-WS?RI?2.0_02-b08-fcs
          ?*?Generated?source?version:?2.0
          ?*?
          ?
          */
          @WebServiceClient(name?
          =?"HelloService",?targetNamespace?=?"http://jdk.study.hermit.org/client",?wsdlLocation?=?"http://localhost:8080/HelloService?wsdl")
          public?class?HelloService
          ????
          extends?Service
          {

          ????
          private?final?static?URL?HELLOSERVICE_WSDL_LOCATION;

          ????
          static?{
          ????????URL?url?
          =?null;
          ????????
          try?{
          ????????????url?
          =?new?URL("http://localhost:8080/HelloService?wsdl");
          ????????}?
          catch?(MalformedURLException?e)?{
          ????????????e.printStackTrace();
          ????????}
          ????????HELLOSERVICE_WSDL_LOCATION?
          =?url;
          ????}

          ????
          public?HelloService(URL?wsdlLocation,?QName?serviceName)?{
          ????????
          super(wsdlLocation,?serviceName);
          ????}

          ????
          public?HelloService()?{
          ????????
          super(HELLOSERVICE_WSDL_LOCATION,?new?QName("http://jdk.study.hermit.org/client",?"HelloService"));
          ????}

          ????
          /**
          ?????*?
          ?????*?
          @return
          ?????*?????returns?Hello
          ?????
          */
          ????@WebEndpoint(name?
          =?"HelloPort")
          ????
          public?Hello?getHelloPort()?{
          ????????
          return?(Hello)super.getPort(new?QName("http://jdk.study.hermit.org/client",?"HelloPort"),?Hello.class);
          ????}

          }

          下面我們再寫個測試,看看能不能用:
          package?org.hermit.study.jdk.client.test;

          import?org.hermit.study.jdk.client.Hello;
          import?org.hermit.study.jdk.client.HelloService;


          public?class?TestClient?{
          ????
          public?static?void?main(String[]?args)?{
          ????????HelloService?service?
          =?new?HelloService();
          ????????Hello?_hello?
          =?service.getHelloPort();
          ????????System.out.println(_hello.sayHello(
          "hermit"));
          ????}
          }
          執(zhí)行。
          控制臺輸出:
          hello:hermit

          ok!搞定。
          java6搞定web service就這么簡單。。。。。。。。。。。。。。。。。。。。。。。。。。

          xfire危險(xiǎn)了。。。。。。。。。。。。。。。。。。。。。。。。

          posted on 2007-01-12 15:19 liaojiyong 閱讀(442) 評論(0)  編輯  收藏 所屬分類: WebService

          主站蜘蛛池模板: 苍南县| 丁青县| 浑源县| 宜春市| 平度市| 环江| 武邑县| 荔波县| 克拉玛依市| 桃源县| 措勤县| 徐水县| 汾西县| 广东省| 衡南县| 宁远县| 会东县| 来宾市| 新源县| 井研县| 宜昌市| 南汇区| 鄂尔多斯市| 沙洋县| 新巴尔虎左旗| 金华市| 城步| 忻城县| 冀州市| 安塞县| 崇义县| 苗栗市| 龙游县| 湟中县| 兴城市| 石首市| 长沙县| 黎平县| 崇信县| 兴海县| 科尔|