« Return to Thread: Myfaces Portlet Bridge error on deploy

Re: Myfaces Portlet Bridge error on deploy

by Michael Freedman-2 :: Rate this Message:

Reply to Author | View in Thread

The actual problem is that Liferay (like most portals that run portlets locally) uses the request dispatcher to invoke the portlet.  Faces has code to resolve the target view from the request path, starting first with the path values set by the request dispatcher for these included references.  I.e. Faces looks for the target in the wrong path -- the one the Liferay portal uses internally to reference the portlet.  Kito is correct that versions of Mojarra prior to the yet to be released 1.2_13 componded this issue by having some servlet dependencies but that isn't really the issue here (as you saw in hitting this problem with MyFaces as well).  The needed fix is to ignore the javax.servlet.include.pathInfo and javax.servlet.include.servletPath attributes when running in a portlet request.  Mojarra 1.2_13 has been changed to not reference these attributes when running in a portlet request -- hence will work with the bridge.  The main trunk of the bridge has also been updated to try and fix this problem for all environment.  It now removes these attributes from the request for the duration of the FacesContext (and restores them on release).  Unfortunately, Liferay appears to have a bug in it that prevents the removal of these attributes.  So for the moment you must use (as Kito says) the latest (nightly) Mojarra to work around this problem.
   -Mike-

Kito Mann wrote:
Hello Prelag,

I ran into this recently using Liferay 5.22 on Tomcat 6 with the MyFaces Portlet Bridge 1.0 and Mojarra 1.2_12. The bottom line is that you should probably just uset he Liferay JSF portlet bridge for now, and switch to 301 in a couple of months.

If you have some time on your hands, though, you can take my route. I was able to get things working by using Liferay 5.23, the nightly build of the portlet bridge, and the nightly build of Mojarra 1.2 -- all of them have patches (from Neil Griffin) which deal with these issues. Basically, Mojarra has servlet dependencies that cause the problem. I'm guessing that MyFaces 1.2.6 has the same issues.

Here was my initial bug report: http://issues.liferay.com/browse/LPS-3521. There's a corresponding bug report for the bridge here: https://issues.apache.org/jira/browse/PORTLETBRIDGE-77. I don't think there's a bug report for the Mojarra issue, but the patches are in the trunk.

---
Kito D. Mann -- Author, JavaServer Faces in Action
http://twitter.com/kito99  http://twitter.com/jsfcentral
http://www.virtua.com - JSF/Java EE consulting, training, and mentoring
http://www.JSFCentral.com - JavaServer Faces FAQ, news, and info
+1 203-404-4848 x3


On Sat, Jun 20, 2009 at 3:36 PM, prelag <prelag@...> wrote:

First is the stacktrace, followed by the web and portlet.xml.
Using: myfaces 1.2.6, bridge 2.0.0
same issue with myfaces bridge 1.0.0
deploy on liferay portal on tomcat 6

its a simple portlet that does absolutely nothing but say hi

Stacktrace:
19:27:51,512 ERROR [PortletRequestDispatcherImpl:316]
javax.servlet.ServletException: File &quot;/invoke.jsp&quot; not found
javax.servlet.ServletException: File &quot;/invoke.jsp&quot; not found
       at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:319)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:307)
       at
com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:107)
       at
org.apache.myfaces.portlet.faces.context.PortletExternalContextImpl.dispatch(PortletExternalContextImpl.java:769)
       at
org.apache.myfaces.portlet.faces.application.PortletViewHandlerImpl.dispatchPageToBuildView(PortletViewHandlerImpl.java:378)
       at
org.apache.myfaces.portlet.faces.application.PortletViewHandlerImpl.renderView(PortletViewHandlerImpl.java:263)
       at
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
       at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
       at
org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRender(BridgeImpl.java:911)
       at
org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRequest(BridgeImpl.java:752)
       at
javax.portlet.faces.GenericFacesPortlet.doBridgeDispatch(GenericFacesPortlet.java:580)
       at
javax.portlet.faces.GenericFacesPortlet.doRenderDispatchInternal(GenericFacesPortlet.java:532)
       at
javax.portlet.faces.GenericFacesPortlet.doView(GenericFacesPortlet.java:246)
       at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:328)
       at
javax.portlet.faces.GenericFacesPortlet.doDispatch(GenericFacesPortlet.java:217)
       at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
       at
com.sun.portal.portletcontainer.appengine.filter.FilterChainImpl.doFilter(FilterChainImpl.java:126)
       at
com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69)
       at
com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:100)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
       at
com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:700)
       at
com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:419)
       at
org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown
Source)
       at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
       at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:2884)
       at
com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:897)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:170)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:103)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:281)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:190)
       at
org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(Unknown
Source)
       at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
       at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:294)
       at
com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:471)
       at
com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:195)
       at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
       at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
       at
com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:157)
       at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
       at
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
       at
com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:608)
       at
com.liferay.portal.servlet.MainServlet.service(MainServlet.java:846)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
       at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
       at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
       at
com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:143)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:142)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:140)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:282)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.cache.CacheFilter.processFilter(CacheFilter.java:425)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:257)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:193)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:191)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.threadlocalcache.ThreadLocalCacheFilter.processFilter(ThreadLocalCacheFilter.java:55)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
       at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
       at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
       at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
       at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
       at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
       at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
       at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
       at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
       at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
       at java.lang.Thread.run(Thread.java:619)
19:27:51,518 ERROR [PortletServlet:104] javax.portlet.PortletException:
doBridgeDispatch failed:  error from Bridge in executing the request
javax.portlet.PortletException: doBridgeDispatch failed:  error from Bridge
in executing the request
       at
javax.portlet.faces.GenericFacesPortlet.doBridgeDispatch(GenericFacesPortlet.java:583)
       at
javax.portlet.faces.GenericFacesPortlet.doRenderDispatchInternal(GenericFacesPortlet.java:532)
       at
javax.portlet.faces.GenericFacesPortlet.doView(GenericFacesPortlet.java:246)
       at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:328)
       at
javax.portlet.faces.GenericFacesPortlet.doDispatch(GenericFacesPortlet.java:217)
       at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
       at
com.sun.portal.portletcontainer.appengine.filter.FilterChainImpl.doFilter(FilterChainImpl.java:126)
       at
com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:69)
       at
com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:100)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
       at
com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:700)
       at
com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:419)
       at
org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(Unknown
Source)
       at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
       at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:2884)
       at
com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:897)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:170)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:103)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:281)
       at
com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:190)
       at
org.apache.jsp.html.portal.layout.view.portlet_jsp._jspService(Unknown
Source)
       at
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
       at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:535)
       at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:472)
       at
com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:294)
       at
com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:471)
       at
com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:195)
       at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
       at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
       at
com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:157)
       at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
       at
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
       at
com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:608)
       at
com.liferay.portal.servlet.MainServlet.service(MainServlet.java:846)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
       at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
       at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
       at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
       at
com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:143)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:142)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.gzip.GZipFilter.processFilter(GZipFilter.java:140)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:282)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.cache.CacheFilter.processFilter(CacheFilter.java:425)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:257)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.sso.opensso.OpenSSOFilter.processFilter(OpenSSOFilter.java:73)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:193)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.doFilter(VirtualHostFilter.java:191)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.servlet.filters.threadlocalcache.ThreadLocalCacheFilter.processFilter(ThreadLocalCacheFilter.java:55)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:91)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:154)
       at
com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:94)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
       at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
       at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
       at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
       at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
       at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
       at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
       at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
       at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
       at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
       at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
       at java.lang.Thread.run(Thread.java:619)
Caused by: javax.portlet.faces.BridgeException:
javax.servlet.ServletException: File &quot;/invoke.jsp&quot; not found
       at
org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRequest(BridgeImpl.java:772)
       at
javax.portlet.faces.GenericFacesPortlet.doBridgeDispatch(GenericFacesPortlet.java:580)
       ... 139 more

portlet.xml

<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd
http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" version="2.0">

   <portlet>
       <description>MyFaces Portlet Bridge Tempate Portlet</description>
       <portlet-name>portlet-bridge-blank</portlet-name>
       <display-name>MyFaces Portlet Bridge Template</display-name>

<portlet-class>javax.portlet.faces.GenericFacesPortlet</portlet-class>

       <init-param>
           <name>javax.portlet.faces.defaultViewId.view</name>
           <value>/index.jsp</value>
       </init-param>

       <supports>
           <mime-type>text/html</mime-type>
           <portlet-mode>view</portlet-mode>
       </supports>

       <supported-locale>en</supported-locale>

       <portlet-info>
           <title>MyFaces Portlet Bridge Template</title>
           <short-title>Bridge Template</short-title>
       </portlet-info>
   </portlet>
</portlet-app>

web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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" version="2.4">
   <description>Standard MyFaces Example xml file</description>
  <!-- <context-param>
       <description>Comma separated list of URIs of (additional) faces
config files.
           (e.g. /WEB-INF/my-config.xml)
           See JSF 1.0 PRD2, 10.3.2
           Attention: You do not need to put /WEB-INF/faces-config.xml in
here.

           THESE ARE NOT REQUIRED!!!
       </description>
        <param-name>javax.faces.CONFIG_FILES</param-name>

<param-value>/WEB-INF/examples-config.xml,/WEB-INF/testSuite-config.xml</param-value>
   </context-param>

   -->

   <context-param>
       <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
       <param-value>.jsp</param-value>
   </context-param>

   <context-param>
       <description>State saving method: "client" or "server" (= default)
           See JSF Specification 2.5.3
       </description>
       <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
       <param-value>server</param-value>
   </context-param>

   <context-param>
       <description>Only applicable if state saving method is "server" (=
default).
           Defines the amount (default = 20) of the latest views are stored
in session.
       </description>

<param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
       <param-value>20</param-value>
   </context-param>

   <context-param>
       <description>Only applicable if state saving method is "server" (=
default).
           If true (default) the state will be serialized to a byte stream
before it
           is written to the session.
           If false the state will not be serialized to a byte stream.
       </description>

<param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
       <param-value>true</param-value>
   </context-param>

   <context-param>
       <description>Only applicable if state saving method is "server" (=
default) and if
           org.apache.myfaces.SERIALIZE_STATE_IN_SESSION is true (=
default)
           If true (default) the serialized state will be compressed before
it
           is written to the session. If false the state will not be
compressed.
       </description>

<param-name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</param-name>
       <param-value>true</param-value>
   </context-param>

   <context-param>
       <description>This parameter tells MyFaces if javascript code should
be allowed in the
           rendered HTML output.
           If javascript is allowed, command_link anchors will have
javascript code
           that submits the corresponding form.
           If javascript is not allowed, the state saving info and nested
parameters
           will be added as url parameters.
           Default: "true"
       </description>
       <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>
       <description>If true, rendered HTML code will be formatted, so that
it is "human readable".
           i.e. additional line separators and whitespace will be written,
that do not
           influence the HTML code.
           Default: "true"
       </description>
       <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
       <param-value>false</param-value>
   </context-param>

   <context-param>
       <description>If true, a javascript function will be rendered that is
able to restore the
           former vertical scroll on every request. Convenient feature if
you have pages
           with long lists and you do not want the browser page to always
jump to the top
           if you trigger a link or button action that stays on the same
page.
           Default: "false"
       </description>
       <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
       <param-value>true</param-value>
   </context-param>

   <context-param>
       <description>
                       Validate managed beans, navigation rules and ensure that forms are not
nested.
       </description>
       <param-name>org.apache.myfaces.VALIDATE</param-name>
       <param-value>true</param-value>
   </context-param>

   <context-param>
       <description>A class implementing the
                   org.apache.myfaces.shared.renderkit.html.util.AddResource
                   interface. It is responsible to
                       place scripts and css on the right position in your HTML document.
           Default:
"org.apache.myfaces.shared.renderkit.html.util.DefaultAddResource"
           Follow the description on the MyFaces-Wiki-Performance page to
enable
           StreamingAddResource instead of DefaultAddResource if you want
to
           gain performance.
       </description>
       <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>

<param-value>org.apache.myfaces.renderkit.html.util.DefaultAddResource</param-value>

<!--param-value>org.apache.myfaces.renderkit.html.util.NonBufferingAddResource</param-value-->

<!--param-value>org.apache.myfaces.component.html.util.StreamingAddResource</param-value-->
   </context-param>

   <context-param>
       <description>
       A very common problem in configuring MyFaces-web-applications
       is that the Extensions-Filter is not configured at all
       or improperly configured. This parameter will check for a properly
       configured Extensions-Filter if it is needed by the web-app.
       In most cases this check will work just fine, there might be cases
       where an internal forward will bypass the Extensions-Filter and the
check
       will not work. If this is the case, you can disable the check by
setting
       this parameter to false.
       </description>
       <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
       <param-value>true</param-value>
   </context-param>

   <context-param>
       <description>
       Change the url-pattern from the ExtensionsFilter
       Default is "/faces/myFacesExtensionResource"
       Note: The filter-mapping for ExtensionsFilter, the url-pattern is
       this value + "/*", else there comes a exception
       </description>
       <param-name>org.apache.myfaces.RESOURCE_VIRTUAL_PATH</param-name>
       <param-value>/faces/extensionResource</param-value>
   </context-param>

   <context-param>
       <description>
         This parameter enables partial state saving.
       </description>
       <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
       <param-value>false</param-value>
   </context-param>

   <context-param>
       <description>
         If true every time a page is rendered, the corresponding JSP is
dispatched also.
         This is very usefull if Scriptlets are used inside the JSP.
       </description>

<param-name>javax.faces.PARTIAL_STATE_SAVING_DISPATCH_EVERY_TIME</param-name>
       <param-value>true</param-value>
   </context-param>




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

   <!--
   <servlet>
       <servlet-name>SourceCodeServlet</servlet-name>

<servlet-class>org.apache.myfaces.shared_tomahawk.util.servlet.SourceCodeServlet</servlet-class>
   </servlet>
   -->

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

   <!--
   <servlet-mapping>
       <servlet-name>SourceCodeServlet</servlet-name>
       <url-pattern>*.source</url-pattern>
   </servlet-mapping>

   -->

   <filter>
       <filter-name>extensionsFilter</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>10k</param-value>
       </init-param>
   </filter>

   <filter-mapping>
       <filter-name>extensionsFilter</filter-name>
       <servlet-name>Faces Servlet</servlet-name>
   </filter-mapping>


   <filter-mapping>
       <filter-name>extensionsFilter</filter-name>
       <url-pattern>/faces/*</url-pattern>
   </filter-mapping>

   <welcome-file-list>
       <welcome-file>index.jsp</welcome-file>
       <welcome-file>index.jsf</welcome-file>
   </welcome-file-list>
   <!--
   Configure these for a real application
   <error-page>
       <error-code>500</error-code>
       <location>/error.jsp</location>
   </error-page>
   -->
</web-app>

index.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>

<f:view>
   <h1><h:outputText value="dude is faces working foo?" /></h1>


   here is some text !!!!!!!!!!!

</f:view>
--
View this message in context: http://www.nabble.com/Myfaces-Portlet-Bridge-error-on-deploy-tp24128580p24128580.html
Sent from the MyFaces - Users mailing list archive at Nabble.com.


 « Return to Thread: Myfaces Portlet Bridge error on deploy