9 Replies Latest reply on Feb 1, 2007 10:48 PM by Rashmi Setty

    Stream Closed

    Patrick Dalla Bernardina Apprentice

      JBoss Portal is frequently throwing the following exception when rendering portlet content.

      Anybody knows the reason?

      javax.portlet.PortletException: javax.servlet.ServletException: javax.servlet.jsp.JspException: Stream closed
      at org.apache.myfaces.portlet.MyFacesGenericPortlet.handleExceptionFromLifecycle(MyFacesGenericPortlet.java:254)
      at br.gov.trf2.jfes.intranet.portlet.MyFacesPortletExtension.facesRender(MyFacesPortletExtension.java:392)
      at br.gov.trf2.jfes.intranet.portlet.MyFacesPortletExtension.doEdit(MyFacesPortletExtension.java:244)
      at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:162)
      at javax.portlet.GenericPortlet.render(GenericPortlet.java:394)
      at br.gov.trf2.jfes.intranet.portlet.MyFacesPortletExtension.render(MyFacesPortletExtension.java:289)
      at org.jboss.portal.portlet.invocation.DispatcherInterceptor.invokeRequest(DispatcherInterceptor.java:163)
      at org.jboss.portal.portlet.invocation.DispatcherInterceptor.invoke(DispatcherInterceptor.java:195)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.portlet.invocation.PreferencesInterceptor.invoke(PreferencesInterceptor.java:93)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.server.invocation.component.ContextDispatcherInterceptor$InvokeNextCommand.execute(ContextDispatcherInterceptor.java:94)
      at sun.reflect.GeneratedMethodAccessor443.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.jboss.portal.server.servlet.CommandServlet.doGet(CommandServlet.java:49)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:539)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
      at org.jboss.portal.server.invocation.component.ContextDispatcherInterceptor.invoke(ContextDispatcherInterceptor.java:58)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.core.invocation.AccessControlInterceptor.invoke(AccessControlInterceptor.java:125)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.server.invocation.component.CacheInterceptor.invoke(CacheInterceptor.java:103)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:238)
      at org.jboss.portal.server.Component.invoke(Component.java:173)
      at org.jboss.portal.server.invocation.portal.MainDispatcherInterceptor.invoke(MainDispatcherInterceptor.java:93)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.core.invocation.StrategyInterceptor.invoke(StrategyInterceptor.java:184)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.core.invocation.ViewInterceptor.invoke(ViewInterceptor.java:118)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.server.invocation.portal.TargetInterceptor.invoke(TargetInterceptor.java:153)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.core.invocation.ContentTypeInterceptor.invoke(ContentTypeInterceptor.java:117)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.core.invocation.UserContextInterceptor.invoke(UserContextInterceptor.java:103)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:213)
      at org.jboss.portal.server.impl.invocation.InvocationImpl.invokeNext(InvocationImpl.java:238)
      at org.jboss.portal.server.PortalServer.invoke(PortalServer.java:186)
      at org.jboss.portal.server.servlet.AbstractMainServlet.invoke(AbstractMainServlet.java:78)
      at org.jboss.portal.server.servlet.AbstractMainServlet.doGet(AbstractMainServlet.java:71)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.portal.core.servlet.TransactionFilter.doFilter(TransactionFilter.java:79)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.portal.core.security.jaas.servletfilter.JbossSecurityFilter.doFilter(JbossSecurityFilter.java:38)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:407)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.jboss.web.tomcat.tc5.sso.ClusteredSingleSignOn.invoke(ClusteredSingleSignOn.java:366)
      at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:365)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)

        • 1. Re: Stream Closed
          Patrick Dalla Bernardina Apprentice

          the error still occur

          • 2. Re: Stream Closed
            Jacob Boje Newbie

            Any new on this one? We use JBoss Portal with JSF Portlets. The exception occur everytime a user double clicks a button or actionlink (ex. clicking on an actionlink before the first click has been handled). I'll expect that the first click will be cancelled and the second will start being handled, but instead a ServletException "Stream Closed" i thrown.

            Any ideas?

            • 3. Re: Stream Closed
              Pascal Lochmann Newbie

              Sry, no!
              We have the same Problem as you descripted.

              • 4. Re: Stream Closed
                Thomas Heute Master

                I tried with 2.2 and 2.6 on the management portlet (a JSF portlet) and could not reproduce the problem.

                • 5. Re: Stream Closed
                  Jacob Boje Newbie

                  We're able to reproduce. Our application is running in Portal 2.4.

                  • 6. Re: Stream Closed
                    Thomas Heute Master

                    But how ?

                    • 7. Re: Stream Closed
                      Jacob Boje Newbie

                      I can reproduce it by clicking on a actionlink twice without waiting for the first action to complete. In out particular example, we have a master-detail table relationship. When we mark a row in the master table (using an actionlink for that row) the detail table is re-queried. If I mark a row in the master-table twice, without waiting for the first request to finish a "Stream Closed" exception i thrown.

                      Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: Stream closed
                      at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:854)
                      at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
                      at org.apache.jsp.jsp.sagsbehandling.sagsleverancePortlet_jsp._jspService(sagsleverancePortlet_jsp.java:121)
                      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
                      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
                      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)

                      The exception is thrown in the method

                      protected void facesRender(RenderRequest request, RenderResponse response)

                      in the MyFacesGenericPortlet class, so maybe it's actually a Myfaces problem.

                      For our application the problem is very easy reproduced in Firefox. It's also possible to reproduce it in IE, but that's harder.

                      We are using Portal 2.4

                      • 8. Re: Stream Closed
                        Thomas Heute Master

                        Are you able to reproduce it in the Management portlet ? I did the same thing (clicking on portlet action links) and could not break it, how hard i tried (on Firefox)

                        If you could create a Jira task with a reproducable scenario (that can be a part of your portlet), that would help a lot, thanks.

                        It seems more like a JSF bridge problem as you mention.

                        • 9. Re: Stream Closed
                          Rashmi Setty Newbie

                          Hi,

                          System Environment:
                          Jboss 2.4.G.A
                          Windows XP,
                          IE6.0 expolrer

                          Even we are facing the same problem.The portelt is a simple MYFACES 1.1.2 Portlet which displays the data on screen.If i continously press F5 button, we are getting the Stream closed exception.

                          Is there any solution for this as we are planning to JBOSS 2.4 for our Production.

                          Please help,
                          Thanks