Hi guys

Do you have any clue on this case? Any help / idea might be helpful! As
Trinidad claims to be JSR-168 compliant, I expect the flaw to be in my
configuration files.. Has anyone got a working example of Trinidad running
in a portlet?

In the meantime I tried a few more things:
- Adding a configuration parameter <output-mode>portlet</output-mode> to
trinidad-config.xml; doesn't change anything.
- Removing Tomahawk; same thing.
- Specifically set the render-type of the Trinidad components: exception
saying "Render context missing". 
- Change the user agent (which is unknown in both IE and Firefox) at runtime
to "Mozilla". --> User agent error disappears, but the render errors
remain...

Thanks a lot!!

Cheers
-Lorin


-----Original Message-----
From: Schoop Lorin ([EMAIL PROTECTED]) [mailto:[EMAIL PROTECTED] 
Sent: Sunday, October 28, 2007 2:24 PM
To: users@myfaces.apache.org
Subject: [Trinidad] Component renderer cannot be found in portal context

Hello

I'd like to use Trinidad 1.0.3 in a portal application (Liferay 4.2.1 +
JBOSS 4.0.4GA). Other portlets use MyFaces 1.1.5 + Tomahawk 1.1.6. Facelet
is not being used so far.

I've setup a simple portlet with a button which increments a counter value
using PPR.

When I run the example, I get the following error:


13:14:54,968 ERROR [STDERR] 28.10.2007 13:14:54
org.apache.myfaces.trinidadinternal.agent.AgentFactoryImpl
_populateUnknownAgentImpl

WARNING: The User-Agent "null" is unknown; creating an agent with "unknown"
agent attributes.

13:14:55,281 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreDocument[UIXFacesBeanImpl,
id=trinidadDoc] rendererType = org.apache.myfaces.trinidad.Document

13:14:55,281 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreDocument[UIXFacesBeanImpl,
id=trinidadDoc] rendererType = org.apache.myfaces.trinidad.Document

13:14:55,375 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreForm[UIXFacesBeanImpl,
id=trinidadForm] rendererType = org.apache.myfaces.trinidad.Form

13:14:55,375 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreForm[UIXFacesBeanImpl,
id=trinidadForm] rendererType = org.apache.myfaces.trinidad.Form

13:14:55,375 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreCommandButton[UIXFacesBeanImpl,
id=counterButton] rendererType = org.apache.myfaces.trinidad.Button

13:14:55,375 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreCommandButton[UIXFacesBeanImpl,
id=counterButton] rendererType = org.apache.myfaces.trinidad.Button

13:14:55,375 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreOutputText[UIXFacesBeanImpl,
id=_id14d23f80] rendererType = org.apache.myfaces.trinidad.Text

13:14:55,406 ERROR [STDERR] 28.10.2007 13:14:55
org.apache.myfaces.trinidad.component.UIXComponentBase _getRendererImpl

WARNING: Could not find renderer for CoreOutputText[UIXFacesBeanImpl,
id=_id14d23f80] rendererType = org.apache.myfaces.trinidad.Text





I think PPR is not the problem. I tried a different example without
partialSubmit / partialTriggers attributes: same errors.

Extracts of the related files are attached below.



I appreciate your help very much!! Thanks in advance!



Regards,

-Lorin





****************************************************************************
*

TrinidadTest.jsp  >>>


<%@ page session="false" contentType="text/html; charset=ISO-8859-1"%>

<%@ taglib uri="http://java.sun.com/jsf/core"; prefix="f"%>

<%@ taglib uri="http://java.sun.com/portlet"; prefix="portlet"%>

<%@ taglib uri="http://myfaces.apache.org/trinidad"; prefix="tr"%>

<portlet:defineObjects />

<link rel="stylesheet" type="text/css"

href="<%= renderResponse.encodeURL(renderRequest.getContextPath() +
"/css/basic.css") %>" />

<f:view>

<tr:document id="trinidadDoc">

<TITLE>Order Entry</TITLE>

<tr:form id="trinidadForm">

<tr:commandButton text="Increment Counter" id="counterButton"

partialSubmit="true" actionListener="#{trinidadTestBean.increment}" />

<tr:outputText value="#{trinidadTestBean.counter}"
partialTriggers="counterButton" />

</tr:form>

</tr:document>

</f:view>



****************************************************************************
*

TrinidadTestBean.java  >>>


package test;

import javax.faces.event.ActionEvent;

public class TrinidadTestBean {

private int counter = 0;

public void increment(ActionEvent event)

{

// Change the text value

counter++;

}

public int getCounter() {

return counter;

}

public void setCounter(int counter) {

this.counter = counter;

}

}



****************************************************************************
*

web.xml >>>


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";>

<web-app id="WebApp_ID">

<display-name>testPortalApp</display-name>

<context-param>

<param-name>company_id</param-name>

<param-value>liferay.com</param-value>

</context-param>

<context-param>

<param-name>javax.faces.CONFIG_FILES</param-name>

<param-value>/WEB-INF/faces-config.xml</param-value>

</context-param>

<context-param>

<param-name>com.sun.faces.validateXml</param-name>

<param-value>true</param-value>

</context-param>

<context-param>

<param-name>javax.faces.STATE_SAVING_METHOD</param-name>

<param-value>server</param-value>

</context-param>

<context-param>

<param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>

<param-value>true</param-value>

</context-param>

<context-param>

<param-name>org.apache.myfaces.PRETTY_HTML</param-name>

<param-value>true</param-value>

</context-param>

<context-param>

<param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>

<param-value>false</param-value>

</context-param>

<context-param>

<param-name>org.apache.myfaces.AUTO_SCROLL</param-name>

<param-value>true</param-value>

</context-param>

<filter>

<filter-name>trinidad</filter-name>

<filter-class>

org.apache.myfaces.trinidad.webapp.TrinidadFilter

</filter-class>

</filter>

<filter-mapping>

<filter-name>trinidad</filter-name>

<servlet-name>TrinidadTestPortlet</servlet-name>

</filter-mapping>

<listener>

<listener-class>

com.liferay.portal.kernel.servlet.PortletContextListener

</listener-class>

</listener>

<listener>

<listener-class>

org.apache.myfaces.webapp.StartupServletContextListener

</listener-class>

</listener>

<!-- resource loader servlet -->

<servlet>

<servlet-name>resources</servlet-name>

<servlet-class>

org.apache.myfaces.trinidad.webapp.ResourceServlet

</servlet-class>

</servlet>

<servlet>

<servlet-name>TrinidadTestPortlet</servlet-name>

<servlet-class>

com.liferay.portal.kernel.servlet.PortletServlet

</servlet-class>

<init-param>

<param-name>portlet-class</param-name>

<param-value>

org.apache.portals.bridges.jsf.FacesPortlet

</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>resources</servlet-name>

<url-pattern>/adf/*</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>TrinidadTestPortlet</servlet-name>

<url-pattern>/TrinidadTestPortlet/*</url-pattern>

</servlet-mapping>



<taglib id="LiferayTLD">

<taglib-uri>http://java.sun.com/portlet</taglib-uri>

<taglib-location>

/WEB-INF/tld/liferay-portlet.tld

</taglib-location>

</taglib>

</web-app>



****************************************************************************
*

trinidad-config.xml >>>



<?xml version="1.0"?>

<trinidad-config xmlns="http://myfaces.apache.org/trinidad/config";>

<!-- Enable debug output -->

<debug-output>true</debug-output>

<!-- Pick accessibility options based on a per-user managed bean -->

<accessibility-mode>default</accessibility-mode>

<client-validation>INLINE</client-validation>

<skin-family>minimal</skin-family>

</trinidad-config>





****************************************************************************
*

faces-config.xml >>>


<?xml version="1.0"?>

<!DOCTYPE faces-config PUBLIC

"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"

"http://java.sun.com/dtd/web-facesconfig_1_0.dtd";>

<!--

Copyright 2003 Sun Microsystems, Inc. All rights reserved.

SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.

-->

<!-- =========== FULL CONFIGURATION FILE ==================================
-->

<faces-config>

<component>

<component-type>org.apache.myfaces.HtmlPanelNavigationMenu</component-type>

<component-class>org.apache.myfaces.custom.navmenu.htmlnavmenu.HtmlPanelNavi
gationMenu</component-class>

</component>

<component>

<component-type>org.apache.myfaces.HtmlCommandSortHeader</component-type>

<component-class>org.apache.myfaces.custom.sortheader.HtmlCommandSortHeader<
/component-class>

</component>

<application>

<default-render-kit-id>

org.apache.myfaces.trinidad.core

</default-render-kit-id>

</application>

<render-kit>

<render-kit-id>HTML_BASIC</render-kit-id>

<renderer>

<component-family>javax.faces.Panel</component-family>

<renderer-type>org.apache.myfaces.NavigationMenu</renderer-type>

<renderer-class>org.apache.myfaces.custom.navmenu.htmlnavmenu.HtmlNavigation
MenuRenderer</renderer-class>

</renderer>

<renderer>

<component-family>javax.faces.Command</component-family>

<renderer-type>org.apache.myfaces.SortHeader</renderer-type>

<renderer-class>org.apache.myfaces.custom.sortheader.HtmlSortHeaderRenderer<
/renderer-class>

</renderer>

</render-kit>

<managed-bean>

<managed-bean-name>trinidadTestBean</managed-bean-name>

<managed-bean-class>test.TrinidadTestBean</managed-bean-class>

<managed-bean-scope>session</managed-bean-scope>

</managed-bean>

</faces-config>





Reply via email to