首页 > 其他分享 >Action请求后台出现Response already commited异常解决方法

Action请求后台出现Response already commited异常解决方法

时间:2023-05-29 11:33:29浏览次数:44  
标签:already commited Stream java springframework io Action org UT010029


在编写导出功能使用action请求,在处理导出异常时期望跳转异常页,Controller中的方法返回类型String的url

Action请求后台出现Response already commited异常解决方法_开发语言

在处理完逻辑导出文件后后台控制台出现

WARN  [org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver] (default task-22) Handling of [org.springframework.http.converter.HttpMessageNotWritableException] resulted in Exception: java.lang.IllegalStateException: UT010019: Response already commited

and

ERROR [io.undertow.request] (default task-22) UT005023: Exception handling request to /snq-admin/data/exportDataDetail.do: org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: UT010029: Stream is closed; nested exception is java.io.IOException: UT010029: Stream is closed

Caused by: org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: UT010029: Stream is closed; nested exception is java.io.IOException: UT010029: Stream is closed

Caused by: java.io.IOException: UT010029: Stream is closed

在写入文件时调用requestOutputStream.write()方法已将response发出,再在Controller中return时被认为是再发送一次,因而会报错,解决这个问题只需返回null即可。

Action请求后台出现Response already commited异常解决方法_开发语言_02

标签:already,commited,Stream,java,springframework,io,Action,org,UT010029
From: https://blog.51cto.com/chengzheng183/6369253

相关文章

  • rabbitMQ windows环境重装后报错RabbitMQ service is already present - only updatin
    错误如下:C:\Users\Administrator>rabbitmq-serviceinstallRabbitMQserviceisalreadypresent-onlyupdatingserviceparametersC:\ProgramFiles\erl\erts\bin\erlsrv:Warning,couldnotsetcorrectinteractivemode.Error:句柄无效。---此行有时显示中文乱码C:\Progr......
  • Appium自动化(13):Appium常用操作之TouchAction操作
    TouchAction操作Appium的辅助类,主要针对手势操作,比如滑动、长按、拖动等。其原理是将一系列的动作放在一个链条中,然后将该链条传递给服务器。服务器接受到该链条后,解析各个动作,逐个执行。TouchAction类支持的动作很多;常用操作如下:1、press(self,el=None,x=None,y=None): 按......
  • Could not commit Hibernate transaction,Transaction not successfully started
    CouldnotcommitHibernatetransaction,Transactionnotsuccessfullystarted1.数据库操作和业务分离。事务内属于业务验证抛出的异常问题或其他不符合当前业务规则的异常,挪到上一层级,如接口层或业务视图层,以此避免该类问题2.evict。获取当前session,evict当前数据库对象,避......
  • nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)解决
    nginx:[emerg]bind()to0.0.0.0:80failed(98:Addressalreadyinuse)报错信息nginx:[emerg]bind()to0.0.0.0:80failed(98:Addressalreadyinuse)nginx:[emerg]socket()[::]:80failed(97:Addressfamilynotsupportedbyprotocol)定位方法1.先使用ps-e|......
  • @Transactional(rollbackFor=Exception.class)的使用
    引言:最近在优化项目的代码,然后使用的是阿里的P3C代码规范检查,然后就出现了如下的提示。方法【create】需要在Transactional注解指定rollbackFor或者在方法中显示的rollback。原因:解决方案之一:在此方法@Transactional注解后面加上(rollbackFor=Exception.class),如图所示:解决方案之......
  • Weakly Supervised Temporal Action Localization via Representative Snippet Knowle
    0.前言相关资料:arxivgithub论文解读论文基本信息:领域:弱监督时序动作定位发表时间:CVPR2022(2022.3.14)1.针对的问题许多现有的方法试图生成伪标签来弥补分类和定位之间的差异,但通常只使用有限的上下文信息,即每个片段内的信息,来生成伪标签。2.主......
  • Revit二次开发实战03(事务Transaction)
    Revit二次开发实战事务必须首先要启动Start,操作完成后提交事务Commit,如果执行异常,则要执行回滚操作RollBack;可以通过GetStatus获取事务的当前状态,根据事务状态决定程序的走向;事务Transaction是非托管对象,必须手动释放Dispose,或者放到using代码块中,让编译器自动释放;如果要对文......
  • ActionRPG-3-RPGGameAbility
    #pragmaonce#include"ActionRPG.h"#include"Abilities/GameplayAbility.h"#include"Abilities/RPGAbilityTypes.h"#include"RPGGameplayAbility.generated.h"/***Subclassofabilityblueprinttypewithgame-speci......
  • Android之ActionBar、Tabs、Fragment、ViewPager实现标签页切换并缓存页面
    感觉Android到处都是坑,每个地方都要把人折腾半天。今天来简单说说Android之ActionBar、Tabs、Fragment、ViewPager实现标签页切换并缓存页面关于他们的介绍就不多说了,网上到处都是,只说关键的部分:我在开发的时候遇到几个疑难问题,花费大量时间处理,总结如下:1.关于Fragment内部......
  • P5179 Fraction 题解
    题目描述给你四个正整数\(a,\,b,\,c,\,d\),求一个最简分数\(\frac{p}{q}\)满足\(\frac{a}{b}<\frac{p}{q}<\frac{c}{d}\)。若有多组解,输出\(q\)最小的一组,若仍有多组解,输出\(p\)最小的一组。前置知识:Stern-Brocot树首先引入分数逼近。这里的分数逼近是指用用一个......