You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-user@portals.apache.org by Lyn Büsching <bu...@lat-lon.de> on 2007/08/13 17:16:46 UTC

JSF (MyFaces, Tomahawk, Sandbox) & Apache Pluto & Apache Portlet Bridge for JSF

Hi!

I have some Problems to configure a webapplication using
MyFaces/Tomahawk and Sandbox, Apache Pluto with Portlet Bridge for JSF.

Does anyone have experiences with this combination and can help?

I tried the following Version:
MyFaces 1.1.5
Tomahawk 1.1.7 (SNAPSHOT),
Sandbox 1.1.7 (SNAPSHOT),
Pluto 1.1.4,
Portlet Bridge 1.03

The problems occurs with using components using Ajax supported
(Sandbox:pprPanelGroup)alternativly in the configuration of the
extensionFilters in the web.xml.

The web.xml looks as follows:
----------------------------------------------------------------
<?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>
	<display-name>Apache Pluto Portal Driver</display-name>
	<context-param>
		<param-name>javax.faces.CONFIG_FILES</param-name>
		<param-value>/WEB-INF/examples-config.xml</param-value>
	</context-param>
	<context-param>
		<param-name>contextConfigLocation</param-name>
	
<param-value>/WEB-INF/pluto-portal-driver-services-config.xml</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>false</param-value>
	</context-param>
	<context-param>
		<param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
		<param-value>true</param-value>
	</context-param>

	<!-- ### filter ### -->
	<!-- jsf -->
	<filter>
		<filter-name>extensionsFilter</filter-name>
	
<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
		<init-param>
			<param-name>uploadMaxFileSize</param-name>
			<param-value>100m</param-value>
			<description>
				Set the size limit for uploaded files. Format: 10 - 10 bytes 10k -
10 KB 10m - 10 MB 1g - 1 GB
			</description>
		</init-param>
		<init-param>
			<param-name>uploadThresholdSize</param-name>
			<param-value>100k</param-value>
			<description>
				Set the threshold size - files below this limit are stored in
memory, files above this limit are stored
				on disk. Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
			</description>
		</init-param>
	</filter>
	<!-- jsf end -->
	<!-- pluto -->
	<filter>
		<filter-name>plutoPortalDriver</filter-name>
		<filter-class>org.apache.pluto.driver.PortalDriverFilter</filter-class>
	</filter>
	<!-- pluto end-->

	<!-- ###  filter-mapping ### -->
	<!-- jsf -->
	<filter-mapping>
		<filter-name>extensionsFilter</filter-name>
		<url-pattern>*.jsf</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>extensionsFilter</filter-name>
		<url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
	</filter-mapping>
	<!-- jsf end-->
	<!-- pluto -->
	<filter-mapping>
		<filter-name>plutoPortalDriver</filter-name>
		<url-pattern>/about.jsp</url-pattern>
	</filter-mapping>
	<!-- pluto end -->

	<!-- ### listener ### -->
	<listener>
	
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
	</listener>
	<listener>
	
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<listener>
	
<listener-class>org.apache.pluto.driver.PortalStartupListener</listener-class>
	</listener>

	<!-- ### servlets ### -->
	<!-- jsf -->
	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<!-- jsf end -->
	<!-- pluto -->
	<servlet>
		<servlet-name>plutoPortalDriver</servlet-name>
		<display-name>Pluto Portal Driver</display-name>
		<description>Pluto Portal Driver Controller</description>
		<servlet-class>org.apache.pluto.driver.PortalDriverServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>plutoPortalDriverLogout</servlet-name>
		<display-name>Pluto Portal Driver</display-name>
		<description>Pluto Portal Driver Logout</description>
	
<servlet-class>org.apache.pluto.driver.PortalDriverLogoutServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>portletApplicationPublisher</servlet-name>
		<display-name>Portlet Application Publisher</display-name>
		<description>Portlet Application Publisher Service</description>
		<servlet-class>org.apache.pluto.driver.PublishServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>tckDriver</servlet-name>
		<display-name>Pluto TCK Driver</display-name>
		<description>Pluto TCK Driver Controller</description>
		<servlet-class>org.apache.pluto.driver.TCKDriverServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>AboutPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>AboutPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>AdminPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>AdminPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>PlutoPageAdmin</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>PlutoPageAdmin</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>JSPPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>JSPPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<!-- pluto end-->
	<!-- portlets-->
	<servlet>
		<servlet-name>WMSPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>WMSPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>SquareResultPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>SquareResultPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>SquarePortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>SquarePortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>AjaxTestPortlet</servlet-name>
		<servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
		<init-param>
			<param-name>portlet-name</param-name>
			<param-value>AjaxTestPortlet</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<!-- portlets end -->

	<!-- ### servlet-mapping ### -->
	<!-- jsf -->
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>*.jsf</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>/faces/*</url-pattern>
	</servlet-mapping>
	<!-- jsf end -->
	<!-- pluto -->
	<servlet-mapping>
		<servlet-name>plutoPortalDriver</servlet-name>
		<url-pattern>/portal/*</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>plutoPortalDriverLogout</servlet-name>
		<url-pattern>/Logout</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>portletApplicationPublisher</servlet-name>
		<url-pattern>/admin/Publish</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>tckDriver</servlet-name>
		<url-pattern>/tck/*</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>AboutPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/AboutPortlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>AdminPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/AdminPortlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>PlutoPageAdmin</servlet-name>
		<url-pattern>/PlutoInvoker/PlutoPageAdmin</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>JSPPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/JSPPortlet</url-pattern>
	</servlet-mapping>
	<!-- pluto -->
	<!-- portlets -->
	<servlet-mapping>
		<servlet-name>WMSPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/WMSPortlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>SquareResultPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/SquareResultPortlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>SquarePortlet</servlet-name>
		<url-pattern>/PlutoInvoker/SquarePortlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>AjaxTestPortlet</servlet-name>
		<url-pattern>/PlutoInvoker/AjaxTestPortlet</url-pattern>
	</servlet-mapping>
	<!-- portlets end -->

	<!-- ### taglib ### -->
	<taglib>
		<taglib-uri>http://java.sun.com/portlet</taglib-uri>
		<taglib-location>/WEB-INF/tld/portlet.tld</taglib-location>
	</taglib>
	<taglib>
		<taglib-uri>http://portals.apache.org/pluto/portlet-el</taglib-uri>
		<taglib-location>/WEB-INF/tld/portlet-el.tld</taglib-location>
	</taglib>
	<taglib>
		<taglib-uri>http://portals.apache.org/pluto</taglib-uri>
		<taglib-location>/WEB-INF/tld/pluto.tld</taglib-location>
	</taglib>
	<!--
		<security-constraint>
		<web-resource-collection>
		<web-resource-name>portal</web-resource-name>
		<url-pattern>/portal</url-pattern>
		<url-pattern>/portal/*</url-pattern>
		<http-method>GET</http-method>
		<http-method>POST</http-method>
		<http-method>PUT</http-method>
		</web-resource-collection>
		<auth-constraint>
		<role-name>pluto</role-name>
		</auth-constraint>
		</security-constraint>
		
		<login-config>
		<auth-method>FORM</auth-method>
		<form-login-config>
		<form-login-page>/login.jsp</form-login-page>
		<form-error-page>/login.jsp?error=1</form-error-page>
		</form-login-config>
		</login-config>
		
		<security-role>
		<role-name>pluto</role-name>
		</security-role>
	-->
</web-app>
----------------------------------------------------------------------------

Does anyone have an idea what's wrong? Maybe someone have a working
configuration???

Thank you very much!!

Lyn












-- 
Lyn Büsching

l a t / l o n  GmbH
Aennchenstrasse 19            53177 Bonn, Germany
phone ++49 +228 18496-0       fax ++49 +228 18496-29
http://www.lat-lon.de         http://www.deegree.org


Re: JSF (MyFaces, Tomahawk, Sandbox) & Apache Pluto & Apache Portlet Bridge for JSF

Posted by MarineW <ma...@gmail.com>.
Hello,

I also have a problem with Tomahawk ExtensionsFilter.

My Webapp works well as a standalone application. But when I use it as a
portlet (in Liferay Portal) with Apoche Portals JSF bridge, the
ExtensionFilter does not work correctly :

16:09:21,609 ERROR [liferay.portlet.PortletRequestDispatcherImpl]
org.apache.jasper.JasperException:
ExtensionsFilter not correctly configured. JSF mapping missing. JSF pages
not covered. Please see:
http://myfaces.apache.org/tomahawk/extensionsFilter.html
org.apache.jasper.JasperException: ExtensionsFilter not correctly
configured. JSF mapping missing. JSF pages not covered. Please see:
http://myfaces.apache.org/tomahawk/extensionsFilter.html
       at
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:476)


Here is my web.xml file :

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" 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>my-webapp</display-name>

	<context-param>
         (...)
	</context-param>

	<!-- DEBUT DECLARATIONS FILTRES -->

	<filter>
		<filter-name>MyFacesExtensionsFilter</filter-name>
		<filter-class>
			org.apache.myfaces.webapp.filter.ExtensionsFilter
		</filter-class>
		<init-param>
			<description>
				Set the size limit for uploaded files. Format: 10 - 10
				bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
			</description>
			<param-name>uploadMaxFileSize</param-name>
			<param-value>100m</param-value>
		</init-param>
		<init-param>
			<description>
				Set the threshold size - files below this limit are
				stored in memory, files above this limit are stored on
				disk.

				Format: 10 - 10 bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
			</description>
			<param-name>uploadThresholdSize</param-name>
			<param-value>100k</param-value>
		</init-param>
	</filter>
	
	<filter-mapping>
		<filter-name>MyFacesExtensionsFilter</filter-name>
		<url-pattern>*.jsf</url-pattern>
	</filter-mapping>
	
	<filter-mapping>
		<filter-name>MyFacesExtensionsFilter</filter-name>
		<url-pattern>/faces/*</url-pattern>
	</filter-mapping>

	<filter-mapping>
		<filter-name>MyFacesExtensionsFilter</filter-name>
		<url-pattern>/faces/myFacesExtensionResource/*</url-pattern>
	</filter-mapping>
	
	<!-- FIN DECLARATIONS FILTRES -->


	<!-- DEBUT DECLARATIONS SERVLETS -->

	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>/faces/*</url-pattern>
	</servlet-mapping>

	<!-- FIN DECLARATIONS SERVLETS -->

	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
		<welcome-file>index.htm</welcome-file>
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>default.html</welcome-file>
		<welcome-file>default.htm</welcome-file>
		<welcome-file>default.jsp</welcome-file>
	</welcome-file-list>

	<listener>
		<listener-class>
			org.apache.myfaces.webapp.StartupServletContextListener
		</listener-class>
	</listener>

</web-app>


Any idea about this ?
Thanks.
-- 
View this message in context: http://www.nabble.com/JSF-%28MyFaces%2C-Tomahawk%2C-Sandbox%29----Apache-Pluto---Apache-Portlet-Bridge-for-JSF-tf4261856.html#a12452968
Sent from the Pluto - User mailing list archive at Nabble.com.