Try now Demo en
  • en
  • fr
  • de
  • Product
    • Platform
      • Software TourFeatures & capabilities overview
      • Why eXoeXo Platform key differentiators
      • InternationalisationSupporting multilingual environments
      • MobileResponsive & available on any device
    • Technology
      • No CodeTailor eXo platform to your needs
      • ArchitectureAn overview of eXo Platform technology
      • IntegrationsAvailable connectors & integration capabilities
      • SecurityeXo Platform security measures
      • Open sourceComponents & licensing
  • Solutions
    • Communication
      • Modern IntranetBuild your company culture
      • Knowledge managementCentralize and share your company knowledge
      • Community managementEngage your community
      • ExtranetInvolve your clients and partners
    • Collaboration
      • Social NetworkConnect all your employees
      • Collaboration PlatformEmpower your teams
      • Employee PortalCentralize your work environment
      • Employee EngagementEngage & empower your employees
    • For
      • Public Sector
      • Networks
      • Education
      • Enterprises
  • Pricing
  • Resources
    • Resource center
      • Case studies
      • White Papers
      • Datasheets
      • Videos
    • Migration guide
      • Alternative to Microsoft 365
      • Alternative to Sharepoint
      • Alternative to Workplace from Meta
    • From The Blog
      • eXo Platform 6.5 is released: personalized navigation, multi-sites management and more
      • eXo launches its online community platform – eXo Tribe!
      • Cloud Vs On-premise Digital Workplace: Which one is right for your business?
  • Community
    • CommunityJoin our online community platform
    • DownloadLaunch eXo platform in your infrastructure
    • Source codeSource code on github
    • FAQsAbout the software, the community and our offers
    • REST APIs & DocumentationAll REST APIs available in eXo Platform
  • Company
    • Customers
    • Partners
    • Services
    • About us
    • Contact us
    • Newsroom
  • Menu mobile
    • Pricing
    • About us
    • Careers
    • Resource center
    • Blog
    • Contact us
    • Try eXo
Platform
  • Software Tour Features & capabilities overview
  • Why eXo eXo Platform key differentiators
  • Internationalisation Supporting multilingual environments
  • Mobile Responsive & available on any device
Technology
  • No Code Tailor eXo platform to your needs
  • Architecture An overview of eXo Platform technology
  • Integrations Available connectors & integration capabilities
  • Security eXo Platform security measures
  • Open source Components & licensing
Communication
  • Modern Intranet Build your company culture
  • Knowledge management Centralize and share your company knowledge
  • Community management Engage your community
  • Extranet Involve your clients and partners
Collaboration
  • Social Network Connect all your employees
  • Collaboration Platform Empower your teams
  • Employee Portal Centralize your work environment
  • Employee Engagement Engage & empower your employees
For
  • Public Sector
  • Networks
  • Education
  • Enterprises
Resource center
  • Case studies
  • White Papers
  • Datasheets
  • Videos
Migration guide
  • Alternative to Microsoft 365
  • Alternative to Sharepoint
  • Alternative to Workplace from Meta
From The Blog
  • eXo Platform 6.5 is released: personalized navigation, multi-sites management and more
  • eXo launches its online community platform – eXo Tribe!
  • Cloud Vs On-premise Digital Workplace: Which one is right for your business?
Community Join our online community platform
Download Launch eXo platform in your infrastructure
Source code Source code on github
FAQs About the software, the community and our offers
REST APIs & Documentation All REST APIs available in eXo Platform
Customers
Partners
Services
About us
Contact us
Newsroom
Pricing
About us
Careers
Resource center
Blog
Contact us
Try eXo
  1. Accueil
  2. Uncategorized
  3. New Features in GateIn 3.2 That Will Improve the eXo Platform 3.5 Experience

New Features in GateIn 3.2 That Will Improve the eXo Platform 3.5 Experience

GateIn is the open source portal framework that serves as the backbone of eXo Platform, and the upcoming GateIn 3.2 will provide eXo Platform 3.5 with a set of great portal features. GateIn 3.2 is a logical evolution of the GateIn 3.1 release; the vision is to improve the project and continue the implementation of what we started with GateIn 3.0. In this post, I will describe a few of GateIn’s numerous new features.

Navigation Controller

The navigation controller is a major change that could be summarized as the decoupling of URL expression and URL processing in GateIn. This means that:

  • URLs processed by GateIn can be easily changed because they are now declared in an XML file
  • Friendly URLs are now supported, giving the portal administrator freedom to configure how http URLs should appear

Desktop Mode

A new Desktop Mode feature was developed for the eXo Platform 3.5 release, and we’ve already updated it to run on top of GateIn 3.2. While providing a desktop experience to your sites, this new feature also gave us an opportunity to polish the UI and bring a few more improvements:

  • Ability to upload desktop backgrounds
  • Revamped dock UI

image01

Site Describability

Sometimes there are features that are difficult to name. We had one in this version of GateIn, which we decided to call site describability. This new feature enhances GateIn’s usability by allowing the administrator to provide a display name and description for a portal site. Here are a couple of screen shots to show you what I’m referring to:

image00

image03

Navigation is an important concept in GateIn that allows web pages to be organized as a hierarchical navigation tree for portals and groups. Internationalization in navigation was supported until now with the help of resource bundles by providing a label containing a specific expression (like ${portal.home} for instance). In some cases this approach is not dynamic enough because, in order to to handle custom resource bundle keys, it requires a resource bundle to be updated when a new navigation node is added.

GateIn 3.2 will include fully dynamic support of navigation i18n. The setup can be done easily in navigation.xml file in a similar fashion of portlet.xml (using the xml:lang attribute to specify a language) deployment descriptor. You can watch a video of this feature on this page.

Of course it is also possible to edit the navigation i18n labels in the user interface:

image02

Portal Public Parameters

As a portlet developer, you often need to extend the GateIn server and create portlets that interact with the environment. So you will likely enjoy this new feature, which allows you to obtain contextual information like the current navigation URI, the current page name and so on. The best thing about this feature is that it leverages the JSR 286 API to get this information in a very intuitive and natural fashion. If you think about it, the most adapted way to obtain this information is via the public render parameter API. This feature is therefore very easy to use, as the only thing you need to do is to declare a specific public render parameter in your portlet XML deployment descriptor. For instance, if you want to obtain the current site name, you will need to declare:


<portlet>
...
<supported-public-render-parameter> site_name < /supported-public-render-parameter >
...
</portlet>

<public-render-parameter>
<identifier>site_name</identifier>
<qname xmlns:prp='http://www.gatein.org/xml/ns/prp_1_0'>prp:site_name </gname>
</public-render-parameter>

And voilà, at run-time you can get the current site name by using the portlet request render parameters, pretty much like:


protected void doView(RenderRequest req, RenderResponse resp) throws PortletException, IOException {
...
writer.println("The current site is " + req.getParameter("site_name"));
...
}

Everything we thought might be useful to a portlet developer to see was done (and if you think that we forgot something useful, don’t hesitate to tell us, or even better contribute it!):

  • navigation_uri: the current navigation URI
  • page_name: the current page name
  • site_type: the current site type (“portal” for portal, “user” for dashboard, “group” for group)
  • site_name: the current site name
  • window_width: the current window width
  • window_height: the current window height

Performance

No major release of GateIn would be complete without performance improvements. In this release we focused on the improving how GateIn loads a site’s navigation tree. The navigation tree used to be entirely loaded from the Java Content Repository and was eventually an issue for sites using a large navigation. Our team worked hard to improve it, and the result is the capability to load navigation fragments instead of the whole tree, while simultaneously keeping the user interface consistent. As a bonus it improved the concurrent edition of the navigation and now we are glad to support concurrent real-time editions of the navigation, as you can see in this video.

Finally

We also made a lot of minor enhancements that will make your life with GateIn better. Here are the ones I think are most relevant:

  • Resource compressor: we provide pluggability for resource compression (JavaScript and CSS), and we integrate the YUI and Google Clojure compressors by default. It works with a system of plugins; if you want to change the configuration you can have a look at the resource-compressor-configuration.xml file. You can even develop your own compressor if you want.
  • A drop-down list for portal or group sites when adding a new page: it’s a minor usability enhancement, yet convenient.
  • A lot of work was done to make the deployment of the WSRP service more modular in JBoss AS, just how it used to be in JBoss Portal.
  • The portlet container session life cycle could sometimes have a lifetime greater than that of the portal, especially when a logout was performed. We fixed this issue, so now a logout on GateIn invalidates pending portlet sessions.

Check out JBoss.org for the latest downloads, and be on the lookout for previews of eXo Platform 3.5…

Brahim Jaouane

I am a Digital Marketing specialist specialized in SEO at eXo Platform. Passionate about new technologies and Digital Marketing. With 10 years' experience, I support companies in their digital communication strategies and implement the tools necessary for their success. My approach combines the use of different traffic acquisition levers and an optimization of the user experience to convert visitors into customers. After various digital experiences in communication agencies as well as in B2B company, I have a wide range of skills and I am able to manage the digital marketing strategy of small and medium-sized companies.

Full-featured digital workplace with everything your employees need to work efficiently, smartly integrated for a compelling employee experience

  • Product
    • Software tour
    • Communication
    • Collaboration
    • Knowledge
    • Productivity
    • Open Source
    • Integrations
    • Security
  • Uses cases
    • Digital Workplace
    • Intranet software
    • Collaboration software
    • Knowledge management software
    • Entreprise Social Network
    • Employee Engagement platform
  • Roles
    • Internal Communications
    • Human Resources
    • Information Technology
  • Company
    • Product offer
    • Services Offer
    • Customers
    • Partners
    • About us
  • Resources
    • FAQs
    • Resource Center
    • Collaboration guide
    • What is a Digital workplace?
    • What is an intranet?
    • Employee engagement
  • Terms and Conditions
  • Legal
  • Privacy Policy
  • Accessibility
  • Contact us
  • Sitemap
  • Facebook
  • Twitter
  • LinkedIn
wpDiscuz