IllegalStateException: Writer Already Retrieved Running JSP (Doc ID 731639.1)

Last updated on FEBRUARY 24, 2017

Applies to:

Oracle Containers for J2EE - Version: 10.1.3.3.0 to 10.1.3.3.0
This problem can occur on any platform.

Symptoms

Running a JSP application which contains a chartfx custom tag (third-party, from http://www.softwarefx.com/SFXJavaProducts/CFXforJava ) in Jdeveloper, the following error is shown:

java.lang.IllegalStateException: Writer already retrieved

To reproduce the problem use the following example:
  1. Download the Jdeveloper workspace/example. It contains ChartFX application. There is a ChartFX project with example.jspx file.

    The example.jspx contains the chartxf tags. The chart a does not show up since its not mapped. The chart should be generated blank and the page should come up.

    chartfx tag:
    <chartfx:chart height="280" width="450"/>

  2. Run the page example.jspx to view the problem.

    The full error is shown in the logs:

    500 Internal Server Error

    java.lang.IllegalStateException: Writer already retrieved
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.EvermindHttpServletResponse.getOutputStream(EvermindHttpServletResponse.java:906)
    at javax.servlet.ServletResponseWrapper.getOutputStream(ServletResponseWrapper.java:147)
    at javax.servlet.ServletResponseWrapper.getOutputStream(ServletResponseWrapper.java:147)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.EvermindJSPWriter.initServletOut(EvermindJSPWriter.java:527)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.EvermindJSPWriter.writeOut(EvermindJSPWriter.java:537)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.EvermindJSPWriter.jspflush(EvermindJSPWriter.java:436)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.EvermindJSPWriter.flush(EvermindJSPWriter.java:412)
    at oracle.adfinternal.view.faces.io.HtmlResponseWriter.endDocument(HtmlResponseWriter.java:67)
    at com.sun.faces.taglib.jsf_core.ViewTag.doEndTag(ViewTag.java:233)
    at _example_jspx._jspService(_example_jspx.java:119)
    [/example.jspx]
    at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.3.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:287)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:51)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:193)
    at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:198)
    at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:346)
    at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:152)
    at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:157)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
    at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
    at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:623)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)


    The error is also shown in the browser:

    Cause

    Sign In with your My Oracle Support account

    Don't have a My Oracle Support account? Click to get started

    My Oracle Support provides customers with access to over a
    Million Knowledge Articles and hundreds of Community platforms