love fish大鵬一曰同風起,扶搖直上九萬里

          常用鏈接

          統計

          積分與排名

          friends

          link

          最新評論

          學習Java6(一) WebServices (2)客戶端

          Java6 WebServices (一)服務端這篇文章中和大家分享了Java6 WebServices 服務端的寫法,光有服務端還不行,還要有客戶端才行啊。看了一些網友的相關文章,都只給出了服務端的寫法,沒有說客戶端怎么說。經過一番研究,終于搞定了客戶端,今天偶就和大家分享下。
          首先啟動Java6 WebServices (一)服務端一文中寫好的服務端。
          新建個項目。命令行到src目錄執行,
          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"));
          ????}
          }
          執行。
          控制臺輸出:
          hello:hermit

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

          xfire危險了。。。。。。。。。。。。。。。。。。。。。。。。

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

          主站蜘蛛池模板: 英德市| 政和县| 三原县| 义马市| 文登市| 绥滨县| 洪湖市| 山阳县| 诏安县| 兴国县| 册亨县| 加查县| 津南区| 闽侯县| 乾安县| 南昌市| 邳州市| 大连市| 津南区| 永仁县| 双牌县| 南靖县| 买车| 万山特区| 张家口市| 安顺市| 云安县| 东丰县| 屯留县| 普兰县| 邹平县| 布尔津县| 嘉鱼县| 藁城市| 九江市| 重庆市| 宿州市| 阳西县| 石棉县| 广南县| 宕昌县|