我想在Soap Request中发送特殊的(&,'(单引号))字符.我使用轴1.4. Web服务客户端位于weblogic服务器中,Web服务服务器是ibm主机(COBOL程序).
来自客户端的请求数据包含特殊字符(&符号),其被转换为& amp; amp; amp; amp; amp; amp; amp;
我试着用CDATA封装它
<![CDATA [Some Name&一些数据]]>
转换为
<![CDATA[Some Name & Some Data]]>
web服务客户端是从wsdl生成的,所以我无法使用CDATA api来构造请求.我能够将其设置为字符串值,并且它正在转换.
任何有关这方面的帮助将不胜感激.如果您需要更多信息,请与我们联系.
解决方法:
Web服务客户端存根正在为您执行XML编码. Web服务需要XML,它正在编码&和’进入实体引用,以便您将发送有效的XML.
对于XML解析器,它将“看到”& amp; amp;作为&而且你没有问题.
如果服务器无法处理实体引用,则COBOL“Web服务”不会执行它应该执行的操作.这使得您(以及基于标准的工具)很难从WSDL生成客户端存根,这本质上是描述数据格式和交换规则的合同.
如果WSDL和SOAP服务不遵守规定的接口规则,那么提供它的重点是什么?