1

'在尝试从 weblogic server 10.3 查询页面时出现以下异常。请帮我解决这个问题。

java.net.SocketException: socket write error: Connection reset by peer.
at jrockit.net.SocketNativeIO.writeBytesPinned(Native Method)
at jrockit.net.SocketNativeIO.socketWrite(SocketNativeIO.java:46)
at java.net.SocketOutputStream.socketWrite0(SocketOutputStream.java)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at weblogic.utils.io.ChunkedOutputStream.writeTo(ChunkedOutputStream.java:284)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeHeader(ServletOutputStreamImpl.java:167)
at weblogic.servlet.internal.ResponseHeaders.writeHeaders(ResponseHeaders.java:444)
at weblogic.servlet.internal.ServletResponseImpl.writeHeaders(ServletResponseImpl.java:1288)
at weblogic.servlet.internal.ServletOutputStreamImpl.sendHeaders(ServletOutputStreamImpl.java:281)
at weblogic.servlet.internal.ChunkOutput.flush(ChunkOutput.java:424)
at weblogic.servlet.internal.CharsetChunkOutput.flush(CharsetChunkOutput.java:298)
at weblogic.servlet.internal.ChunkOutput$2.checkForFlush(ChunkOutput.java:648)
at weblogic.servlet.internal.CharsetChunkOutput.write(CharsetChunkOutput.java:200)
at weblogic.servlet.internal.ChunkOutputWrapper.write(ChunkOutputWrapper.java:148)
at weblogic.servlet.jsp.JspWriterImpl.write(JspWriterImpl.java:275)

谢谢。

4

3 回答 3

1

这是相关的超时问题。您可以通过以下方式增加超时

完成消息超时:最大值:480

最大消息大小: 最小值: 4096 最大值: 2000000000 安全值: 10000000

这些可在以下位置获得:服务器 >>>>> AdminServer >>> 协议>>> 常规。

如果您的应用程序使用 weblogic 使用的相同 java 版本编译,那会更好。

如果您不刷新缓冲区,则可能会发生这种情况。获取读/写流并使用缓冲区控制它们。您甚至可以尝试增加 jsp 缓冲区大小。您可以通过将服务器切换到 Sun JDK 来检查是否有同样的问题

于 2014-05-15T04:33:44.287 回答
1

如前所述,发生此错误的原因有很多。我只是给你一些关于故障排除的提示。首先,有几种使用 Weblogic 架构的日志。这当然可能是超时问题,但也可能是许多其他原因。要进行调试,了解 Weblogic 架构、配置和环境非常重要。首先,重要的是确定哪个层引发了根本原因错误。

此特定日志似乎是 Weblogic 服务器日志(在到达应用程序之前抛出)。我的下一步将转到您的 application.log 以查看它是否产生任何错误。这将排除您的应用程序层。如果不存在日志,则通过应用程序配置或 Web 控制台创建应用程序日志。接下来,如果没有相应的错误,那么是时候对您的 webtier 进行故障排除了。

Webtier 是 Apache、Http 服务器或代理。有时,当证书信任等不一致时,这些可能会引发错误。钱包和密钥库。

如果您使用的是 nodemanager,那也可能是一个故障点。

以我的经验,当应用层出现问题、数据库连接、网络断开(用户客户端层)错误的部署、长时间运行的查询或错误配置的证书或端口时,就会发生这种情况。最后,如果这种情况不规律地发生,那么根据我的经验,这也是正常的,但应该查看性能/负载。

于 2017-03-20T18:38:22.970 回答
0

客户端正在关闭与服务器的连接,因此 Weblogic 无法完全写回回复。

如果此错误是随机发生的,则可能是由于在客户端处理响应时出现异常。

如果您有很多客户端,可能有一些用户在接收到服务器的响应时突然断开连接(例如客户端机器拔掉电源、程序崩溃等)。

此错误非常普遍,可能有多个根本原因。

BR

于 2015-08-04T08:17:14.103 回答