I am evaluating Activiti to replace jBPM 3 in our application. Our front end technology is Flex, and, we have some very complex forms - including dynamic fields based on business conditions, happenings in the previous states of the process, etc. It will be very helpful if anyone could share pointers as to how to go about using Flex for user forms.
You can use the rest app in order to send form data to activiti. One thing on complex forms, though: think carefully if you really need to send all forms fields as distinct FormProperties. If you have more than one step in your workflow that uses the same information, maintenance can be a problem since keeping in sync all fields in all human tasks is very error-prone.
An approach I've used in my projects is to define a single FormProperty that receives _all_ the form data in a single process variable (eg: 'requestForm' , which holds the related form data as a XML or JSON object. Your process logic can then consume this single variable and do whatever validation/transformation/enrichment you need and proceed to the next step in the process.
We have support for form properties as pointed out, but for complex forms it might be better to used the formKey property. There you can define an identifier that you can use to correlate to the right form in your application.