Download - Liferay and soa platform
Liferay Portaland
Red Hat SOA Platform working together
Henri Sora; Director, Technology & ServicesJouko Pirinen; Senior Software Developer24.4.2012
Two extranets
Project one- One integrated dashboard to use a ERP and multiple CRM systems together- A business critical tool for day to day operations of the client organizations
Project two- One large extranet
- Offer calculation - Project information - Construction material acquisition
- Interfaces two external applications - Two-way SMS and e-mail applications
Business Problems & Project ScopeProject one- Ambientia replaced an older system that did not perform well (no knowhow, no maintenance, aged architecture) -The client organisations needed to integrate 1) order and 2) problem tickets
Project two- Ambientia replaced manual work but the actual project was green field development - The client wanted to 1) boost sales and to 2) guide product selection of its sales force
Technology Liferay Portal • Three-tier application using
Liferay as infrastructure
JBoss SOA Platform • Integration interfaces • Asynchronous queues
Red Hat Enterprise Linux • MySQL • Linux platform in overall
Vmware VSphere • Virtual Infrastructure
Application Architecture
Liferay & portlets - Full MVC architecture of the actual application
- Model: Service Builder - View: JSP & Alloy UI - Controller: Spring controller
- Liferay’s organization features Red Hat SOA Platform - Integration to external systems- Client specific API’s for certain integrations- Handles synchronous and asynchronous queues -
Project 1, Architecture
Service Architecture 1
https://super.ambientia.fi/display/FNE/Palvelun+arkkitehtuuri
Service Architecture 1
https://super.ambientia.fi/display/FNE/Palvelun+arkkitehtuuri
Actual application logic
Service Architecture 1
https://super.ambientia.fi/display/FNE/Palvelun+arkkitehtuuri
Synchronous Call
Asynchronous off-loading
Service Architecture 1
https://super.ambientia.fi/display/FNE/Palvelun+arkkitehtuuri
W
as S
OAP b
ut th
e
prot
ocol
cou
ld b
e al
mos
t
anyt
ing
Project 2, Architecture
Service two
Uses similar architecture as previous project also
- queues - SOAP - SMTP- IMAP
Integration targets
- SMS - E-mail - ERP - CRM
JBoss SOA Platform tools used
- JBoss Developer Studio - Content Based Routing- JBoss messaging
- JMS- Asynchronous and Synchronous model
- Smooks Transformations - JBoss Web Service API- Some custom made actions
Liferay & Spring tools used
Liferay- Liferay 6.0- Portlets- JSP & Alloy UI & Velocity- Service builder
- Domain + service layer
- Liferay permission checking utilities (users, roles, inheritance) - Organization methods
Spring - Spring Portlet MVC- Injections - Controllers- Multipart (file
upload) support- Handler mappings- Parameter Handler
Mapping- Dependency
Injections
The Combination
Benefits of the combination
1. Loose coupling with the app and the ESB lead to larger development team, and therefore, faster development
2. No loss of information while having downtime
3. Client specific interfaces that are unified at ESB
4. New interfaces and protocols are almost trivial
5. Asynchronous queues and handle peaks
Problems during the projects
Project Management - Change management - UI models compared to IKIWISI - Interfacing systems that were not ready at
the time… Technology- UI – not the technologies itself - JavaScript and browser compatibility - Complex queries with Service Builder
smaller chucks combined to end results
Conclusion
- Both clients are still active. - Both systems can be quite easily
maintained and changed because of the architecture
- The systems can handle variant load without performance problems
- JBoss SOA Platform and Liferay prevented us to write infrastructure code
- We are positive about the tools and eager to work with them in the future also.
Questions? Twitter: @henrisora
ThanksTwitter: @henrisora