4 Replies Latest reply on Oct 16, 2006 6:21 AM by fjfernandez

    BeanShell vs. JSF Expression Language in Vers 3.1 and up

    michaelholtzman

      Greetings. I have scoured the docs for JBPM 3.1, but cannot find a definitive answer to this ....

      Has JSF EL replaced BeanShell for transition expressions? Or is it simply an option?

      Thanx.

        • 1. Re: BeanShell vs. JSF Expression Language in Vers 3.1 and up
          admin

          in the situation

          <decision...>
          <transition ...>


          <transition ...>


          <transition ...>


          <transition .../>
          ...


          the expression has changed from being interpreted with beanshell to JSF-EL-like expressions.

          afaik, that was the only XML incompatible change we made to jPDL between 3.0 and 3.1. all other xml has remained the same.

          without this change, expression attributes would have a different meaning in different places in jPDL

          regards, tom.

          • 2. Re: BeanShell vs. JSF Expression Language in Vers 3.1 and up
            michaelholtzman

            The 3.1 User's Guide refers to BeanShell scripts in several places (e.g., Section 9.5.5 -Script actions and Section 16.4.17 - Script expressions. Should all those references be replaced by JSF EL ?

            Also, would it be possible to post some more examples of using the Expression Language? For example, I have a Boolean variable defined in my process instance, and I want to base a decision on that. Would it simply be

            <decision>
             <transition name='default' to='yyy'/>
             <transition name='t1' to='xxx'>
             <script>
             <expression>
             #{myVariableName == true}
             </expression>
             </script>
             </transition>
            ...
            </decision>
            


            Thanx.

            • 3. Re: BeanShell vs. JSF Expression Language in Vers 3.1 and up
              saviola

              Hi!
              Here is an example:

              <condition expression="#{contextInstance.variables['Bla'] eq 'michaelholtzman'}"/>

              one more:
              <condition expression="#{contextInstance.variables.Bla le 10}"/>

              and the last one:
              <condition expression="#{contextInstance.variables.yourVariable == true}"/>


              Regs,
              Saviola

              • 4. Re: BeanShell vs. JSF Expression Language in Vers 3.1 and up
                fjfernandez

                Hi everybody and sorry for recovering this old topic, but i've been looking for an anwer for my problem and this topic is the most similar. I have the next code:

                [decision name="Decidir"]
                [transition name="Tr1" to="Nodo1" ]
                [condition expression="#{contextInstance.variables.v == '10'}"][/condition]
                [/transition]
                [transition name="Tr2" to="Nodo2"][/transition]
                [/decision]

                The problem is that despite of value of variable "v" is different to "10", allways transaction "Tr1" is taken. It doesn't matter the value of "v". And this problem happens with any type of variable, string or numeric. Is necessary adding any aditional library or tag in the xml code? Am i missing anything? What am i doing wrong? I need any help you can give me, cause i feel really lost.