We're pleased to announce that 3.3.0.Beta1 of Portlet Bridge is now available!

 

Release Highlights

  • Links to Script resources returned in an Ajax partial response no longer convert & into a html entity, enabling the script to be loaded correctly.
  • Fix issues around redirection when cookies are disabled
  • No longer retain the Faces ViewRoot when a Render Request has completed. For further details, see below.
  • Default to shortening the namespace that is added to the JSF Component Ids. For further details, see below.

 

Full details of what is contained within the release can be found in the Release Notes.

 

Retaining the Faces ViewRoot on completion of a RenderRequest

Previously, the Faces ViewRoot was stored in the Bridge Request Scope on completion of a RenderRequest, which is used to reconstitute the state of the portlet in JSF for future rendering. That behavior made it more performant when re-rendering a portlet repeatedly without the data being altered, but it does pose problems when developing more modern JSF 2 portlets.

 

The default behavior, from this release, is that any data will not be retained for use on any subsequent re-rendering of the portlet page. It's possible to revert to the previous behavior by setting the following context param in web.xml:

<context-param>
  <param-name>org.jboss.portletbridge.BRIDGE_SCOPE_PRESERVED_POST_RENDER</param-name>
  <param-value>true</param-value>
</context-param>


Full details on these configuration settings can be found in the documentation.

 

Reverting to full Namespace prefix of JSF Component Id

Previously, the Portlet Bridge would prefix all JSF Component Ids with a full namespace generated by the PortletResponse. The default behavior from this release mean that we shorten those namespace prefixes to a level where will still be unique, but significantly improve the readability of the generated portlet content as well as reduce the amount of data being transmitted between the client and server.

 

It's possible to revert to the old behavior of the long namespaces by setting the following context param in web.xml:

<context-param>
  <param-name>org.jboss.portletbridge.COMPONENT_NAMESPACE_SHORTENED</param-name>
  <param-value>false</param-value>
</context-param>

Full details on these configuration settings can be found in the documentation.

 

Maven coordinates:

For a JSF2 only portlet:

 

<dependency>
    <groupId>org.jboss.portletbridge</groupId>
    <artifactId>portletbridge-api</artifactId>
    <version>3.3.0.Beta1</version>
</dependency>
<dependency>
    <groupId>org.jboss.portletbridge</groupId>
    <artifactId>portletbridge-impl</artifactId>
    <version>3.3.0.Beta1</version>
    <scope>runtime</scope>
</dependency>


For a RichFaces 4 portlet you need the above as well as:

 

<dependency>
    <groupId>org.jboss.portletbridge</groupId>
    <artifactId>portletbridge-extension-richfaces</artifactId>
    <version>3.3.0.Beta1</version>
    <scope>runtime</scope>
</dependency>


 

Keeping up with the latest

One of the best ways to hear about the latest releases and changes with Portlet Bridge is to follow us on Twitter (@portletbridge).

 

Don't be a stranger

As always, if you have any questions about or issues with Portlet Bridge, please get in touch.