ESB invoke OBAM Webservice报错
使用ESB的business service调用OBAM的DataObjectOperationsByName web 服务,试图往Employees数据对象插入一条记录, 测试输入如下: <bam:Insert xmlns:bam="http://xmlns.oracle.com/bam"> ? 结果遇到错误: BAM-06147: DataObjectOperations Web 服务的 XML 有效负载无效; nested exception is: 仔细研究后发现,<bam:xmlPayload>String</bam:xmlPayload>,传入的内容为字符串,而上面的demo会让xml解析器认为是新的xml元素非string,因此可通过encode解决该问题。 解决方法有两种,一、xml通常认为“<”是新的xml元素的开始,对于少量的可以简单的将“<”替换成"<"即可; 二:当<bam:xmlPayload>间需要包含大量的xml内容时,可使用<![CDATA[ ]]>的方式将内容包含进来,xml解析时遇到CDATA即跳过不解析。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |