gpt4 book ai didi

java - java中的soap版本不匹配

转载 作者:行者123 更新时间:2023-12-02 11:04:35 25 4
gpt4 key购买 nike

Soap 请求生成的 Java 应用程序[失败]

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:dir="http://xxxxxxxxxx">
<soapenv:Body>
<xxxxxxxxxxx>
</soapenv:Body>
</soapenv:Envelope>

SoapUI 生成的 Soap 请求 [成功]

 <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" 
xmlns:dir="http://xxxxxxxxxx">
<soap:Header/>
<soap:Body>
<dir:ping/>
</soap:Body>
</soap:Envelope>

如何将命名空间 uri“http://schemas.xmlsoap.org/soap/envelope/”更改为“http://www.w3.org/2003/05/soap-envelope”。我还没有创建任何客户端,我刚刚创建了 java 类并运行,由于上述 uri 链接,我能够发送请求并获取错误代码响应。我发现是版本不匹配,但我不知道如何更改。

最佳答案

我觉得您必须使用 Statckoverflow 中提供的默认 SOAP 实现(即 SOAP 1.2)。问题。您的 Web 服务可能需要 SOAP 1.1。

如果您可以更改它的 SOAPMessageFactory1_1Impl 实现,它应该可以解决您的问题。您的命名空间将更改为 xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"

callSoapWebService 方法第一行更改为以下内容,应该可以解决问题。

SOAPMessagesoapMessage = SOAPMessageFactory1_1Impl.newInstance().createMessage();

希望有帮助。

关于java - java中的soap版本不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51073837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com