eclipse-vertx/vert.x · error · IllegalArgumentException
protocolVersion must not be null
Error message
protocolVersion must not be null
What it means
Null guard in HttpClientOptions.setProtocolVersion: the HttpVersion argument is null. The client needs a concrete default version (HTTP_1_1, HTTP_2, H2C, HTTP_3) to build requests, so a null value is rejected immediately rather than silently defaulted.
Source
Thrown at vertx-core/src/main/java/io/vertx/core/http/HttpClientOptions.java:759
/**
* Get the protocol version.
*
* @return the protocol version
*/
public HttpVersion getProtocolVersion() {
return protocolVersion;
}
/**
* Set the protocol version.
*
* @param protocolVersion the protocol version
* @return a reference to this, so the API can be used fluently
*/
public HttpClientOptions setProtocolVersion(HttpVersion protocolVersion) {
if (protocolVersion == null) {
throw new IllegalArgumentException("protocolVersion must not be null");
}
this.protocolVersion = protocolVersion;
return this;
}
/**
* Set the maximum HTTP chunk size
* @param maxChunkSize the maximum chunk size
* @return a reference to this, so the API can be used fluently
*/
public HttpClientOptions setMaxChunkSize(int maxChunkSize) {
http1Config.setMaxChunkSize(maxChunkSize);
return this;
}
/**
* Returns the maximum HTTP chunk size
* @return the maximum HTTP chunk sizeView on GitHub (pinned to fb308bd8c3)
Solutions
- Pass a non-null HttpVersion (HTTP_1_1 is the conventional default)
- Treat null in external configuration as 'unset' and skip calling the setter
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at vertx-core/src/main/java/io/vertx/core/http/HttpClientOptions.java:759 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of eclipse-vertx/vert.x@fb308bd8c3 (2026-09-06).
Data as JSON: /api/errors/94c04ef665a0c816.
Report an issue: GitHub.