我在wso2 BPS中创建了一项服务。现在,当我测试我的服务时,我遇到了一个问题。那是我的请求有效载荷就像:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:roms="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<roms:CreateSceduler>
<roms:SampleID>?</roms:SampleID>
<!--Optional:-->
<roms:ScheduleID>?</roms:ScheduleID>
<roms:PersonID>?</roms:PersonID>
<!--Optional:-->
<roms:PersonName>?</roms:PersonName>
<roms:Location>?</roms:Location>
<roms:CreatedDateUTC>?</roms:CreatedDateUTC>
<!--Optional:-->
<roms:RecordDateTimeUTC>?</roms:RecordDateTimeUTC>
<!--Optional:-->
<roms:RecordedBy>?</roms:RecordedBy>
<!--Optional:-->
<roms:RecordedAt>?</roms:RecordedAt>
<!--Optional:-->
<roms:LastModifiedBy>?</roms:LastModifiedBy>
<!--Optional:-->
<roms:LastModifiedDateUTC>?</roms:LastModifiedDateUTC>
<!--Optional:-->
<roms:LastModifiedAt>?</roms:LastModifiedAt>
<!--Optional:-->
<roms:Comments>?</roms:Comments>
</roms:CreateRoundTask>
</soapenv:Body>
</soapenv:Envelope>
现在如上所示,有可选标签和强制标签。 现在我的老板希望当我尝试使用soap ui服务时,我不会传递可选标签,只会传递强制性标签,如:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:roms="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<roms:CreateSceduler>
<roms:SampleID>?</roms:SampleID>
<roms:PersonID>?</roms:PersonID>
<roms:Location>?</roms:Location>
<roms:CreatedDateUTC>?</roms:CreatedDateUTC>
</roms:CreateRoundTask>
</soapenv:Body>
</soapenv:Envelope>
But when i invoke my BPS service with this payload in soap ui i get selection failure fault.
How can i achieve above functionality which my boss wants in wso2 BPS.
Looking forward to your answers. Thanks in advance
答案 0 :(得分:1)
BPEL选择失败意味着您的BPEL流程尝试访问您的消息中不存在的元素。
如果<assign>
活动中发生此选择失败,您可以在ignoreMissingFromData
元素中设置<copy>
属性,以忽略此类情况。请参阅BPEL规范,第63页:
构造的可选ignoreMissingFromData属性用于指定 bpel:selectionFailure标准故障是否被抑制,如8.4.1节所述。 复制操作的选择结果。 ignoreMissingFromData的默认值为“no”。
如果条件中发生选择失败,则需要先检查是否存在此元素。