<?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 FormService should be support for Object type value in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115066#M81099</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;ProcessInstance&amp;nbsp;&amp;nbsp;&amp;nbsp;submitStartFormData(String processDefinitionId, Map&amp;lt;String,String&amp;gt; properties) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start a new process instance with the user data that was entered as properties in a start form.&lt;BR /&gt;&lt;BR /&gt; ProcessInstance&amp;nbsp;&amp;nbsp;&amp;nbsp;submitStartFormData(String processDefinitionId, String businessKey, Map&amp;lt;String,String&amp;gt; properties) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start a new process instance with the user data that was entered as properties in a start form.&lt;BR /&gt;&lt;BR /&gt; void&amp;nbsp;&amp;nbsp;&amp;nbsp;submitTaskFormData(String taskId, Map&amp;lt;String,String&amp;gt; properties) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Completes a task with the user data that was entered as properties in a task form.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Now, use FormService to submit datas that should be String, why not support for Object?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;For example, start a process instance that contains a multi instance task, and the &lt;/SPAN&gt;&lt;STRONG&gt;Collections&lt;/STRONG&gt;&lt;SPAN&gt; use expression &lt;/SPAN&gt;&lt;STRONG&gt;${users}&lt;/STRONG&gt;&lt;SPAN&gt;. So use code of below to start a process instance.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;String users = "user1,user2,user3,user4";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; String processDefinitionId = processDefinition.getId();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, String&amp;gt; formProperties = new HashMap&amp;lt;String, String&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; formProperties.put("countersignUsers", users);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessInstance processInstance = formService.submitStartFormData(processDefinitionId, formProperties);&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Then occur a exception: org.activiti.engine.ActivitiException: ${countersignUsers}' didn't resolve to a Collection&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;——————-&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Use RuntimeService.startProcessInstanceBy* method are ok.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map&amp;lt;String, Object&amp;gt; variableMap = new HashMap&amp;lt;String, Object&amp;gt;();&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;String&amp;gt; users = Arrays.asList("user1", "user2", "user3", "user4");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variableMap.put("countersignUsers", users);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; variableMap.put("rate", rate);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("dispatch", variableMap);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertNotNull(processInstance.getId()); // it's ok&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;So, i hope on the FormService's method that name start with &lt;/SPAN&gt;&lt;STRONG&gt;submit&lt;/STRONG&gt;&lt;SPAN&gt; to support Object type value.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;JIRA: &lt;/SPAN&gt;&lt;A href="http://jira.codehaus.org/browse/ACT-1412" rel="nofollow noopener noreferrer"&gt;http://jira.codehaus.org/browse/ACT-1412&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;—————&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I created a branch form-properties-support-object-value, details: &lt;/SPAN&gt;&lt;A href="https://github.com/henryyan/Activiti/commit/15f86de0b6d6e0eea3488c0da621f76647871174" rel="nofollow noopener noreferrer"&gt;https://github.com/henryyan/Activiti/commit/15f86de0b6d6e0eea3488c0da621f76647871174&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;All unit tests valid and my question has been resolved too.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 14 Oct 2012 15:22:54 GMT</pubDate>
    <dc:creator>kafeitu</dc:creator>
    <dc:date>2012-10-14T15:22:54Z</dc:date>
    <item>
      <title>FormService should be support for Object type value</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115066#M81099</link>
      <description>ProcessInstance&amp;nbsp;&amp;nbsp;&amp;nbsp;submitStartFormData(String processDefinitionId, Map&amp;lt;String,String&amp;gt; properties) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Start a new process instance with the user data that was entered as properties in a start form. ProcessInstance&amp;nbsp;&amp;nbsp;&amp;nbsp;submitStartFormData(String processDefinitionId, String businessKey, Map&amp;amp;l</description>
      <pubDate>Sun, 14 Oct 2012 15:22:54 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115066#M81099</guid>
      <dc:creator>kafeitu</dc:creator>
      <dc:date>2012-10-14T15:22:54Z</dc:date>
    </item>
    <item>
      <title>Re: FormService should be support for Object type value</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115067#M81100</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Form-properties were delibiratly String-typed and the conversion to actual Object's in built-in in FormTypes. So if you want to add a type that converts e.g.. a comma-separated list of values in a form-proprty to an object-array, you'll have to write an plug in your own custom form-proprty type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Have a look at: org.activiti.explorer.form.UserFormType for an example on how to create one, and look in the /activiti-webapp-explorer2/src/main/webapp/WEB-INF/applicationContext.xml how to wire it.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2012 07:52:53 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115067#M81100</guid>
      <dc:creator>frederikherema1</dc:creator>
      <dc:date>2012-10-15T07:52:53Z</dc:date>
    </item>
    <item>
      <title>Re: FormService should be support for Object type value</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115068#M81101</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Form-properties were delibiratly String-typed and the conversion to actual Object's in built-in in FormTypes. So if you want to add a type that converts e.g.. a comma-separated list of values in a form-proprty to an object-array, you'll have to write an plug in your own custom form-proprty type.&lt;BR /&gt;&lt;BR /&gt;Have a look at: org.activiti.explorer.form.UserFormType for an example on how to create one, and look in the /activiti-webapp-explorer2/src/main/webapp/WEB-INF/applicationContext.xml how to wire it.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for your reply, try it now.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2012 09:39:36 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/formservice-should-be-support-for-object-type-value/m-p/115068#M81101</guid>
      <dc:creator>kafeitu</dc:creator>
      <dc:date>2012-10-15T09:39:36Z</dc:date>
    </item>
  </channel>
</rss>

