Why WHOIS Is Dead in Modern Java (And How to Check Domains with RDAP)
Description and use
In Java, replace legacy WHOIS with RDAP: HTTPS requests, JSON responses, HTTP 200/404 status, automatic server discovery via IANA. The lightweight rdap-java library (~5 KB) simplifies code and removes port 43 issues.
Problem
Java developers need to programmatically check domain registration status or authoritative nameservers, but legacy WHOIS requires raw TCP sockets, unstructured parsing, and is fragile.
Outcome
Migrating from WHOIS to RDAP in Java reduces code complexity, eliminates firewall issues, and provides reliable domain status checks with minimal dependencies (~5 KB).
Workflow
- Add rdap-java dependency to Maven or Gradle
- Instantiate RDAPClient
- Call checkDomain(domain) to get RDAPResult
- Use isRegistered() to determine availability
- Access getDomain(), getServerUrl(), getNameservers() for details
- Handle RDAPException for failures
- Optionally register custom RDAP servers with registerServer()
Evidence
RDAP modernizes registry lookups by replacing ad-hoc text streams with established web standards
To solve this, I built rdap-java—a lightweight (~5 KB) client built on top of native Java 11+ HttpClient and basic JSON parsing.
- Record date: 2026-09-21T16:00:17.473Z