一尘不染

Java Webservice客户端(最佳方法)

java

我有第三方WSDL,我需要用Java编写代码以使Web服务客户端调用第三方WSDL中的操作。现在,我已经使用Axis的WSDL2JAVA工具生成了客户端存根,并使用XMLbeans进行了数据绑定。

  1. 进行此JAVA的最佳方法是什么?
  2. 我阅读了有关SAAJ的文章,看起来这种方法会更细化吗?
  3. 除了使用WSDL2Java工具之外,还有什么其他方法可以生成代码。也许wsimport还有其他选择。优缺点都有什么?
  4. 有人可以发送有关这些主题的一些不错的教程的链接吗?
  5. 使用WSDL2Java生成代码时,我们需要使用哪些选项?

最初,我使用了一些基本的东西。现在我有这些选择

C:\axis2-1.5.1\bin>wsdl2java -uri  mywsdlurl  -o client -p somepackage -d xmlbeans -s -t -ssi

阅读 1196

收藏
2020-03-23

共1个答案

一尘不染

进行此JAVA的最佳方法是什么?

我个人不会使用Axis 2,即使仅用于客户端开发。这就是为什么我远离它的原因:

  1. 我不喜欢它的体系结构,讨厌它的适得其反的部署模型。
  2. 我发现这是低质量的项目。
  3. 我不喜欢它的性能(请参阅针对JAX-WS RI的基准测试)。
  4. 设置依赖关系始终是一场噩梦(我使用Maven,而且我总是不得不与庞大的依赖关系作斗争)(请参阅#2)
  5. Axis浪费了很多时间,而Axis2却不是更好。不,这不是个人观点,有共识。
  6. 我遭受了一次,再也没有。

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创建简单的Web服务和客户端
  • 使用Apache CXF或GlassFish Metro创建SOAP客户端(Glen Mazza的博客是不错的参考资料)
  • 使用WSDL2Java生成代码时,我们需要使用哪些选项?

没有选项,使用wsimport

2020-03-23