我正在尝试修改所有回复。 为了实现这一点,我正在使用球衣ContainerResponseFilter。 但是我遇到了这个异常
“ 未定义流提供程序。必须在将第一个字节写入实体输出流之前设置流提供程序。文本”
outputstream提供程序由ContainerResponseContext提供。 我应该设定什么?
示例:---
public class FilterResp implements ContainerResponseFilter {
@Override
public void filter(ContainerRequestContext arg0, ContainerResponseContext responsecotext) throws IOException {
OutputStream entityStream = responsecotext.getEntityStream();
responsecotext.setEntityStream(entityStream);
entityStream.write("gfgfgf".getBytes());
entityStream.flush();
}
严重:路径为[/ PspServices]的上下文中的Servlet [Jersey Web应用程序]的Servlet.service()引发了异常[java.lang.IllegalStateException:流提供程序未定义。必须在将第一个字节写入实体输出流之前进行设置。]根本原因 java.lang.IllegalStateException:流提供程序未定义。必须在将第一个字节写入实体输出流之前进行设置。 位于jersey.repackaged.com.google.common.base.Preconditions.checkState(Preconditions.java:149) 在org.glassfish.jersey.message.internal.CommittingOutputStream.commitStream(CommittingOutputStream.java:200) 在org.glassfish.jersey.message.internal.CommittingOutputStream.commitStream(CommittingOutputStream.java:195) 在org.glassfish.jersey.message.internal.CommittingOutputStream.write(CommittingOutputStream.java:229)