java - 将 Java Web 服务 WSDL 与 gsoap C 客户端一起使用时出现标记不匹配错误

标签 java iphone web-services using

我使用 gsoap 2.7.17 的 wsdl2h 和 soapcpp2 工具为 java Axis 1.4 Web 服务 WSDL 创建了 C 客户端。

我在我的 iphone 应用程序中使用这些 soap 客户端。我能够成功编译应用程序。

但是,当我尝试从客户端文件调用函数时,它在响应结构中返回 nil 值,但函数调用的返回码是 SOAP_OK。

我尝试调试 soap 文件,发现在从服务器获取数据时,标签不匹配,因此,客户端忽略响应并返回 nil。

在 Tomcat 服务器上的同一台机器上运行的独立 Web 服务。

所以,任何人都可以帮忙,可能是什么问题。

最佳答案

您需要转储在服务器上接收到的 xml。听起来为您的 c 客户端生成的任何 stub 都不完整。我对 C 客户端的经验为零,但是根据您发送的 xml 与预期的差异有多大,修复可能很容易,或者几乎不可能修复。

Axis 1.4 可以为某些 java 对象生成非常难看的 xml。根据您可以控制的内容,您可能会更快地摆弄服务器代码,以便 wsdl 轴使用您的 C 工具生成更好的解析。

关于java - 将 Java Web 服务 WSDL 与 gsoap C 客户端一起使用时出现标记不匹配错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4720669/

相关文章:

java - 将树(非二进制)转换为路径列表

java - @RequestHeader Map<String, String> 映射默认大小写?

使用 Objective-C++ 的 iPhone 设备/模拟器内存​​异常

android - 我的网站无法在 iPhone 上正确缩放

c# - 为什么无法序列化 DataTable。未设置数据表名称?

java - 如何使用 mongodb 查询生成器编写 java 代码以使用 "_id"检索文档?

iphone - 如何确定一个字符串是否是 Objective-C 中的 URL

java - https Web 服务消息 : Message did not contain a valid Security Element

c# - 在 .NET 中使用 RPC/编码的 SOAP Web 服务时出错

java - Android 绘图链接失败