Subject: Storing and reusing PrintWriter
Posted By: delboypass Post Date: 12/16/2003 8:31:51 AM
I need to know how to store and reuse a printwriter.
Im trying to build a servlet that is able to PUSH javascript commands back to a designated users browser.
To try and do this, i have saved the users printwriter in hashtable.
When the correct event is sent, the users PrintWriter is retrieved from the Hashtable and the browser is written to.

But this doesnt seem to work.
Does anybody know why or how to get around this?
Any help is appreciated.
The printwriter seems to be of type:
Coyotewriter.
{derrick=org.apache.coyote.tomcat5.CoyoteWriter@24bfaa}

If i use the flush on this printwriter it seems to generate this error

System.out.println("Is this even working: Receivedevent!!!!!!! "+useroutputstream);
PrintWriter usersout = (PrintWriter)useroutputstream.get("derrick");
usersout.println("Testing received event status"+receivedevent);
usersout.print("<script type=\"text/javascript\">");
usersout.print("receivedEvent('your dinner is ready');");
usersout.print("</script>");
//extraline
usersout.flush(); -----> Exception: lbp.LBPServlet.doGet(LBPServlet.java:98)

I dont know if this is also part of the problem but if i use the .flush(), it seems to start throwing exceptions.

java.lang.NullPointerException
org.apache.coyote.http11.InternalOutputBuffer.commit(InternalOutputBuffer.java:547)
org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:735)
org.apache.coyote.Response.action(Response.java:223)
org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:518)
org.apache.coyote.Response.doWrite(Response.java:532)
org.apache.coyote.tomcat5.OutputBuffer.realWriteBytes(OutputBuffer.java:392)
org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:439)
org.apache.coyote.tomcat5.OutputBuffer.flush(OutputBuffer.java:350)
org.apache.coyote.tomcat5.CoyoteWriter.flush(CoyoteWriter.java:119)
lbp.LBPServlet.doGet(LBPServlet.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:466)
org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:180)
javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
filters.ExampleFilter.doFilter(ExampleFilter.java:149)
filters.ExampleFilter.doFilter(ExampleFilter.java:149)






Go to topic 7648

Return to index page 985
Return to index page 984
Return to index page 983
Return to index page 982
Return to index page 981
Return to index page 980
Return to index page 979
Return to index page 978
Return to index page 977
Return to index page 976