eclipse-ee4j / eclipse-ee4j/krazo
Liberty test suite fails when checking for the CSRF header
- Dominant language
- Java
- Stars
- 55
- Forks
- 25
- Avg merge
- 3h 25m
- Merged PRs (30d)
- 3
Description
After applying the changes in https://github.com/eclipse-ee4j/krazo/pull/288 and using a Liberty 21.0.0.12 JEE 9 beta, there is one test failure: `org.eclipse.krazo.test.CsrfIT.testFormHeaderOk`.
Specifically, the failure is that the header it's looking for (`X-CSRF-TOKEN`) is not present in the response. Judging from the output, it looks like possibly it's another case of ["Cannot set header"](https://github.com/eclipse-ee4j/krazo/issues?q=is%3Aissue+cannot+set+header+is%3Aclosed), though this time actually causing trouble. Unfortunately, the stack trace for that isn't any more specific than the previous similar issues:
```
[WARNING ] SRVE8094W: WARNING: Cannot set header. Response already committed. Stack trace of errant attempt to set header:
at com.ibm.ws.webcontainer.srt.SRTServletResponse.setHeader(SRTServletResponse.java:1764)
at [internal classes].(Unknown Source)
at org.eclipse.krazo.core.ViewableWriter$DelegatingServletOutputStream.write(ViewableWriter.java:196)
at java.base/java.io.OutputStream.write(OutputStream.java:157)
at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:233)
at java.base/sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:312)
at java.base/sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:316)
at java.base/sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:153)
at java.base/java.io.OutputStreamWriter.flush(OutputStreamWriter.java:251)
at java.base/java.io.PrintWriter.flush(PrintWriter.java:396)
at org.eclipse.krazo.core.ViewableWriter.writeTo(ViewableWriter.java:169)
at org.eclipse.krazo.core.ViewableWriter.writeTo(ViewableWriter.java:1)
at org.jboss.resteasy.core.interception.jaxrs.ServerWriterInterceptorContext.lambda$writeTo$1(ServerWriterInterceptorContext.java:79)
at [internal classes].(Unknown Source)
```
Contributor guide
Assessment
This issue has not been assessed yet.