【问题标题】:SocketException: Weblogic套接字异常:Weblogic
【发布时间】:2012-06-19 12:55:09
【问题描述】:

尝试从 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)

谢谢。

【问题讨论】:

  • 我猜它与一些Timeout 问题有关,检查是否可以在某处增加它的值,我在过去的某个地方已经纠正了这个错误,只是忘记了确切的位置:( 或者检查端口是否已经在使用,请先尝试关闭端口。
  • 请告诉我在哪里增加超时值,而且问题不一致,它是随机发生的
  • 请重新检查,它必须在您的WebLogic User Interface 上,否则请检查该端口是否已被使用/

标签: java weblogic


【解决方案1】:

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

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

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

这些位于:服务器 >>>> AdminServer >>> 协议>>> 常规。

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

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

【讨论】:

    【解决方案2】:

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

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

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

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

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

    【讨论】:

      【解决方案3】:

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

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

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

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

      BR

      【讨论】:

        猜你喜欢
        • 2011-01-08
        • 2011-05-28
        • 2011-08-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-16
        • 1970-01-01
        相关资源
        最近更新 更多