WebService學習筆記
Java API for XML Web Services (JAX-WS) 2.0 (JSR 224) Standard Implementation (SI)
JAX-WS2.0是JAX-RPC 1.1 (JSR 101)的後續版本。
1. JAX-WS 仍然支援 SOAP 1.1 over HTTP 1.1,因此互操作性將不會受到影響,仍然可以在網上傳遞相同的訊息。
2. JAX-WS 仍然支援 WSDL 1.1,因此您所學到的有關該規範的知識仍然有用。WSDL 2.0 規範已經接近完成,但在 JAX-WS 2.0 相關工作結束時其工作仍在進行中。
3. JAX-RPC 和 JAX-WS 都支援 SOAP 1.1。JAX-WS 還支援 SOAP 1.2。
4. WSDL 1.1 規範在 HTTP 繫結中定義,這意味著利用此規範可以在不使用 SOAP 的情況下通過 HTTP 傳送 XML 訊息。
5. JAX-RPC 忽略了 HTTP 繫結。而 JAX-WS 新增了對其的支援。
6. JAX-RPC 支援 WS-I Basic Profile (BP) V1.0。JAX-WS 支援 BP 1.1。(WS-I 即 Web 服務互操作性組織。)
在JAX-WS時代,wscompile已經被wsimport與wsgen代替。wsimport用於匯入wsdl並生成可移植性元件(artifact)wsgen生成編譯後的SEI並生成可移植性元件(artifact). 當前wsgen並不產生wsdl.WSDL在部署的時候產生。但通過配置項可讓wsgen產生wsdl。
wscompile主於用於早期的RPC,使用wscompile需要編寫一個config.xml檔案,作為wscompile的輸入。
昨天在GF3上部署webservice,在webserivce上新增了SOAPBinding(style=Style.RPC),[這個annotation最好寫在類層次上,寫在方面層次上容易與出現與類出現衝突],結果部署失敗。後來發現寫成SOAPBinding(style=Style.RPC,use=literal)才可以。從Google上找到一點證據:RPC/encoded is not a supported style/use mode with JAX-WS 2.0. JAX-WS2.0 is fully compliant with the WS-I Basic Profile 1.1 which mandates literal mode. The supported style/use modes are: rpc/literal and document/literal.
JAX-WS 中的SoapBinding目前支援3種方式:
1)Document Wrapped:
@SOAPBinding(style=SOAPBinding.Style.DOCUMENT,use=SOAPBinding.Use.LITERAL,parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
2)Document Bare:
@SOAPBinding(style=SOAPBinding.Style.DOCUMENT,use=SOAPBinding.Use.LITERAL,parameterStyle=SOAPBinding.ParameterStyle.BARE)
3)RPC:
@SOAPBinding(style=SOAPBinding.Style.RPC,use=SOAPBinding.Use.LITERAL,parameterStyle=SOAPBinding.ParameterStyle.WRAPPED)
另外 The java.util.Collection
classes cannot be used with rpc/literal or document/literal BARE style due to a limitation in JAXB. However, they do work in the default document/literal WRAPPED style
看來JWS的革命性變化還是挺大的。還能不能玩呀。
相關文章
- numpy的學習筆記\pandas學習筆記筆記
- IT學習筆記筆記
- 學習筆記筆記
- 【學習筆記】數學筆記
- 《JAVA學習指南》學習筆記Java筆記
- Elasticsearch學習筆記Elasticsearch筆記
- Scala學習筆記筆記
- MySql學習筆記MySql筆記
- jQuery 學習筆記jQuery筆記
- react學習筆記React筆記
- 學習筆記(4.3)筆記
- 學習筆記(4.4)筆記
- 學習筆記(3.29)筆記
- 學習筆記(4.1)筆記
- AOP學習筆記筆記
- AspectJ學習筆記筆記
- 學習筆記(3.27)筆記
- 學習筆記(4.2)筆記
- golang 學習筆記Golang筆記
- Zookeeper學習筆記筆記
- 學習筆記(3.24)筆記
- 學習筆記(3.25)筆記
- 學習筆記(3.21)筆記
- GitHub學習筆記Github筆記
- jest 學習筆記筆記
- typescript 學習筆記TypeScript筆記
- Echarts學習筆記Echarts筆記
- js學習筆記JS筆記
- shell學習筆記筆記
- Dubbo 學習筆記筆記
- SVN 學習筆記筆記
- 笨笨學習筆記筆記
- vue學習筆記Vue筆記
- wepack學習筆記筆記
- redis學習筆記Redis筆記
- java學習筆記Java筆記
- PureMVC學習筆記REMMVC筆記
- gitee 學習筆記Gitee筆記