.net客户端使用Axis2 Web服务
我有一个.net 2.0 C#客户端应用程序具有对Web服务的引用Axis2 Java Webservice。 这个想法是发送一些XML数据到Web服务,所以它可以被解析并插入到数据库中。 WS方法接受类型'xsd:anytype'的单个参数。.net客户端使用Axis2 Web服务
的Java Web服务:
public class JWS{ public Response AddData(Object inputXML) {
return Response;
}
}
C#客户:
JWS client = new JWS(); object inputXML = "<xml>some xml data</xml>";
response = client.AddData(inputXML);
有2个问题,使用招监测时,我看到。
1)请求具有附加元件'<inputXML>'
实际的XML数据之前添加。
<inputXML><xml>some xml data</xml></inputXML>
2)XML编码,所以“<”被显示为"<"
我不知道这是怎么SOAP请求的产生,但我想删除<inputXML>
标签也,让xml按原样显示,而不必替换特殊字符。
这可能吗?它是否与'Wrapping'/'UnWrapping'类型有关?
而且,我已经使用了SoapUI测试Java Web服务,而且运作良好。但是,在请求标签中,我必须手动删除<inputXML>
标签并提交它才能正常工作。请帮忙。
TIA
回答:
我发现问题不在于编码,而是在axis2中查看消息时在java端解释不正确。所以,它正在得到正确的解码。此外,inputxml现在正在正确处理。
回答:
这是预期下,SOAP行为,并传递给你的Web服务方法时inputXml变量将被解码回原始字符串。
然而,这可能表明你的设计有问题,你有没有考虑构造一个对象发送到Web服务,而不是XML数据? (因为无论如何,这个对象将透明地转换为XML的Web服务调用)。
以上是 .net客户端使用Axis2 Web服务 的全部内容, 来源链接: utcz.com/qa/264076.html