Java Web服务客户端(最佳方式)
我有一个第三方的WSDL,我需要在JAVA中编写代码来为Web服务客户端调用第三方WSDL中的操作。 现在,我使用Axis的WSDL2JAVA工具生成客户端存根,并使用XMLbeans进行数据绑定。
- 什么是做这个JAVA的最佳方法?
- 我读过关于SAAJ,看起来会更细粒度的方法吗?
- 除了使用WSDL2Java工具生成代码之外,还有其他什么方法吗? 也许
wsimport
在另一个选项。 优缺点都有什么? - 有人可以发送有关这些主题的一些很好的教程链接?
- 在使用WSDL2Java生成代码时,我们需要使用哪些选项?
我最初使用了一些基本的东西。 现在我有这些选项
C:\axis2-1.5.1\bin>wsdl2java -uri mywsdlurl -o client -p somepackage -d xmlbeans -s -t -ssi
什么是做这个JAVA的最佳方法?
我个人不会使用Axis 2,即使仅用于客户端开发。 这就是为什么我远离它:
- 我不喜欢它的架构,也不喜欢它的反生产部署模式。
- 我觉得这是低质量的项目。
- 我不喜欢它的性能(参考这个基准testing与JAX-WS RI )。
- 设置依赖关系永远是一场噩梦(我使用Maven,而且我总是必须与巨大的依赖关系作斗争)(请参阅#2)
- Axis吸大了时间,Axis2并不好。 不,这不是个人意见,有共识。
- 我遭受过一次,从此再也没有。
Axis仍然在身边的唯一原因是IMO,因为它在很久以前就被用在了Eclipse中。 感谢上帝,Eclipse Helios已经修复了这个问题,我希望Axis2最终会死掉。 有更好的堆栈。
我读过关于SAAJ,看起来会更细粒度的方法吗?
做什么?
除了使用WSDL2Java工具生成代码之外,还有其他什么方法吗? 也许wsimport在另一个选项。 优缺点都有什么?
是! 首选像CXF或JAX-WS RI这样的JAX-WS栈(你也可以阅读Metro, Metro = JAX-WS RI + WSIT ),它们更加优雅,简单,易于使用。 在你的情况下,我只会使用Java 6中包含的JAX-WS RI,从而使用wsimport
。
有人可以发送有关这些主题的一些很好的教程链接?
这是另一个亲,有很多(质量好)的教程JAX-WS,例如看到:
- 开发JAX-WS Web服务客户端 (从这里开始)
- 使用Java SE 6平台介绍JAX-WS 2.0,第1部分
- 使用JAX-WS创build简单的Web服务和客户端
- 使用Apache CXF或GlassFish Metro创buildSOAP客户端 (Glen Mazza的博客是一个很好的资源)
在使用WSDL2Java生成代码时,我们需要使用哪些选项?
没有选项,使用wsimport
🙂
也可以看看
- Java WebServiceLand中的Elad's Adventures
- 轴2:为什么要麻烦? 在BileBlog(准备好胆汁) – 你必须停止redirect。
相关问题
- 什么是最好的Java Web服务框架?
- Spring-ws或者Axis2或者其他的用于WS的“合同优先”方法
我使用Spring WS为Web服务应用程序的客户端取得了很好的成功 – 请参阅http://static.springsource.org/spring-ws/sites/1.5/reference/html/client.html
我的项目使用了以下组合:
-
XMLBeans(使用xmlbeans-maven插件从简单的Maven作业生成)
-
Spring WS – 使用marshalSendAndReceive()将代码减less为一行发送和接收
-
一些Dozer – 将复杂的XMLBeans映射到客户端GUI的简单bean
您可以在这里find一些与使用Apache axis2开发Web服务客户端相关的资源。
http://today.java.net/pub/a/today/2006/12/13/invoking-web-services-using-apache-axis2.html
下面的文章给出了使用Apache axis2开发Web服务的很好的解释。
http://www.ibm.com/developerworks/opensource/library/ws-webaxis1/
以下答案中的一些想法:
使用Axis2创buildWeb服务的步骤 – 客户端代码
给出一个调用从WSDL生成的ADB类的Groovy客户端的示例。
有很多Web服务框架在那里…