[richfaces-issues] RenderResponseImpl.setHeader ERROR on Liferay 4.3.4

barthchristian at arcor.de barthchristian at arcor.de
Thu Feb 7 03:28:36 EST 2008


Hi!

We are trying to use Icefaces with Liferay-Portal 4.3.4 on JBoss AS 4.2.2.

We use Sun RI of JSF with the appropriate portal-bridge.

For testing RichFaces, I edited an existing Portlet and added the ToolTip that is evaluated on the server.

When entering the Portal, everything seems to be working. But when I move the mouse over the Tooltip area, the complete page is reloaded and the message that should be displayed in the tooltip is rendered into the portlet.
The Server-log shows the following error:
Code:

ERROR [AjaxRendererUtils] Detecting request character encoding is disable.
17:40:30,593 ERROR [AjaxRendererUtils] Failed to obtain Response#setHeader() method: java.lang.NoSuc
hMethodException: com.liferay.portlet.RenderResponseImpl.setHeader(java.lang.String, java.lang.Strin
g)
	



Our web.xml:

<?xml version="1.0"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<display-name>SOPortletCustomer</display-name>
	<context-param>
		<param-name>company_id</param-name>
		<param-value>godesys.de</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.DETECT_JAVASCRIPT</param-name>
		<param-value>false</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.AUTO_SCROLL</param-name>
		<param-value>true</param-value>
	</context-param>

	<filter>
		<filter-name>utf-8</filter-name>
		<filter-class>
			com.godesys.web.filter.SetEncodingFilter
		</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>utf-8</filter-name>
		<url-pattern>*.jsf</url-pattern>
	</filter-mapping>

	<listener>
		<listener-class>
			com.liferay.util.bridges.jsf.sun.LiferayConfigureListener
		</listener-class>
	</listener>

	
	<context-param>
        <param-name>org.richfaces.SKIN</param-name>
        <param-value>blueSky</param-value>
    </context-param>

    <filter> 
        <display-name>RichFaces Filter</display-name> 
        <filter-name>richfaces</filter-name>
        <filter-class>org.ajax4jsf.Filter</filter-class> 
    </filter> 
    
    <filter-mapping> 
        <filter-name>richfaces</filter-name> 
        <servlet-name>Faces Servlet</servlet-name>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>INCLUDE</dispatcher>
    </filter-mapping>
    
    <filter-mapping> 
        <filter-name>richfaces</filter-name> 
        <url-pattern>/*</url-pattern>
    </filter-mapping>
	
	<servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- extension mapping -->
    <servlet-mapping>
    	<servlet-name>Faces Servlet</servlet-name>
    	<url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
	

	<taglib>
		<taglib-uri>http://richfaces.org/rich</taglib-uri>
		<taglib-location>/WEB-INF/rich.tld</taglib-location>
	</taglib>

	<login-config>
		<auth-method>BASIC</auth-method>
	</login-config>

</web-app>
	



Our faces-config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
                              "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config>
	<component>
		<component-type>PORTLET_MENU_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuComponent</component-class>
	</component>
	<component>
		<component-type>PORTLET_MENU_ELEMENT_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuElementComponent</component-class>
	</component>
	<component>
		<component-type>PORTLET_MENU_LIST_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuListComponent</component-class>
	</component>
	<component>
		<component-type>PORTLET_MENU_LIST_ELEMENT_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuListElementComponent</component-class>
	</component>
	<component>
		<component-type>PORTLET_MENU_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuComponent</component-class>
	</component>
	<component>
		<component-type>PORTLET_MENU_LIST_TRIGGER_COMPONENT</component-type>
		<component-class>com.godesys.web.faces.component.PortletMenuListTriggerComponent</component-class>
	</component>
	<component>
		<component-type>PortletNonFacesURL</component-type>
		<component-class>
			com.godesys.web.faces.component.PortletNonFacesLinkComponent
		</component-class>
	</component>
	<component>
		<component-type>PortletTab</component-type>
		<component-class>
			com.godesys.web.faces.component.PortletTabComponent
		</component-class>
	</component>
	<component>
		<component-type>PortletTabElement</component-type>
		<component-class>
			com.godesys.web.faces.component.PortletTabElementComponent
		</component-class>
	</component>
	<component>
		<component-type>PortletTabActivate</component-type>
		<component-class>
			com.godesys.web.faces.component.PortletTabActivateComponent
		</component-class>
	</component>
	<component>
		<component-type>TruncateTextConverter</component-type>
		<component-class>
			com.godesys.web.faces.component.TruncateTextConverterComponent
		</component-class>
	</component>
	<component>
		<component-type>FusionChart</component-type>
		<component-class>
			com.godesys.web.faces.component.FusionChartComponent
		</component-class>
	</component>
	<component>
		<component-type>FusionChartParameter</component-type>
		<component-class>
			com.godesys.web.faces.component.FusionChartParameterComponent
		</component-class>
	</component>
	<converter>
		<converter-id>TextFormatter</converter-id>
		<converter-class>
			com.godesys.web.converter.FormattedTextConverter
		</converter-class>
	</converter>
	<converter>
		<converter-id>TruncateTextConverter</converter-id>
		<converter-class>
			com.godesys.web.converter.TruncateTextConverter
		</converter-class>
	</converter>
	<managed-bean>
		<managed-bean-name>customerListBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerListBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerSearchBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerSearchBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>orderBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerOrderBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerEditBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerEditBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerGlobData</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerGlobData
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerRightsBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerRightsBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerErrorBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.web.util.WebExceptionBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>projectViewBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerProjectsBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerToolbar</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerToolbarManagementBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>partnerListBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerPartnersBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>appointmentListBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerAppointmentsBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<managed-bean>
		<managed-bean-name>customerStatisticBean</managed-bean-name>
		<managed-bean-class>
			com.godesys.crm.web.CustomerSalesStatisticBean
		</managed-bean-class>
		<managed-bean-scope>application</managed-bean-scope>
	</managed-bean>
	<navigation-rule>
		<navigation-case>
			<from-outcome>error</from-outcome>
			<to-view-id>/customer/CustomerError.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>search</from-outcome>
			<to-view-id>/customer/CustomerSearch.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>list</from-outcome>
			<to-view-id>/customer/CustomerList.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>adressChart</from-outcome>
			<to-view-id>
				/customer/CustomerAdressStatistic.jsp
			</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<display-name>list</display-name>
		<from-view-id>/customer/CustomerList.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectCustomer</from-outcome>
			<to-view-id>/customer/CustomerDetail.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>/customer/CustomerAppointments.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectCustomer</from-outcome>
			<to-view-id>/customer/CustomerAppointments.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>/customer/CustomerPartner.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectCustomer</from-outcome>
			<to-view-id>/customer/CustomerPartner.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>/customer/CustomerPartnerDetail.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectCustomer</from-outcome>
			<to-view-id>/customer/CustomerPartner.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>/customer/CustomerOrder.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectCustomer</from-outcome>
			<to-view-id>/customer/CustomerOrder.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>showOrders</from-outcome>
			<to-view-id>/customer/CustomerOrder.jsp</to-view-id>
		</navigation-case>		
	</navigation-rule>
	<navigation-rule>
		<display-name>edit</display-name>
		<from-view-id>/customer/CustomerDetail.jsp</from-view-id>
	</navigation-rule>
	<navigation-rule>
		<display-name>error</display-name>
		<from-view-id>/customer/CustomerError.jsp</from-view-id>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>/customer/CustomerPartner.jsp</from-view-id>
		<navigation-case>
			<from-outcome>selectPartner</from-outcome>
			<to-view-id>/customer/CustomerPartnerDetail.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<navigation-rule>
		<from-view-id>*</from-view-id>
		<navigation-case>
			<from-outcome>search</from-outcome>
			<to-view-id>/customer/CustomerSearch.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>list</from-outcome>
			<to-view-id>/customer/CustomerList.jsp</to-view-id>
		</navigation-case>
		<navigation-case>
			<from-outcome>adressStatistic</from-outcome>
			<to-view-id>/customer/CustomerAdressStatistic.jsp</to-view-id>
		</navigation-case>
		
	</navigation-rule>
	<render-kit>
		<renderer>
			<component-family>com.godesys.PortletMenu</component-family>
			<renderer-type>PORTLET_MENU_RENDERER</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.PortletMenuRenderer
			</renderer-class>
		</renderer>
		<renderer>
			<component-family>PortletNonFacesURL</component-family>
			<renderer-type>PortletNonFacesURL</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.PortletNonFacesLinkRenderer
			</renderer-class>
		</renderer>
		<renderer>
			<component-family>PortletTab</component-family>
			<renderer-type>PortletTab</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.PortletTabRenderer
			</renderer-class>
		</renderer>
		<renderer>
			<component-family>PortletTabActivate</component-family>
			<renderer-type>PortletTabActivate</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.PortletTabActivateRenderer
			</renderer-class>
		</renderer>
		<renderer>
			<component-family>TruncateTextConverter</component-family>
			<renderer-type>TruncateTextConverter</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.TruncateTextConverterRenderer
			</renderer-class>
		</renderer>
		<renderer>
			<component-family>FusionChart</component-family>
			<renderer-type>FusionChart</renderer-type>
			<renderer-class>
				com.godesys.web.faces.renderer.FusionChartRenderer
			</renderer-class>
		</renderer>
	</render-kit>

	<application>
		<locale-config>
			<default-locale>DE</default-locale>
			<supported-locale>de</supported-locale>
			<supported-locale>en</supported-locale>
			<supported-locale>en_US</supported-locale>
			<supported-locale>de_de</supported-locale>
		</locale-config>
		<message-bundle>
			com.godesys.customer.web.messages.MessageResources
		</message-bundle>
	</application>
</faces-config>

We'd be really happy about any suggestions.

Thanks,
barthi



More information about the richfaces-issues mailing list