我不熟悉所有这些,但是我试图创建SOAP消息并陷入困境,我使用的是Java 8和标准的javax.xml.soap类,但似乎无法将名称空间添加到信封中
MessageFactory factory = MessageFactory.newInstance();
SOAPMessage message = factory.createMessage();
SOAPPart part = message.getSOAPPart();
SOAPEnvelope envelope = part.getEnvelope();
envelope.addNamespaceDeclaration( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
如果在运行时尝试此操作,则会出现以下错误
NAMESPACE_ERR:试图以对名称空间不正确的方式创建或更改对象。
最佳答案
现在,通过将所需的信封定义创建为XML字符串,然后使用该字符串设置SOAPPart内容,来完成此操作