cancel
Showing results for 
Search instead for 
Did you mean: 

How to create a complex business object in activiti BPM ?

rao_diid
Champ on-the-rise
Champ on-the-rise

 In all of the BPM products we can create business objects which can hold the data of the process, for examples in a Loan Application Process we can have a LoanDetails object which can contain several attributes or fields within it like applicantName, loanAmount, interestRate etc etc. 

How can we do this in activiti bpm ?

2 REPLIES 2

cjose
Elite Collaborator
Elite Collaborator

Which version are you using? Community or Enterprise?

Hope this helps!

gdharley
Elite Collaborator
Elite Collaborator

Ciju points to Data Models as the correct mechanism for creating a complex business object, however Data Models are very limited as they map directly to a single table, cant handle nested variables (i.e. that include lists) and limit the supported data types.

Yes, there is the ability to create a custom persistence class, but again, this may limit your structure simply by the way the class API is structured.

That said, if you are using Enterprise Edition and the embedded forms, then you will probably be best served using data models as you will be able to map form components into the data models relatively easily.

If you are using Community Edition or the engine stand-alone, I suggest you create Pojo's to represent your data model.

If you need to persist these, then map them to database tables using JPA and if you need to interact from a UI, then add custom serializers (e.g. serialize to JSON).

Often how you handle this really depends on the scenario and indeed one size does not fit all.

Likely you will implement in a number of different ways to satisfy your application requirements.

Greg