<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Dynamic List with forms properties? in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67295#M42939</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;How did you manage to make form property values accept expressions?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 07 Jun 2015 11:14:16 GMT</pubDate>
    <dc:creator>jwistrom</dc:creator>
    <dc:date>2015-06-07T11:14:16Z</dc:date>
    <item>
      <title>Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67290#M42934</link>
      <description>Hi guys!How we can create list (enum) with the dynamic options, filling options in java class or with UEL expressions? In forms (act 5.6) I used:&amp;lt;select name="listCategory"&amp;gt;${myVariable == 'A'?'&amp;lt;option value="a1"&amp;gt;A1&amp;lt;/option&amp;gt;&amp;lt;option value="a2"&amp;gt;A2&amp;lt;/option&amp;gt;':' '}${myVariab</description>
      <pubDate>Mon, 24 Oct 2011 08:30:16 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67290#M42934</guid>
      <dc:creator>marc_carrio</dc:creator>
      <dc:date>2011-10-24T08:30:16Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67291#M42935</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It may be a good idea to implement your own custom form type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In the Activiti Explorer you can find a UserFormType which is also an example of a flexible number of items.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Oct 2011 20:42:04 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67291#M42935</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-10-24T20:42:04Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67292#M42936</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Finally I add code to the EnumFormPropertyRenderer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I put the class and method in option values and I use java.reflect for call my Java that return a Map&amp;lt;String,String&amp;gt;. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I know that isn't the better solution&amp;nbsp; :roll: , but works and is quick.&amp;nbsp;&amp;nbsp; &lt;img id="smileywink" class="emoticon emoticon-smileywink" src="https://connect.hyland.com/i/smilies/16x16_smiley-wink.png" alt="Smiley Wink" title="Smiley Wink" /&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;EnumFormPropertyRenderer code: &lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;@SuppressWarnings("unchecked")&lt;BR /&gt;&amp;nbsp; @Override&lt;BR /&gt;&amp;nbsp; public Field getPropertyField(FormProperty formProperty) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ComboBox comboBox = new ComboBox(getPropertyLabel(formProperty));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.setRequired(formProperty.isRequired());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.setRequiredError(getMessage(Messages.FORM_FIELD_REQUIRED, getPropertyLabel(formProperty)));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.setEnabled(formProperty.isWritable());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String classe = null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String metode = null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String param = null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, String&amp;gt; llista = null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, String&amp;gt; values = (Map&amp;lt;String, String&amp;gt;) formProperty.getType().getInformation("values");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (values != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (Entry&amp;lt;String, String&amp;gt; enumEntry : values.entrySet()) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ("classe".equals(enumEntry.getKey())) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; classe = enumEntry.getValue();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ("metode".equals(enumEntry.getKey())) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; metode = enumEntry.getValue();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ("param".equals(enumEntry.getKey())) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; param = enumEntry.getValue();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (classe == null ){&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (values != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (Entry&amp;lt;String, String&amp;gt; enumEntry : values.entrySet()) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Add value and label (if any)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.addItem(enumEntry.getKey());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (enumEntry.getValue() != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.setItemCaption(enumEntry.getKey(), enumEntry.getValue());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return comboBox;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class&amp;lt;?&amp;gt; classeCombo = Class.forName(classe);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class&amp;lt;?&amp;gt; partypes[] = new Class[1];&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; partypes[0] = String.class;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Constructor&amp;lt;?&amp;gt; ct = classeCombo.getConstructor();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Object retObj = ct.newInstance();&lt;BR /&gt;&amp;nbsp; Method metodeCombo = classeCombo.getDeclaredMethod(metode, partypes);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; llista = (Map&amp;lt;String, String&amp;gt;) metodeCombo.invoke(retObj, param);&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; } catch (ClassNotFoundException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (SecurityException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (NoSuchMethodException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (IllegalArgumentException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (IllegalAccessException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (InvocationTargetException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; } catch (InstantiationException e) {&lt;BR /&gt;&amp;nbsp; e.printStackTrace();&lt;BR /&gt; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; if (llista != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (Entry&amp;lt;String, String&amp;gt; enumEntry : llista.entrySet()) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Add value and label (if any)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.addItem(enumEntry.getKey());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (enumEntry.getValue() != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comboBox.setItemCaption(enumEntry.getKey(), enumEntry.getValue());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return comboBox;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;bpmn20.xml code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&amp;lt;activiti:formProperty id="sel1" name="sel1" type="enum" required="true" readable="true" writable="true"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:value id="classe" name="org.cgc.myProcess.bean.MyClass" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:value id="metode" name="getList" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;activiti:value id="param" name="${myVar}" /&amp;gt;&lt;BR /&gt;&amp;lt;/activiti:formProperty&amp;gt;&lt;/CODE&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;And MyClass code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;public class MyClass{&lt;BR /&gt;&lt;BR /&gt; public Map&amp;lt;String,String&amp;gt; getList(String myvar){&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; Map&amp;lt;String,String&amp;gt; llista = new HashMap&amp;lt;String, String&amp;gt;();&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; if ("A".equals(myvar)){&lt;BR /&gt;&amp;nbsp;&amp;nbsp; llista.put("a1", "A1");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; llista.put("a2", "A2");&lt;BR /&gt;&amp;nbsp; }else{&lt;BR /&gt;&amp;nbsp;&amp;nbsp; llista.put("b1", "B1");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; llista.put("b2", "B2");&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; return llista;&lt;BR /&gt; }&lt;BR /&gt;}&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;Best Regards!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Oct 2011 06:49:48 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67292#M42936</guid>
      <dc:creator>marc_carrio</dc:creator>
      <dc:date>2011-10-25T06:49:48Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67293#M42937</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I don't understand why the variable isn't evaluated… =S&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&amp;lt;activiti:value id="param" name="${myVar}" /&amp;gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;Somebody knows why? and where I will touch for fix ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Oct 2011 11:48:33 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67293#M42937</guid>
      <dc:creator>marc_carrio</dc:creator>
      <dc:date>2011-10-25T11:48:33Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67294#M42938</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ok, FormProperty values… not support Expressions…&amp;nbsp; :roll: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I solved the problem changing it in activiti-engine.&amp;nbsp; &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://connect.hyland.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Oct 2011 11:19:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67294#M42938</guid>
      <dc:creator>marc_carrio</dc:creator>
      <dc:date>2011-10-26T11:19:51Z</dc:date>
    </item>
    <item>
      <title>Re: Dynamic List with forms properties?</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67295#M42939</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;How did you manage to make form property values accept expressions?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 07 Jun 2015 11:14:16 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/dynamic-list-with-forms-properties/m-p/67295#M42939</guid>
      <dc:creator>jwistrom</dc:creator>
      <dc:date>2015-06-07T11:14:16Z</dc:date>
    </item>
  </channel>
</rss>

