The form MUST match the variable name of the process
Internal BPM Forms has special requirements for the Data Types (Class definition)
- no inheritance
- always default constructor (with no parameter)
Business Central is the default forms renderer. Kieserver is also able to generate forms. In order to configure Business Central to use the forms generated by the kieserver, the following properties should be defined on the BC side:
org.jbpm.wb.forms.renderer.ext
: Switches the form rendering between Business Central and KIE Server. By default, the form rendering is performed by Business Central. Default value: false.org.jbpm.wb.forms.renderer.name
: Enables you to switch between Business Central and KIE Server rendered forms. Default value:workbench
. Others:bootstrap
,patternfly
In order to define field more large use the CSS Style field.
E.g.
width:400px
Example of range value
:
{supplier1,supplier1;supplier2,supplier2;supplier3,supplier3}
Example of Formula
:
=return "ok";
In the checkbox properties add this code to on change script code
$("#order_rejectionReason").toggle(!this.checked);
In the example order_rejectionReason
is the field name.
https://access.redhat.com/solutions/1487113
To make your process manage documents you have to define your process variables as usual using the Custom Type org.jbpm.document.Document
. Each variable defined as Document will be shown on the form as a FILE input.
Authoring view and edit the kie-deployment-descriptor.xml
file located on <yourproject>/src/main/resources/META-INF
and add your Document Marshalling Strategy to the <marshalling-strategies>
list like this:
<marshalling-strategies>
<marshalling-strategy>
<resolver>reflection</resolver>
<identifier>
org.jbpm.document.marshalling.DocumentMarshallingStrategy
</identifier>
</marshalling-strategy>
</marshalling-strategies>
From version 7.x, to manage Document Collections (org.jbpm.document.service.impl.DocumentCollectionImpl
)
<marshalling-strategies>
<marshalling-strategy>
<resolver>mvel</resolver>
<identifier>new org.jbpm.document.marshalling.DocumentCollectionImplMarshallingStrategy()</identifier>
</marshalling-strategy>
</marshalling-strategies>
- KIE Server brings document support
- Example of CMIS integration through the Document Marshalling Strategy
Add the dependencies to the project:
<dependency>
<groupId>org.jbpm</groupId>
<artifactId>jbpm-document</artifactId>
<scope>provided</scope>
</dependency>
REMINDER: Add the jbpm-document-<release>.jar
to your kieserver libs.
Kie client API init:
documentClient = client.getServicesClient(DocumentServicesClient.class);
Create a document
document = DocumentInstance.builder()
.name("first document")
.size(contentBytes.length)
.lastModified(new Date())
.content(contentBytes)
.build();
https://www.linkedin.com/pulse/does-bpm-need-head-donato-marrazzo