我使用camel cxf组件来调用Web服务。我试图传递XML String,它有一个逗号(,)。当我试图传递XML字符串时,它会抛出错误。
获取错误的参数大小以调用out ervice,Expect size 1,Parameter size 2.请检查消息正文是否与CXFEndpoint POJO Dataformat请求匹配。
这是我的网络服务方法
public String sendSMSRequest(
@WebParam(name = "clientRequestXML", targetNamespace = "http://www.openuri.org/")
String clientRequestXML);
我在XML String下面传递为clientRequestXML。
<BODY>
<SCODE/>
<SMSSERVICE>
<SENDSMS_REQ>
<TO>
<CIFNUMBER>73</CIFNUMBER>
<MOBILE>null</MOBILE>
<LANG>2</LANG>
<MESSAGE>Dear SCUST2, your id is 1112</MESSAGE>
</TO>
</SENDSMS_REQ>
</SMSSERVICE>
</BODY>
请帮我解决这个问题。我想用逗号(,)
发送字符串答案 0 :(得分:1)
CxfProducer(采用POJO数据格式)需要List。它解析String,逗号被解释为列表分隔符。您应该将List作为请求传递。例如:
Arrays.asList(clientRequestXML);