开发者

BPEL variables initialisation

Is it possible to initialize BPEL variables at the declaration ? if so how ?

declaration example :

<variables>
    <variable name="offer" type="xsd:float"/>
    <variable name="response" type="xsd:string"/>
</开发者_Python百科variables> 


This is possible. BPEL 2.0 allows a from-spec directly in the variable declaration. However, this feature is not implemented by all BPEL engines, e.g. Apache ODE cannot handle such inline initializations.

The following snippet is valid 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>

For an example, please see page 121 in [1] and section 8.1 (page 45) of [1] for the definition.

[1] http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf


We use Oracle BPEL and it allows properties to be set in the bpel.xml file like such:

 <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>

The can be accessed in the code using ora:getPreference("varname")

These also show up on the BPEL console and can be changed by an admin if necessary.


After some googling, reading spec and examples ... I think it's not possible to initialize BPEL variables at the declaration ... If we want we need to do it in the process sequence :

...
    <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>
...
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜