|
4
|
| Ricardo Marimon · 技术社区 · 16 年前 |
|
|
1
8
你的提供者错了,消息在语义上是等价的;你的不合格,他们的合格。您使用的是Axis还是Axis2?如果您使用的是Axis,我建议您切换到Axis2以获得更健壮、符合标准的SOAP堆栈(这两种产品都不好,但Axis2不那么差)。 我假设您正在使用wsdl2java创建客户端?如果您不能让这个工具以您喜欢的方式生成消息,那么您最好的办法就是以编程方式生成消息。 对于Axis2,您可以使用AXIOM API来实现这一点。看见 this link createOMElement ,可以选择传递名称空间前缀。因此,如果您的提供者需要它,那么您可以传递一个包含“imk 1”的字符串作为namespacePrefix参数。 如果您最终以编程方式完成这项工作,并且只需要编写一个简单的客户机,那么我 强烈 JAX-WS 而是堆栈,因为它自1.6以来就是Java的一部分。API更干净,文档也更好。例如,下面是我编写的一个非常简单的客户端,用于向JIRA服务器发送SOAP请求。示例代码创建限定元素和非限定元素。
客户端发送的XML如下所示:
|