IllegalStateException: Writer Already Retrieved Running JSP

(Doc ID 731639.1)

Last updated on FEBRUARY 24, 2017

Applies to:

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


Running a JSP application which contains a chartfx custom tag (third-party, from ) 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 ( ].server.http.EvermindHttpServletResponse.getOutputStream(
    at javax.servlet.ServletResponseWrapper.getOutputStream(
    at javax.servlet.ServletResponseWrapper.getOutputStream(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.EvermindJSPWriter.initServletOut(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.EvermindJSPWriter.writeOut(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.EvermindJSPWriter.jspflush(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.EvermindJSPWriter.flush(
    at com.sun.faces.taglib.jsf_core.ViewTag.doEndTag(
    at _example_jspx._jspService(
    at com.orionserver[Oracle Containers for J2EE 10g ( ].http.OrionHttpJspPage.service(
    at oracle.jsp.runtimev2.JspPageTable.service(
    at oracle.jsp.runtimev2.JspServlet.internalService(
    at oracle.jsp.runtimev2.JspServlet.service(
    at javax.servlet.http.HttpServlet.service(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.invoke(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.forwardInternal(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.unprivileged_forward(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.access$100(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher$2.oc4jRun(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.forward(
    at com.sun.faces.context.ExternalContextImpl.dispatch(
    at com.sun.faces.application.ViewHandlerImpl.renderView(
    at oracle.adfinternal.view.faces.application.ViewHandlerImpl.renderView(
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(
    at com.sun.faces.lifecycle.LifecycleImpl.phase(
    at com.sun.faces.lifecycle.LifecycleImpl.render(
    at javax.faces.webapp.FacesServlet.service(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ResourceFilterChain.doFilter(
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(
    at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(
    at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.invoke(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.ServletRequestDispatcher.forwardInternal(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.HttpRequestHandler.doProcessRequest(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.HttpRequestHandler.processRequest(
    at com.evermind[Oracle Containers for J2EE 10g ( ].server.http.HttpRequestHandler.serveOneRequest(
    at com.evermind[Oracle Containers for J2EE 10g ( ]
    at com.evermind[Oracle Containers for J2EE 10g ( ]
    at com.evermind[Oracle Containers for J2EE 10g ( ].util.ReleasableResourcePooledExecutor$

    The error is also shown in the browser:
Note: When using chartfx and running the application in Tomcat it works fine.


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