Using MyFaces for Portlets deployed on eXo Platform

I tested MyFaces 1.2.7 with MyFaces Portlet Bridge 1.0.0 on eXo PC 2.0.5 and eXo WCM 1.0 and 1.2, all under JBoss AS 4.2.x. For WCM you need at least Beta 2, because of PORTLETBRIDGE-84. I suppose the same is true for CS, KS and other eXo suites that uses the eXo Portal.

Besides the portlet bridge jars (and MyFaces jars if you'll use it instead of Mojarra embebed in JBoss AS), you need commons-codec-1.3.jar and commons-digester-1.8.jar as part of your WAR package (that is copy then to WEB-INF/lib).

Remember eXo need two packaging customizations (which are requited whether you use JSF or not):

    <listener>
        <listener-class>org.exoplatform.services.portletcontainer.impl.servlet.PortletApplicationListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>PortletWrapper</servlet-name>
        <servlet-class>org.exoplatform.services.portletcontainer.impl.servlet.ServletWrapper</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>PortletWrapper</servlet-name>
        <url-pattern>/PortletWrapper</url-pattern>
    </servlet-mapping>

If you want to use MyFaces instead of Mojarra (or any other JSF 1.2 implementation which is not the one embebed by JBoss AS) add a context-param to web.xml:

    <context-param>
        <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
        <param-value>true</param-value>
    </context-param>

For the impatient, here's a simple application ready to run under eXo: todo-jsf.war. Sorry, the application messages are in Portuguese, I'm from Brazil. ;-)

eXo Platform (last edited 2009-10-29 23:57:27 by FernandoLozano)