Vacation management Living Application
About
This is an official Living Application example for Bonita >7.10.3
This example demonstrates the following concepts:
- Living Application
- Forms and pages built using the UI Designer
- Process using BDM and contracts
- REST API extensions
Installation
- Start Bonita Studio 7.10.3 or later
- Download the project .bos file and REST API extension .zip file
- Import the .bos file in your Bonita Studio. It contains 5 diagrams: Example-NewVacationRequest, Example-ModifyPendingVacationRequest, Example-CancelVacationRequest, Example-InitiateVacationAvailable and Example-RemoveAllBusinessData. Each diagram includes a single process definition. It also includes business data model definition, default process configuration, application page and definition (i.e. application user interface definition). Important: importing the
.bos
file will ask you to override your existing business data model. - Open the Example-InitiateVacationAvailable diagram and run the process (click on Run button in a Bonita Studio). This process will initialize a business data that store vacation available counter for each Bonita user declared in the default test environment (ACME organization).
- You can now deploy and run the New Vacation Request, Modify Pending Vacation Request and Cancel Vacation Request processes by clicking on Run button in Bonita Studio. Note that vacation request approval need to be performed by requester (walter.bates) manager (helen.kelly) so you might want to logout and login back with helen.kelly/bpm user. If you want to create (or cancel) several vacation requests, do not click again on Run button. Instead click on the Portal button and in User view go to to Processes tab select the process and click on Start button.
- You can now deploy the living application that give user an overview of all created vacation request.
- First you need to deploy a REST API extension:
- In the Portal, switch to Administrator view. Use drop down list on top right corner to switch from User to Administrator.
- Go to Resources.
- Click on Add button.
- Select the
vacationRestApiExtension.zip
file. - Click on Next button.
- Click on Confirm button.
- Read more about REST API extension in Bonita official documentation.
- Next you need to deploy the application page:
- In Bonita Studio project explorer unfold Pages/Forms/Layout node.
- Select ExampleVacationManagement application page.
- Do a right click and select Deploy.
- Read more about pages on the Bonita official documentation.
- First you need to deploy a REST API extension:
- You are now ready to deploy in the Portal the application definition that will use the previously deployed REST API extension and page:
- In Bonita Studio project explorer unfold Application descriptors node.
- Select Application_Data.xml application descriptor.
- Do a right click and select Deploy.
- For more information refer to applications in Bonita official documentation.
- Run the Vacation Management application by accessing to this URL (the port number may vary): http://localhost:8080/bonita/apps/tahiti. You can find the URL of the application in the Portal Administrator view -> Applications.
Screenshots
Vacation Management Living Application
Vacation Management Living Application - Vacation request to cancel
New Vacation Request process
New Vacation Request process - Vacation request creation form
New Vacation Request process - Vacation request review form
Modify Pending Vacation Request process
Cancel Vacation Request process
Cancel Vacation Request process - Vacation request canceled review form
Initiate Vacation Available process
Remove all business data process
Compatibility
This example has been created and built with Bonita 7.10.3 Community Edition.
It should be compatible with any newer version as well as Enterprise Edition.
Known limitations
None so far.
Issues
Reports issues and improvement requests on GitHub tracker.
Category:
Licence:
Apache v2
Downloads
Total downloads: 21 731
Version | BonitaBPM Version | Post date | Download | Link to content |
---|---|---|---|---|
7.10.3-1.5.0 | 7.x, 7.10.x | 2020-Mar-25 |
Download 1276 downloads |
Release note |
7.9.3-1.5.0 | 7.x, 7.9.x | 2019-Sep-26 |
Download 1360 downloads |
Release note |
v1.4.1 for Bonita BPM 7.5.0 and onward | 7.x, 7.5.x | 2017-Jun-07 |
Download 4590 downloads |
Release note |
v1.3.0 for Bonita BPM 7.3.0 and onward | 7.x, 7.3.x | 2016-Jul-25 |
Download 3587 downloads |
Release note |
v1.2.0 for Bonita BPM 7.2.1 and onward | 7.x, 7.2.x | 2016-Mar-09 |
Download 3263 downloads |
Release note |
v1.1.0 for Bonita BPM 7.0.2 and onward | 7.0.x | 2015-Sep-11 |
Download 4278 downloads |
Release note |
v1.0.0 for Bonita BPM 7.0 | 7.0.x | 2015-Jun-22 |
Download 3377 downloads |
Release note |
Downloads:
183
Certification:
Type:
Comments
Have any report documentation for example? . It can help me easy to follow and understand what project excute.
Whien I try to send an e.mail to the manager with the request I have the next error:
java.lang.reflect.InvocationTargetException
org.bonitasoft.engine.bpm.connector.ConnectorExecutionException: USERNAME=install | org.bonitasoft.engine.core.connector.exception.SConnectorException:
org.bonitasoft.engine.expression.exception.SExpressionEvaluationException: Declared return type class java.lang.Long is not compatible with evaluated type class java.lang.Integer for expression processInstanceId
I have the following script in the field From
return BonitaUsers.getProcessInstanceInitiatorProfessionalContactInfo(
apiAccessor, processInstanceId).email
What is the mistake?
how can we do this example with type of leave(sick,paye,...,other) and daysavailableInitial associated to type of leave
I want to upgrade this project by replace the UI with my own SpringMVC project.
Is there any solution?
Hello,
1 application descriptor has been partially imported. The following items are not loaded in the Portal.
URL: ../apps/tahiti
index Application_page
custompage_ExampleVacationManagement Page
How can I fix this error?
Everything went well until I clicked on Create new vacation request button. Nothing happens when I do so. Why? I tried IE and Chrome without any luck.
I would suggest to post a question on the forum to get some help. My recommendation would be to enable the developer tools in your web browser and check the network tab to see what is going on. A click on a button usually trigger a REST API call. If the REST API call failed the default behavior is to stay on the same page. It's probably what you are experimenting right now.
I's a good Management Example.