2014-09-22 66 views
0

我在BPEL很新。我使用bpel過程中的表達式布爾值進行操作。我在我的模式中有一個名爲「Status」的元素,類型爲boolean。基本上,如果「狀態」的值爲「真」或「1」,那麼該進程將執行Email_Order或SOA_Order子進程,具體取決於元素SendMode的值。BPEL布爾條件

我想創建的如果「狀態」但是我不知道我應該如何編輯表達式ealse條件:$ input.payload/TNS:輸入=「」

在這裏你有模式:

<xsd:sequence> 
<xsd:element name="Status" type="xsd:boolean"/> 
<xsd:element name="SendMode" type="tns:SendModeType"/> 
<xsd:choice> 
<xsd:element name="EmailAddress" type="tns:EmailAddressType" minOccurs="0"/> 
<xsd:element name="ServiceAddress" type="tns:ServiceAddressType" minOccurs="0"/> 
</xsd:choice> 
</xsd:sequence> 

我會感謝您的幫助!

回答

0

正確答案取決於WSDL以及XSD中定義的元素形式和目標名稱空間。

通常布爾值($ input.payload // myns:Status/text())綁定到您的模式的目標名稱空間應該工作。

0

非常感謝丹尼爾我會試試!我只是馬上粘貼WSDL代碼。

<wsdl:message name="CheckStockWSOpRequest"> 
<wsdl:part element="xsd1:CheckStockWSRequest" name="parameters"/> 
</wsdl:message> 
<wsdl:message name="CheckStockWSOpResponse"> 
<wsdl:part element="xsd1:CheckStockWSResponse" name="parameters"/> 
</wsdl:message> 

<wsdl:portType name="checkstockPT"> 
<wsdl:operation name="checkStockOp"> 
<wsdl:input message="tns:CheckStockWSOpRequest"/> 
<wsdl:output message="tns:CheckStockWSOpResponse"/> 
</wsdl:operation> 
</wsdl:portType>