把xml转化为soapmessage_将xml转换为Soap请求

我想将XML作为一个字符串转换为肥皂请求,但这个XML不包括信封,我试过这个

import java.io.ByteArrayInputStream;

import java.nio.charset.Charset;

import javax.xml.soap.MessageFactory;

import javax.xml.soap.MimeHeaders;

import javax.xml.soap.SOAPMessage;

public class TestSoapConverter {

public static void main(String args[])

{

String message=""+

"0300"+

""+

"080000"+

"000000"+

"0822074323"+

"94"+

"0822"+

""+

"";

try{

MessageFactory factory = MessageFactory.newInstance();

SOAPMessage soapMessage = factory.createMessage(new MimeHeaders(),

new ByteArrayInputStream(message.getBytes(Charset.forName("UTF-8"))));

System.out.println(soapMessage.getSOAPBody());

}catch(Exception ex)

{

ex.printStackTrace();

}

}

}我得到了这个例外

May 23, 2017 8:14:08 PM

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl lookForEnvelope

SEVERE: SAAJ0514: Unable to create envelope from given source because

the root element is not named Envelope May 23, 2017 8:14:08 PM

com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory

createEnvelope SEVERE: SAAJ0511: Unable to create envelope from given

source com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable

to create envelope from given source: at

com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:117)

at

com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:69)

at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:128)

at

com.sun.xml.internal.messaging.saaj.soap.MessageImpl.getSOAPBody(MessageImpl.java:1351)

at

com.vericash.liquid.test.TestSoapConverter.main(TestSoapConverter.java:30)

Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl:

Unable to create envelope from given source because the root element

is not named "Envelope" at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.lookForEnvelope(SOAPPartImpl.java:154)

at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:121)

at

com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:110)

... 4 more

CAUSE:

com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to

create envelope from given source because the root element is not

named "Envelope" at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.lookForEnvelope(SOAPPartImpl.java:154)

at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:121)

at

com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:110)

at

com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:69)

at

com.sun.xml.internal.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:128)

at

com.sun.xml.internal.messaging.saaj.soap.MessageImpl.getSOAPBody(MessageImpl.java:1351)

at

com.vericash.liquid.test.TestSoapConverter.main(TestSoapConverter.java:30)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值