[英]BPEL variables initialisation
是否可以在聲明中初始化BPEL變量? 如果可以的話如何?
聲明示例:
<variables>
<variable name="offer" type="xsd:float"/>
<variable name="response" type="xsd:string"/>
</variables>
這個有可能。 BPEL 2.0允許直接在變量聲明中使用from-spec。 但是,並非所有BPEL引擎都實現此功能,例如Apache ODE無法處理此類內聯初始化。
以下代碼段是有效的BPEL 2.0:
<variables>
<variable name="response" type="xsd:string">
<from>'TocToc'</from>
</variable>
<variable name="offer" type="xsd:float">
<from>100</from>
</variable>
</variables>
有關示例,請參見[1]的第121頁和[1]的8.1(第45頁)部分。
我們使用Oracle BPEL,它允許在bpel.xml文件中設置屬性,如下所示:
<preferences>
<property name="output_file" encryption="plaintext">logging.txt</property>
<property name="expire_hours" encryption="plaintext">10</property>
<property name="retry_count" encryption="plaintext">4</property>
</preferences>
可以使用ora:getPreference(“ varname”)在代碼中進行訪問
這些也顯示在BPEL控制台上,如有必要,可以由管理員更改。
經過一番谷歌搜索,閱讀規范和示例...我認為不可能在聲明中初始化BPEL變量...如果我們希望我們需要按以下流程進行操作:
...
<variables>
<variable name="response" type="xsd:string"/>
<variable name="offer" type="xsd:float"/>
</variables>
...
<sequence>
<receive createInstance="yes" .../>
...
<assign name="init">
<copy>
<from>100</from>
<to variable="offer"/>
</copy>
<copy>
<from>'TocToc'</from>
<to variable="response"/>
</copy>
</assign>
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.