UiPath Community: Communication Mining from Zero to Hero
GateIn - The Solution for Managing and Building Enterprise Web Apps
1. The Solution for Managing and Building
Enterprise Web Apps
Presented By: Wesley Hales
2. Agenda
• (almost) Everything you need to know about a
portal environment
• Portal and Portlet Concepts
• 3 Things That Will Get You Up and Running Fast
• JBoss Portlet Bridge
• Demos mixed in
3. What is a Portal?
• Unified access to web
apps - each window
can be a separate
war or ear containing
a portlet.xml file.
• Integrates services across organizational
boundaries. (SSO, collaboration, social, etc...)
4. Do I Really Need One?
• Why not build it in-house? “But, I don’t
really need all those bells and whistles...”
• Learning curve?
• What about speed and performance?
6. Portlets Defined
• Understanding the 2 request cycle is a pita,
but it makes sense once you get it.
• A portlet is not a servlet. However, its
deployment, classloading, web app
lifecycle management, session
management and request
dispatching functionalities are leveraged
from the Servlet spec.
7. Portlets Defined
• Extra functionality not provided by servlets:
• Send and receive events from other portlets.
• Store persistent configuration and
customization data
• Has access to user profile information
• Store transient data in the portlet session in
two different scopes: application-wide or the
portlet private scope.
8. The Great Thing Is...
• You really don’t have to worry about
anything I just talked about if...
• You use a bridge, like the JBoss Portlet
Bridge (details later)
• Win the lottery
9. Features
Customizability and
Gadgets & Mashups Personalization
Extendable - As eXo has WYSIWYG Layout Editor
done with Knowledge Suite
and Content Management WSRP
Merge of two mature
Easy Creation of Virtual projects that have been
(multiple) portals at around for a while, JBoss
runtime Portal and eXo Portal
10. Personalization and User
Management
• Is a HUGE part of GateIn
• Expensive to build in-house.
• Users can easily change their layout, skin,
add and remove portlets and gadgets, all
with a slick drag-n-drop interface.
• ... That’s great, but how can I easily manage
what’s available to different users and
groups?
11. Users, Groups, and
Memberships
• Easy user management
• A group can contain roles.
• Manager
• Member
• Validator
• By default, Manager has the highest rights in a
group.
15. Extensions and 3rd
Party Plug-Ins
• All products in eXo's
open source stack will be
certified on the GateIn
portal.
• Currently only a few of
these are available in
Alpha and Beta stages
16. 3 Things That Will Get You
Up and Running Fast
• Templating and Skins
• Integrating Legacy Apps and existing (or new)
services. For example LDAP or Single Sign On
• Extending GateIn to include additional portals
or 3rd party products
17. LDAP
• Can easily setup new or existing Directory
Server
• LDAP will be configured to store part of
the GateIn group tree.
• Only a few lines of xml to uncomment
http://bit.ly/9p2w0J
19. Templating
• Instead of using JSP includes to template
markup, GateIn uses portlets themselves to
form a composite layout
• Tested in all major browsers
21. Skins
• New skins are deployed using a war
containing css
• Common skin changes will happen in the
Banner, Logo, and Navigation portlets, or
you can use your own.
23. Integrating New (and legacy)
Web Apps
• Demo - JSF (RichFaces & Seam), Tapestry,
SpringMVC
24. Extending GateIn
• trunk/examples/extension and trunk/
examples/portal contain empty projects
that set you up for extending GateIn
• Extension - Is used to bring in 3rd party
suites like KS, CMS, or Social
• Portal - Gives developers a dev
environment
http://bit.ly/bmCBdD
25. Extension Example -
Knowledge Suite
• Forums
• Enterprise grade - project based
• Advanced Moderation - lock, close approve
• Answers / QA
• Multi Language, Moderation, RSS
• FAQs
• Publish forged knowledge into FAQs
26. • Backed by JSR-301 and 329
• Allows you to run any JSF application as a
portlet
• Hides the underlying portlet APIs so
developers only need to worry about 1
application
27. • The only bridge which supports running
RichFaces and/or Seam applications
• Runs your app as both a portlet and servlet
• Could support other web frameworks like
Wicket, GWT, etc...
28. Getting Involved
• User Forums
• Articles & How Tos
• Jira - Add your enhancement or try to
handle some created issues
• Contests - Skins, etc...