「基於 XML 的 Web Service 的 Java API」(JAX-WS)經過使用註釋來指定與 Web Service 實現相關聯的元數據以及簡化 Web Service 的開發。註釋描述如何將服務器端的服務實現做爲 Web Service 來訪問或者客戶端的 Java 類如何訪問 Web Service。html
JAX-WS 編程標準支持將具備用於定義服務端點應用程序的元數據的 Java 類做爲 Web Service 來註釋以及註釋客戶機能夠如何訪問 Web Service。JAX-WS 支持使用基於 Metadata Facility for the Java Programming Language(Java 規範請求(JSR)175)規範和「用於 Java 平臺的 Web Service 元數據」(JSR 181)規範的註釋,還可使用由 JAX-WS 2.0(JSR 224)規範定義的註釋(包括 JAXB 註釋)。經過使用符合 JSR 181 標準的註釋,能夠簡單地註釋服務實現類或服務接口,而且如今將應用程序做爲 Web Service 來啓用。經過在 Java 源代碼中使用註釋能夠簡化 Web Service 的開發和部署,由於會定義一些一般從部署描述符文件和 WSDL 文件中得到的附加信息,或者會將元數據從 XML 和 WSDL 映射至源工件中。java
使用註釋來配置綁定、處理程序鏈、端口類型的集合名稱、服務以及其餘 WSDL 參數。註釋用於將 Java 映射至 WSDL 和模式,以及在運行時控制 JAX-WS 運行時處理和響應 Web Service 調用的方式。web
註釋類: | 註釋: | 屬性: |
---|---|---|
javax.jws.WebService | 當實現 Web Service 時,@WebService 註釋標記 Java 類;實現 Web Service 接口時,標記服務端點接口(SEI)。 要點:編程 • 實現 Web Service 的 Java 類必須指定 @WebService 或 @WebServiceProvider 註釋。不能同時提供這兩種註釋。服務器 此註釋適用於客戶機/服務器 SEI 或 JavaBeans 端點的服務器端點實現類。app • 若是註釋經過 endpointInterface 屬性引用了某個 SEI,那麼還必須使用 @WebService 註釋來註釋該 SEI。jsp • 請參閱適用於使用 @WebService 註釋的類的方法的規則 ,以瞭解更多信息。ide |
|
javax.jws.WebMethod | @WebMethod 註釋表示做爲一項 Web Service 操做的方法。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。編碼 要點:spa • 僅支持在使用 @WebService 註釋來註釋的類上使用 @WebMethod 註釋。 |
|
javax.jws.Oneway | @Oneway 註釋將一個方法表示爲只有輸入消息而沒有輸出消息的 Web Service 單向操做。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。 |
|
javax.jws.WebParam | @WebParam 註釋用於定製從單個參數至 Web Service 消息部件和 XML 元素的映射。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。 |
|
javax.jws.WebResult | @WebResult 註釋用於定製從返回值至 WSDL 部件或 XML 元素的映射。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。 |
|
javax.jws.HandlerChain | @HandlerChain 註釋用於使 Web Service 與外部定義的處理程序鏈相關聯。 只能經過對 SEI 或實現類使用 @HandlerChain 註釋來配置服務器端的處理程序。 可是可使用多種方法來配置客戶端的處理程序。能夠經過對生成的服務類或者 SEI 使用 @HandlerChain 註釋來配置客戶端的處理程序。此外,能夠按程序在服務上註冊您本身的 HandlerResolver 接口實現,或者按程序在綁定對象上設置處理程序鏈。 |
|
javax.jws.SOAPBinding | @SOAPBinding 註釋指定 Web Service 與 SOAP 消息協議之間的映射。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的類型或方法,或者應用於 JavaBeans 端點的服務器端點實現類。 方法級別的註釋僅限於它能夠指定的對象,僅當 style 屬性爲DOCUMENT 時才使用該註釋。若是未指定方法級別的註釋,那麼將使用類型的 @SOAPBinding 行爲。 |
|
註釋類: | 註釋: | 屬性: |
---|---|---|
javax.xml.ws.BindingType | @BindingType 註釋指定在發佈此類型的端點時要使用的綁定。 將此註釋應用於 JavaBeans 端點或提供程序端點的服務器端點實現類。 要點: • 能夠經過將該註釋的值指定爲javax.xml.ws.soap.SOAPBinding.SOAP11HTTP_MTOM_BINDING或javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_MTOM_BINDING來對 Java bean 端點實現類使用 @BindingType 註釋以啓用 MTOM。 |
|
javax.xml.ws.RequestWrapper | @RequestWrapper 註釋提供 JAXB 生成的請求包裝器 bean、元素名稱和名稱空間,用於對在運行時使用的請求包裝器 bean 進行序列化和反序列化。 從 Java 對象開始時,此元素用來解決 document literal 方式下的重載衝突。在這種狀況下,只有 className 屬性是必需的。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。 |
|
javax.xml.ws.ResponseWrapper | @ResponseWrapper 註釋提供 JAXB 生成的響應包裝器 bean、元素名稱和名稱空間,用於對在運行時使用的響應包裝器 bean 進行序列化和反序列化。 從 Java 對象開始時,此元素用來解決 document literal 方式下的重載衝突。在這種狀況下,只有 className 屬性是必需的。 將此註釋應用於客戶機或服務器服務端點接口(SEI)上的方法,或者應用於 JavaBeans 端點的服務器端點實現類。 |
|
javax.xml.ws.ServiceMode | @ServiceMode 註釋指定服務提供者是須要對整個協議消息具備訪問權仍是隻需對消息有效內容具備訪問權。 要點: • 僅支持在使用 @WebServiceProvider 註釋來註釋的類上使用 @ServiceMode 註釋。 |
|
javax.xml.ws.WebFault | @WebFault 註釋將 WSDL 故障映射至 Java 異常。對從 WSDL 故障消息引用的全局元素生成的 JAXB 類型進行序列化期間,該註釋用來捕獲故障的名稱。它還能夠用來定製從特定於服務的異常到 WSDL 故障的映射。 此註釋只能應用於客戶機或服務器上的故障實現類。 |
|
javax.xml.ws.WebServiceProvider | @WebServiceProvider 註釋表示一個類知足 JAX-WS 提供程序實現類的要求。 要點: • 實現 Web Service 的 Java 類必須指定 @WebService 或 @WebServiceProvider 註釋。不能同時提供這兩種註釋。 • 只有服務實現類才支持 @WebServiceProvider 註釋。 • 任何具備 @WebServiceProvider 註釋的類都必須具備名爲invoke 的操做。 |
|
註釋類: | 註釋: | 屬性: |
---|---|---|
javax.annotation.Resource | @Resource 註釋標記應用程序所須要的 WebServiceContext 資源。 將此註釋應用於 JavaBeans 端點或提供程序端點的服務器端點實現類。對容器進行初始化時,容器會將 WebServiceContext 資源的實例添加到端點實現中。 |
|
javax.annotation.PostConstruct | @PostConstruct 註釋標記須要在對類執行依賴性注入以後才執行的方法。 將此註釋應用於 JAX-WS 應用程序處理程序、JavaBeans 端點或提供程序端點的服務器端點實現類。 |
|
javax.annotation.PreDestroy | @PreDestroy 註釋標記在容器除去實例時必須執行的方法。 將此註釋應用於 JAX-WS 應用程序處理程序、JavaBeans 端點或提供程序端點的服務器端點實現類。 |
|