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

          常用鏈接

          統(tǒng)計

          積分與排名

          friends

          link

          最新評論

          學(xué)習(xí)Java6(一) WebServices (1)服務(wù)端 (轉(zhuǎn))

           Java6發(fā)布了,其中一個吸引我的新特性就是原生支持WebServices。在這和大家分享下學(xué)習(xí)心得。
          下面就開始寫個最簡單的WebServices:
          package org.hermit.study.jdk;

          import javax.jws.WebMethod;
          import javax.jws.WebService;
          import javax.jws.soap.SOAPBinding;

          @WebService(targetNamespace 
          = "http://jdk.study.hermit.org/client")
          @SOAPBinding(style 
          = SOAPBinding.Style.RPC)
          public class Hello {
              @WebMethod
              
          public String sayHello(String name) {
                  
          return "hello:" + name;
              }
          }
          怎么樣簡潔吧,很多朋友的寫法還要在命令行中執(zhí)行“wsgen –cp . <path>
          用偶這種方法寫的service可以省去上面這步。

          targetNamespace = "http://jdk.study.hermit.org/client"這句是指定客戶端獲取服務(wù)端服務(wù)后存放的類路徑。注意是反著的,http: //jdk.study.hermit.org/client在客戶端生成的類會放在org.hermit.study.jdk.client包下。
          下面是發(fā)布服務(wù):
          package org.hermit.study.jdk;

          import javax.xml.ws.Endpoint;

          public class StartService {
              
          public static void main(String[] args) {
                  Endpoint.publish(
          "http://localhost:8080/HelloService"new Hello());
              }

          }
          呵呵,更簡潔。一句話而已。
          http://localhost:8080/HelloService是指發(fā)布的地址

          運(yùn)行
          StartService ,開發(fā)瀏覽器輸入:http://localhost:8080/HelloService?wsdl



          如果能看到以下內(nèi)容,就可以
           <?xml version="1.0" encoding="UTF-8" ?> 
          <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://jdk.study.hermit.org/client" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://jdk.study.hermit.org/client" name="HelloService">
            
          <types /> 
          <message name="sayHello">
            
          <part name="arg0" type="xsd:string" /> 
            
          </message>
          <message name="sayHelloResponse">
            
          <part name="return" type="xsd:string" /> 
            
          </message>
          <portType name="Hello">
          <operation name="sayHello" parameterOrder="arg0">
            
          <input message="tns:sayHello" /> 
            
          <output message="tns:sayHelloResponse" /> 
            
          </operation>
            
          </portType>
          <binding name="HelloPortBinding" type="tns:Hello">
            
          <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" /> 
          <operation name="sayHello">
            
          <soap:operation soapAction="" /> 
          <input>
            
          <soap:body use="literal" namespace="http://jdk.study.hermit.org/client" /> 
            
          </input>
          <output>
            
          <soap:body use="literal" namespace="http://jdk.study.hermit.org/client" /> 
            
          </output>
            
          </operation>
            
          </binding>
          <service name="HelloService">
          <port name="HelloPort" binding="tns:HelloPortBinding">
            
          <soap:address location="http://localhost:8080/HelloService" /> 
            
          </port>
            
          </service>
            
          </definitions>

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

          評論

          # re: 學(xué)習(xí)Java6(一) WebServices (1)服務(wù)端 2007-04-13 09:19 交口稱贊

          老大你轉(zhuǎn)載也不著名!!!!!!!!!!!!!!!  回復(fù)  更多評論   

          # re: 學(xué)習(xí)Java6(一) WebServices (1)服務(wù)端 2007-04-16 09:23 liaojiyong

          @交口稱贊
          寫漏了  回復(fù)  更多評論   

          主站蜘蛛池模板: 疏勒县| 衡南县| 绥阳县| 平顺县| 五大连池市| 南安市| 当涂县| 蒲城县| 太仓市| 乌苏市| 凌源市| 靖安县| 扎囊县| 灵台县| 徐汇区| 文成县| 龙江县| 武邑县| 武威市| 麻栗坡县| 西贡区| 台山市| 滨州市| 缙云县| 哈尔滨市| 平湖市| 西贡区| 通渭县| 远安县| 体育| 东方市| 汤原县| 冷水江市| 双鸭山市| 玛多县| 长兴县| 平南县| 秀山| 宁晋县| 会昌县| 江口县|