繁体   English   中英

SoapUI与Jav​​a Web服务客户端

[英]SoapUI vs Java Web Service Client

如果SOAP Web服务通过SoapUI运行良好(产生正确的SOAP响应),那么使用不同的API /框架在Java中构建Web服务客户端来调用此Web服务面临着不同的问题,将此Web服务稳定地考虑是否安全问题来自消费者方面?

我在这里问一个通用的问题,我已经问了一个可能太长,无法阅读的详细问题。 我对这个概念的兴趣超过了我的实际实现,所以如果你能回答我的问题而不参考我的长篇文章,请做。

更新 :我已经意识到即使WSDL符合WS-I并且它通过SoapUI正常运行,这仍然不足以得出结论Web服务没有被破坏。 正如@jtahlborn所说,SoapUI非常容忍破坏的Web服务,并且很容易让你相信你的Web服务工作正常,这就是我的情况。

我正在ESB中构建SOAP响应,我的问题是我使用了在WSDL中定义但不在模式中定义的命名空间。 SoapUI收到了响应并向我显示(使用错误的命名空间); 如果我打开响应验证选项,则可以避免此问题。

还值得一提的是,在我创建的用于测试我的Web服务的Java Web服务客户端中,无法将响应加载到输出对象中(当我尝试访问输出对象时出现NullPointerException错误),这是由于命名空间问题,一旦修复了命名空间,它就开始正常工作了。

SoapUI是一款出色的产品。 然而,使其成为优秀产品的一个原因是,它非常容忍定义不明确的Web服务。 在我们的产品中,我们处理大量的网络服务,并且经常对我们产品中的问题发表评论是“它在SoapUI中运行良好”。 我们已经学会了SoapUI能够容忍各种破坏的Web服务的艰难方式。 因此,总而言之,使用SoapUI并不能证明您的Web服务是明确定义的。

有一些WS-I测试工具可以检查您的Web服务是否符合Web服务互操作性配置文件。 如果您的服务遵循WS-I基本配置文件,并且SoapUI可以调用它,则问题肯定在消费者方面。

编辑:嗯,或两者之间......

SoapUI可以检查您的wsdl是否符合WS-I,请参阅http://www.soapui.org/SOAP-and-WSDL/working-with-wsdls.html

消费者(客户端)最有可能是错误的...如果客户端是使用wsdl2java生成的,那么很容易出现错误......如果你使用的是一些有效的特殊功能(符合w3c),那么请不要惊讶......生成的客户端有时会这样做......甚至一些用于生成java类或库以生成Web服务的库都充满了bug ...

已知和常用的库不支持很多东西......(我不想给出名字 - 但是wsdl4java并不完美)

如果您正在使用安全性或某些东西......更高的机会在服务器端和客户端都有错误:)

也许如果你告诉我们什么是问题我们可以帮助你......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM