cancel
Showing results for 
Search instead for 
Did you mean: 

Activiti form: String - Enum - Switch Case

enricochirico
Champ in-the-making
Champ in-the-making
Hi!
I would like to submit you my issue:
i want to create a form where you can choose a type of user's data (id, surname, name…), then you submit that data and a script in groovy manages the result.

I wrote it like this:

<startEvent id="start" activiti:initiator="eventA" >
          
      <extensionElements>
         <activiti:formProperty id="choice" name="Data Type" type="enum">
            <activiti:value id="a" name="User Logon Name" />   
                                <activiti:value id="b" name="User Surname" />
         </activiti:formProperty>

                   <activiti:formProperty id="value"
                            name="Insert a value"
                              required="true"
                              type="string" />
       </extensionElements>
        </startEvent>
      
      
      <sequenceFlow sourceRef="start" targetRef="scripttask1"/>
       
      <scriptTask id="scripttask1" scriptFormat="groovy">
              
      <script>
      def choicemade = "" + choice
      switch(choicemade){
         case "a":
                   //my db search      
         break
  
                  case "b":
                  //my db search
                  break
       }
       
      
              </script>
    </scriptTask>
       
      <sequenceFlow sourceRef="scripttask1" targetRef="end"/>
       
        <endEvent id="end"/>



But i get: Internal Server Error….can someone help me to understand what i'm doing wrong? Thanks!!!
2 REPLIES 2

enricochirico
Champ in-the-making
Champ in-the-making
Sorry,

submitting the post, some text has disappeared…

<startEvent id="start" activiti:initiator="eventA" >
  <extensionElements>
   <activiti:formProperty id="choice" name="Data type" type="enum">
    <activiti:value id="a" name="User Logon Name" />
                   <activiti:value id="b" name="User Surname" />
   </activiti:formProperty>

                 <activiti:formProperty id="value"
                        name="Insert Value"
                            required="true"
                            type="string" />
    </extensionElements>
        </startEvent>
 
 
  <sequenceFlow sourceRef="start" targetRef="scripttask1"/>
       
  <scriptTask id="scripttask1" scriptFormat="groovy">
           
  <script>
                        def choicemade = "" + choice
                        switch(choicemade){
                                case "a":
                               //my db search
                               break

                              case "b":
                            //my db search
                            break
                            }


</script>
</scriptTask>


vasile_dirla
Star Contributor
Star Contributor
Hi,
Do you have anything interesting into the log file?