簡體   English   中英

Jersey,寫入響應消息時發生 I/O 錯誤

[英]Jersey, An I/O error has occurred while writing a response message

我在我的項目中使用了 SpringBoot 和 Jersey,我經常遇到以下錯誤:

[ERROR - ServerRuntime$Responder - 2018-02-13 13:16:45,983] An I/O error has occurred while writing a response message entity to the container output stream.
org.glassfish.jersey.server.internal.process.MappableException: org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe
        at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:92)
        at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162)
        at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1130)
        at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:711)
        at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:444)
        at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:434)
        at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:329)
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)

結果是對我的客戶的 503 狀態響應。 你能解釋一下為什么會出現這個錯誤嗎?

謝謝

當我在通話結束時不小心傳遞了 null 響應時,我遇到了這個異常。 您可以在第一個異常之后的“由”部分驗證這一點:

引起:org.eclipse.jetty.io.EofException:null

這種錯誤通常發生在servlet將數據寫回到流上並從客戶端關閉連接的情況下。 就像服務器在發送一些數據時可能是文件,字符串,字節等。但是在客戶端,就像瀏覽器已經關閉了連接,就像您關閉了瀏覽器選項卡。 它導致服務器上的文件結束提前異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM