faultName属性とmessage属性の使用
BPEL 1.1では、次の例のスキーマ定義に示すように、bpelx:postAssert
要素のfaultName
属性およびmessage
属性を指定できます。
<invoke | receive | onMessage> standard-elements <bpelx:postAssert name="ncname"? expression="boolean-expr" faultName="QName"+ message="generic-expr"+/> * </invoke | receive | onMessage>
次の例に、faultname
属性とmessage
属性の構文を示します。
<bpelx:postAssert name="Assert_2" message='multiple post assert Greater value fired' faultName="ns2:GreaterValue" expression="bpws:getVariableData('invar','payload','/ns1:process/ns1:input') < 500"/>
faultName
属性の指定がない場合、フォルトはbpelx:postAssertFailure
にデフォルト設定されます。message
属性の指定がない場合、メッセージ値はアクティビティの名前にデフォルト設定されます。
<bpelx:postAssert expression="boolean-expr" />
アサーション条件がfalseと評価されるたびに、指定のフォルトがスローされます。分析は、パートナWSDL portType
に定義されているフォルトに正しく変換できるように、faultName
QName
に対して実行されます。メッセージ式は、任意のXPath値のタイプ(string、numberまたはboolean)に評価できる一般的な式です。文字列でない値が返された場合は、値の文字列評価が使用されます。