如果一个SOAP Web服务在SoapUI中工作良好(生成正确的SOAP响应),但使用不同的APIs/框架构建Java Web服务客户端调用此Web服务时遇到不同的问题,那么可以安全地认为这个Web服务是稳定的,而问题来自消费者端吗?
我在这里提出了一个通用的问题,我已经问了一个详细的问题,可能太长了。我更加关心概念而不是实际的实现,所以如果你可以回答我的问题而不参考我的长篇文章,请回答。
更新:我意识到,即使WSDL符合WS-I标准,通过SoapUI正确地运行,这仍然不足以断定Web服务没有故障。正如@jtahlborn所说,SoapUI对于有故障的Web服务非常宽容,它很容易让你相信你的Web服务工作得很好,这也是我遇到的情况。
我正在ESB中构建SOAP响应,我的问题是我使用了在WSDL中定义但在模式中未定义的命名空间。SoapUI接收到响应并将其显示给我(带有错误的命名空间); 如果我打开响应验证选项,就可以避免这个问题。
值得一提的是,在我创建的Java Web服务客户端中测试我的Web服务时,响应无法加载到输出对象中(当我尝试访问输出对象时出现了NullPointerException错误)。这是由于命名空间问题导致的,一旦我修复了命名空间,它就开始正常工作了。
我在这里提出了一个通用的问题,我已经问了一个详细的问题,可能太长了。我更加关心概念而不是实际的实现,所以如果你可以回答我的问题而不参考我的长篇文章,请回答。
更新:我意识到,即使WSDL符合WS-I标准,通过SoapUI正确地运行,这仍然不足以断定Web服务没有故障。正如@jtahlborn所说,SoapUI对于有故障的Web服务非常宽容,它很容易让你相信你的Web服务工作得很好,这也是我遇到的情况。
我正在ESB中构建SOAP响应,我的问题是我使用了在WSDL中定义但在模式中未定义的命名空间。SoapUI接收到响应并将其显示给我(带有错误的命名空间); 如果我打开响应验证选项,就可以避免这个问题。
值得一提的是,在我创建的Java Web服务客户端中测试我的Web服务时,响应无法加载到输出对象中(当我尝试访问输出对象时出现了NullPointerException错误)。这是由于命名空间问题导致的,一旦我修复了命名空间,它就开始正常工作了。