[
https://jira.jboss.org/jira/browse/RF-4415?page=com.atlassian.jira.plugin...
]
Cesar Perez commented on RF-4415:
---------------------------------
I downloaded the RF source code in order to find what was being executed in Weblogic that
was not executed in Tomcat and found that in Weblogic the getOutputStream method from
org.ajax4jsf.webapp.FilterServletResponseWrapper is executed twice for each JSP that I try
to load in the web browser, also the getWriter method is executed a few times but in
Tomcat this method is never executed so the useStream flag never changes and the exception
is never thrown.
In facelets the getOutputStream method is never executed no matter if it is Tomcat or
Weblogic and the getWriter method is only executed once so the flag is always false.
For the time being I have commented the line that throws the Exception in the getWriter
method and at least it is working now without visible problems but I don't think this
is the way to go.
Application does not work in Weblogic 10gR3
-------------------------------------------
Key: RF-4415
URL:
https://jira.jboss.org/jira/browse/RF-4415
Project: RichFaces
Issue Type: Bug
Affects Versions: 3.2.1, 3.2.2
Environment: Windows XP SP3, Oracle Weblogic 10g R3, JSF 1.2, Richfaces 3.2.1 and
3.2.2 and probably older version.
Reporter: Cesar Perez
Attachments: RichfacesErrorProject.zip, web.xml
If I use RichFaces 3.2.1 and even 3.2.2CR3 with JSP as my view handler I cannot open a
JSP page, even if it doesn't contains any RF tags. This happens on Weblogic 10 and the
latest 10g R3. In Tomcat the code works just fine without any issues.
I created an example eclipse project that shows this issue under Weblogic 10g R3. It
contains a configuration to use either JSP or Facelets for the view. If you open the
.xhtml file the page will be displayed just fine but if you try to open the JSP an
exception is thrown.
In Weblogic I created a new domain with all the default options and I am deploying the
application through Eclipse but I have also tried deploying a WAR/EAR getting the same
exception when I try to access the JSP. Also you can remove all the facelets configuration
and just leave JSP to handle the view, the exception will be thrown too.
The only possible fix I have found is to use facelets instead of JSP but in the project I
am working on that's just not possible.
The example project is attached.
The stacktrace is:
java.lang.IllegalStateException: Servlet response already use stream, Writer not
possible
at
org.ajax4jsf.webapp.FilterServletResponseWrapper.getWriter(FilterServletResponseWrapper.java:226)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:186)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:547)
at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:189)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:547)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:547)
at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:189)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:154)
at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at
weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:503)
at
weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:251)
at weblogic.servlet.jsp.PageContextImpl.forward(PageContextImpl.java:159)
at jsp_servlet.__index._jspService(__index.java:72)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
at
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at
weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:408)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:318)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3496)
at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
at
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira