SocketException reset ☕ Java

java.net.SocketException: Connection reset

The remote side closed the TCP connection abruptly while Java was reading or writing.

Seen on: Java

Meaning

Server crashes, load balancer idle timeouts, TLS version mismatches, or reusing a stale pooled connection.

Common causes

  • Stale keep-alive connection reused
  • Server or proxy closing idle connections
  • TLS protocol mismatch
  • Request too large for the server

⚡ Quick fix

  1. Retry idempotent requests once
  2. Evict idle connections in the HTTP client pool
  3. Check server logs at that timestamp

Detailed fix by platform

Java

  1. Apache HttpClient: evictIdleConnections(TimeValue.ofSeconds(30))

How to diagnose

  1. When — First request or reused connection?
  2. Server — Crash/timeout at that time?

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.