解决java.lang.IllegalStateException:応答がコミットされた後はsendError()を呼び出すことができません

解决java.lang.IllegalStateException:応答がコミットされた後、sendError()を呼び出すことはできません!

  • Spring Bootを使用して安らかなスタイルのインターフェースを作成する場合、特にファイルのダウンロードまたはファイルのエクスポートを作成する場合、java.lang.IllegalStateException:応答がコミットされた後にsendError()を呼び出せないなどのバグが発生します。多くの人が混乱する可能性があります。すべてのファイルを正常にエクスポートできる理由と、ログにそのようなエラーがまだあるのはなぜですか?強迫性障害を持つ人々はどのようにそれを解決することができますか?try catch、例外をインターセプトするインターセプター、およびインターセプトする例外コントローラーを試しましたが、いずれも機能しません。
  • 理由

    (因为我在类的头部使用了@RestController注解),因为第一个输出是流的方式输出,并且输出成功后又把输出流给关闭了,所以自然就对第二个输出造成了影响!

  • 解決

只需要在你下载或导出接口return null即可

おすすめ

転載: blog.csdn.net/weixin_42945597/article/details/115001705