Hi,

I currently look a bit at open liberty as server and so far its really nice. 
One thing however that is problem so far is that wicket tries to write to 
headers at a time the response seems to be processed already?

e.g. log:

[INFO] [INFO    ] 
AddExpiresHeaderResponse.setHeader(Cross-Origin-Embedder-Policy-Report-Only, 
require-corp)
[INFO] [WARNING ] SRVE8094W: WARNING: Cannot set header. Response already 
committed.  Stack trace of errant attempt to set header: 
[INFO]         at 
com.ibm.ws.webcontainer.srt.SRTServletResponse.setHeader(SRTServletResponse.java:1845)
[INFO]         at [internal classes].(Unknown Source)
[INFO]         at 
de.int.debug.AddExpiresHeaderResponse.setHeader(AddExpiresHeaderResponse.java:86)
[INFO]         at 
org.apache.wicket.protocol.http.servlet.ServletWebResponse.setHeader(ServletWebResponse.java:100)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse.lambda$setHeader$5(BufferedWebResponse.java:204)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse$Action.invoke(BufferedWebResponse.java:136)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse.writeTo(BufferedWebResponse.java:347)
[INFO]         at 
org.apache.wicket.protocol.http.HeaderBufferingWebResponse.stopBuffering(HeaderBufferingWebResponse.java:59)
[INFO]         at 
org.apache.wicket.protocol.http.HeaderBufferingWebResponse.flush(HeaderBufferingWebResponse.java:96)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:280)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:208)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:307)
"
I used a custom AddExpiresHeaderResponse.setHeader for debugging and see where 
this comes from. It seems that the "Cross-Origin-Embedder-Policy-Report-Only" 
coming in too late in the processing?

Also setDate Header comes to late, too:

[INFO] [WARNING ] SRVE8094W: WARNING: Cannot set header. Response already 
committed.  Stack trace of errant attempt to set header: 
[INFO]         at 
com.ibm.ws.webcontainer.srt.SRTServletResponse.setDateHeader(SRTServletResponse.java:1774)
[INFO]         at [internal classes].(Unknown Source)
[INFO]         at 
org.apache.wicket.protocol.http.servlet.ServletWebResponse.setDateHeader(ServletWebResponse.java:88)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse.lambda$setDateHeader$4(BufferedWebResponse.java:192)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse$Action.invoke(BufferedWebResponse.java:136)
[INFO]         at 
org.apache.wicket.protocol.http.BufferedWebResponse.writeTo(BufferedWebResponse.java:347)
[INFO]         at 
org.apache.wicket.protocol.http.HeaderBufferingWebResponse.stopBuffering(HeaderBufferingWebResponse.java:59)
[INFO]         at 
org.apache.wicket.protocol.http.HeaderBufferingWebResponse.flush(HeaderBufferingWebResponse.java:96)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:280)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:208)
[INFO]         at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:307)


Any idea how to solve this?



Reply via email to