我使用的是my-faces 2.1.5 primefaces 3.2和WebLogic Server版本:10.3.2.0
当我生成文件并尝试通过p:filedownload下载它们时,我收到以下错误消息:
java.lang.IllegalStateException: strict servlet API: cannot call getWriter() after getOutputStream()
at weblogic.servlet.internal.ServletResponseImpl.getWriter(ServletResponseImpl.java:309)
at org.apache.myfaces.context.servlet.ServletExternalContextImpl.getResponseOutputWriter(ServletExternalContextImpl.java:185)
at org.apache.myfaces.renderkit.ErrorPageWriter.handle(ErrorPageWriter.java:469)
at org.apache.myfaces.context.MyFacesExceptionHandlerWrapperImpl.handle(MyFacesExceptionHandlerWrapperImpl.java:301)
at javax.faces.context.ExceptionHandlerWrapper.handle(ExceptionHandlerWrapper.java:64)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:191)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
我不知道这是weblogic中的bug还是我的代码中的bug?
<p:commandButton id="genButton" value="Generate Files" disabled="#{bean.disableButton}" actionListener="#{bean.generate}" onclick="PrimeFaces.monitorDownload(showStatus, hideStatus)" ajax="false" style="width:200px" icon="ui-icon-shuffle">
<p:fileDownload value="#{bean.zipfile}"/>
</p:commandButton>
豆子:
File zip = File.createTempFile(selectedCode, "zip");
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zip.getPath()));
for (File file : adapter.listFiles) {
addFileToZip(file, zos);
}
InputStream in = new FileInputStream(zip);
file = new DefaultStreamedContent(in, "zip", selectedCode + ".zip");
adapter.listFiles.clear();
zos.flush();
zos.close();
stacktrace告诉MyFaces异常处理程序试图处理它。
at org.apache.myfaces.context.MyFacesExceptionHandlerWrapperImpl.handle(MyFacesExceptionHandlerWrapperImpl.java:301)
at javax.faces.context.ExceptionHandlerWrapper.handle(ExceptionHandlerWrapper.java:64)
只有在抛出异常时才会发生这种情况。但是该异常的异常细节显然会被抑制,因为MyFaces异常处理程序无法处理该异常,因为无法获得响应写入程序。
关闭MyFaces异常处理程序,您将获得真正的异常细节。
当我尝试使用Spring boot和Spring mvc下载压缩文件时,出现了一个错误: null 基本上,我的应用程序是加载一个文件,压缩它并下载新的压缩文件。 这是我的应用程序控制器: 如果我关闭输入和输出流,我不知道为什么会发生这种情况。
问题内容: 我必须使用测试工具编译我的代码,但是,当该测试工具调用我的方法时,我收到此错误: “课程Course中的getCourseDetails方法不能应用于给定类型; 必需:java.lang.String,int,java.lang.String,boolean,java.lang.String.java.lang.String,double 找到:没有参数 原因:实际参数列表和形式参数列
问题内容: 点更新后,点已完全停止工作。 有什么帮助吗? 编辑:我正在Windows 10 问题答案: 一切归功于han_solo用户,他将答案留为评论而不是答案: 代替 采用 替换为或使用所需名称的名称。
我正在用Spring做一个项目,我有这个问题,我谷歌了错误信息,我找到了解决方案,甚至所有关于这个问题的帖子 有人能帮忙吗?
问题内容: 有了一个有点烦人的提款机。我设法编写了以下代码,该代码从url下载JSON并将其显示在屏幕上: 但是 …这很奇怪,因为如果我想将接收到的json存储在状态对象的数据中,但是当我试图这样做时,它表示状态变量实际上不存在… 这是什么意思?由于它是 组件的WILL挂载 功能,因此状态尚不存在,所以这就是为什么我无法将接收到的数据存储在那里的原因? 有什么办法可以解决这个问题?非常感谢 PS
每次我尝试处理我的/register方法时,我总是收到一个不能调用“com.***.repositories.userrepository.findByEmail(String)”的错误,因为“this.userrepository”是空错误。 我不明白为什么代码会被认为是空的。 控制器- Axios调用- 我的用户存储库-