activiti & vaddin
DESCRIPTION
Activiti & Vaddin: A match made in heaven Frederik Heremans, Software Engineer, Alfresco Petter Holmström, Software Architect, VaddinTRANSCRIPT
![Page 1: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/1.jpg)
Activiti + Vaadin:A match made in heavenFrederik HeremansSoftware engieer, AlfrescoPetter HolmströmSoftware architect, Vaadin
lördag 12 november 11
![Page 2: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/2.jpg)
BackgroundWhat’s this all about?
lördag 12 november 11
![Page 3: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/3.jpg)
Devoxx Registration
3
lördag 12 november 11
![Page 4: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/4.jpg)
Devoxx Registration• Most of you have used it• Consists of two parts:
–Registration application for visitors–Administration application for staff
• Vaadin UI• Activiti backend• Additional technologies:
–Hibernate for object persistence–JSR-303 for data validation–Spring to glue everything together
4
lördag 12 november 11
![Page 5: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/5.jpg)
So why are we here?• The architecture turned out to be very effective to
work with• The system was easy to fix
–Bugs could be fixed quickly after they were discovered• The system was easy to refactor
–New features could be added quickly• We want to show you some patterns and best
practices for working with Activiti and Vaadin
5
lördag 12 november 11
![Page 6: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/6.jpg)
But first...
lördag 12 november 11
![Page 7: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/7.jpg)
What is Activiti?
lördag 12 november 11
![Page 8: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/8.jpg)
What is Vaadin?
lördag 12 november 11
![Page 9: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/9.jpg)
lördag 12 november 11
![Page 10: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/10.jpg)
lördag 12 november 11
![Page 11: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/11.jpg)
lördag 12 november 11
![Page 12: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/12.jpg)
lördag 12 november 11
![Page 13: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/13.jpg)
Vaadin is a UI framework
for desktop-like web apps
lördag 12 november 11
![Page 14: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/14.jpg)
Vaadin is a UI framework
for desktop-like web apps
lördag 12 november 11
![Page 15: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/15.jpg)
New configs, taglibs and syntax!?!
JavaScript,DOM, Applet,plugins?
lördag 12 november 11
![Page 16: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/16.jpg)
New configs, taglibs and syntax!?!
JavaScript,DOM, Applet,plugins?
This is Java. Nothing else.
{No!
lördag 12 november 11
![Page 17: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/17.jpg)
lördag 12 november 11
![Page 18: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/18.jpg)
Vaadin is like aset of LEGOs
lördag 12 november 11
![Page 19: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/19.jpg)
lördag 12 november 11
![Page 20: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/20.jpg)
lördag 12 november 11
![Page 21: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/21.jpg)
JavaEEJavaSE
JSP JSF JavaFX
Swing
lördag 12 november 11
![Page 22: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/22.jpg)
Vaadin
JavaEEJavaSE
JSP JSF JavaFX
Swing
lördag 12 november 11
![Page 23: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/23.jpg)
Architecture
DOM
Client Server
ViewHTML Pageover HttpResponse
Controller
Model
Parameters overHttpRequest
DB4
5
6
2
Term
inalAdapter
Term
inalAdapter
Automated bythe RIA framework
3
7
1
9
8
lördag 12 november 11
![Page 24: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/24.jpg)
Architecture
DOM
Client Server
ViewHTML Pageover HttpResponse
Controller
Model
Parameters overHttpRequest
DB4
5
6
2
Term
inalAdapter
Term
inalAdapter
Automated bythe RIA framework
3
7
1
9
8
Handled by the framework
lördag 12 november 11
![Page 25: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/25.jpg)
simple• forget the client-side • synchronous• server resources
lördag 12 november 11
![Page 26: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/26.jpg)
flexible• all Java tools and libraries• any JVM language
lördag 12 november 11
![Page 27: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/27.jpg)
flexible• all Java tools and libraries• any JVM language
Scala Groovylördag 12 november 11
![Page 28: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/28.jpg)
secure• code stays in server• less web services
lördag 12 november 11
![Page 29: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/29.jpg)
What can you do with it?
lördag 12 november 11
![Page 30: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/30.jpg)
lördag 12 november 11
![Page 31: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/31.jpg)
Web Applications!
lördag 12 november 11
![Page 32: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/32.jpg)
Let us tell you a story...
lördag 12 november 11
![Page 33: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/33.jpg)
The Company
22
lördag 12 november 11
![Page 34: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/34.jpg)
The Process
23
lördag 12 november 11
![Page 35: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/35.jpg)
... however, there is a problem!
lördag 12 november 11
![Page 36: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/36.jpg)
Expenses are skyrocketing!
lördag 12 november 11
![Page 37: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/37.jpg)
We need a change!
26
lördag 12 november 11
![Page 38: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/38.jpg)
Now let’s do it!
lördag 12 november 11
![Page 39: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/39.jpg)
Next Steps
lördag 12 november 11
![Page 40: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/40.jpg)
Getting the code
29
lördag 12 november 11
![Page 41: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/41.jpg)
Continuing with Activiti
30
lördag 12 november 11
![Page 42: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/42.jpg)
Getting Started with Vaadin• Visit our website www.vaadin.com• Read the Book of Vaadin• Visit our booth!
31
lördag 12 november 11
![Page 43: Activiti & Vaddin](https://reader033.vdocuments.mx/reader033/viewer/2022052505/55632f3cd8b42a5c7b8b4c56/html5/thumbnails/43.jpg)
Questions?
lördag 12 november 11