On 11/07/2016 09:57 AM, Martin Grigorov wrote:
There's another frequently occurring exception in the log that occurs
when using the autocomplete field:
java.lang.IllegalStateExceptiongetOutputStream() has already been called
for this response org.apache.catalina.connector.
Response#getWriter(Response.java:678)
This is a bug, but I am not sure where exactly.
An application should not try to write both to the Servlet's writer and
outputStream in the same response.
The easiest way to debug is to put a breakpoint at
ResponseFacade#getWriter() and ResponseFacade#getOutputStream() and see
what happens.
The TextChoiceProvider is writing to the outputstream. Is that what you
wanted to know?
"http-bio-8080-exec-10@22498" daemon prio=5 tid=0x44 nid=NA runnable
java.lang.Thread.State: RUNNABLE
at
org.apache.catalina.connector.ResponseFacade.getOutputStream(ResponseFacade.java:196)
at
org.apache.wicket.protocol.http.servlet.ServletWebResponse.write(ServletWebResponse.java:135)
at
org.apache.wicket.protocol.http.HeaderBufferingWebResponse.write(HeaderBufferingWebResponse.java:196)
at
org.apache.wicket.request.Response$StreamAdapter.write(Response.java:148)
at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
at sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:282)
at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:125)
- locked <0x57e8> (a java.io.OutputStreamWriter)
at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:135)
at java.io.OutputStreamWriter.write(OutputStreamWriter.java:220)
at java.io.Writer.write(Writer.java:157)
at org.apache.wicket.ajax.json.JSONWriter.key(JSONWriter.java:212)
at
org.wicketstuff.select2.TextChoiceProvider.toJson(TextChoiceProvider.java:38)
at
org.wicketstuff.select2.AbstractSelect2Choice.onResourceRequested(AbstractSelect2Choice.java:473)
at
org.wicketstuff.select2.Select2Choice.onResourceRequested(Select2Choice.java:36)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-1)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
at
org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:216)
at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:243)
at
org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)
at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at
org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
at
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
at
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
- locked <0x5836> (a org.apache.tomcat.util.net.SocketWrapper)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
org.apache.catalina.connector.ResponseFacade#getWriter(Respo
nseFacade.java:213)
org.apache.wicket.protocol.http.servlet.ServletWebResponse#s
endRedirect(ServletWebResponse.java:280)
org.apache.wicket.protocol.http.HeaderBufferingWebResponse#s
endRedirect(HeaderBufferingWebResponse.java:117)
org.apache.wicket.request.handler.render.WebPageRenderer#red
irectTo(WebPageRenderer.java:176)
org.apache.wicket.request.handler.render.WebPageRenderer#res
pond(WebPageRenderer.java:242)
org.apache.wicket.core.request.handler.RenderPageRequestHand
ler#respond(RenderPageRequestHandler.java:175)
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor
#respond(RequestCycle.java:890)
org.apache.wicket.request.RequestHandlerStack#execute(Reques
tHandlerStack.java:64)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:310)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#executeExceptio
nRequestHandler(RequestCycle.java:319)
org.apache.wicket.request.cycle.RequestCycle#processRequest(
RequestCycle.java:233)
org.apache.wicket.request.cycle.RequestCycle#processRequestA
ndDetach(RequestCycle.java:289)
org.apache.wicket.protocol.http.WicketFilter#processRequestC
ycle(WicketFilter.java:259)
org.apache.wicket.protocol.http.WicketFilter#processRequest(
WicketFilter.java:201)
org.apache.wicket.protocol.http.WicketFilter#doFilter(Wicket
Filter.java:282)
org.apache.catalina.core.ApplicationFilterChain#internalDoFi
lter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain#doFilter(App
licationFilterChain.java:208)
org.apache.shiro.web.servlet.AbstractShiroFilter#executeChai
n(AbstractShiroFilter.java:449)
org.apache.shiro.web.servlet.AbstractShiroFilter$1#call(Abst
ractShiroFilter.java:365)
org.apache.shiro.subject.support.SubjectCallable#doCall(Subj
ectCallable.java:90)
org.apache.shiro.subject.support.SubjectCallable#call(Subjec
tCallable.java:83)
org.apache.shiro.subject.support.DelegatingSubject#execute(D
elegatingSubject.java:383)
org.apache.shiro.web.servlet.AbstractShiroFilter#doFilterInt
ernal(AbstractShiroFilter.java:362)
org.apache.shiro.web.servlet.OncePerRequestFilter#doFilter(O
ncePerRequestFilter.java:125)
org.apache.catalina.core.ApplicationFilterChain#internalDoFi
lter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain#doFilter(App
licationFilterChain.java:208)
org.apache.catalina.core.StandardWrapperValve#invoke(Standar
dWrapperValve.java:220)
org.apache.catalina.core.StandardContextValve#invoke(Standar
dContextValve.java:122)
org.apache.catalina.authenticator.AuthenticatorBase#invoke(A
uthenticatorBase.java:503)
org.apache.catalina.core.StandardHostValve#invoke(StandardHo
stValve.java:170)
org.apache.catalina.valves.ErrorReportValve#invoke(ErrorRepo
rtValve.java:103)
org.apache.catalina.valves.AccessLogValve#invoke(AccessLogValve.java:950)
org.apache.catalina.core.StandardEngineValve#invoke(Standard
EngineValve.java:116)
org.apache.catalina.connector.CoyoteAdapter#service(CoyoteAd
apter.java:421)
org.apache.coyote.ajp.AjpProcessor#process(AjpProcessor.java:190)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler
#process(AbstractProtocol.java:611)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor#run(J
IoEndpoint.java:314)
java.util.concurrent.ThreadPoolExecutor#runWorker(ThreadPool
Executor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker#run(ThreadPoo
lExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable#r
un(TaskThread.java:61)
java.lang.Thread#run(Thread.java:745)
The autocomplete works as expected so it doesn't trouble the user.
Anybody else getting this exception or does it depend on our configuration?
Erik