eclipse-vertx/vert.x · error

Invalid ${name} system property value, use ${default} instea

Error message

Invalid ${name} system property value, use ${default} instead

What it means

Configuration validation during JacksonCodec.buildFactory: a Vert.x system property (e.g. the Jackson read-constraints override) was set to a value that cannot be parsed as an integer. The message names the property, the bad value, and the default to use instead; the input at fault is the raw system property string from the JVM environment.

Source

Thrown at vertx-core/src/main/java21/io/vertx/core/json/jackson/v3/JacksonCodec.java:61

/**
 * @author <a href="mailto:julien@julienviet.com">Julien Viet</a>
 */
public class JacksonCodec implements JsonCodec {

  private static final Logger log = LoggerFactory.getLogger(JacksonCodec.class);

  private static JsonFactory buildFactory() {
    JsonFactoryBuilder tsfBuilder = JsonFactory.builder();

    // Build stream read constraints
    StreamReadConstraints.Builder readConstraintsBuilder = StreamReadConstraints.builder();
    try {
      OptionalInt override = SysProps.JACKSON_DEFAULT_READ_MAX_NESTING_DEPTH.getAsInt();
      if (override.isPresent()) {
        readConstraintsBuilder.maxNestingDepth(override.getAsInt());
      }
    } catch (IllegalArgumentException e) {
      log.warn("Invalid " + SysProps.JACKSON_DEFAULT_READ_MAX_NESTING_DEPTH.name + " system property value, use " +
        StreamReadConstraints.DEFAULT_MAX_DEPTH + " instead");
    }
    try {
      OptionalLong override = SysProps.JACKSON_DEFAULT_READ_MAX_DOC_LEN.getAsLong();
      if (override.isPresent()) {
        readConstraintsBuilder.maxDocumentLength(override.getAsLong());
      }
    } catch (IllegalArgumentException e) {
      log.warn("Invalid " + SysProps.JACKSON_DEFAULT_READ_MAX_DOC_LEN.name + " system property value, use " +
        StreamReadConstraints.DEFAULT_MAX_DOC_LEN + " instead");
    }
    try {
      OptionalInt override = SysProps.JACKSON_DEFAULT_READ_MAX_NUM_LEN.getAsInt();
      if (override.isPresent()) {
        readConstraintsBuilder.maxNumberLength(override.getAsInt());
      }
    } catch (IllegalArgumentException e) {
      log.warn("Invalid " + SysProps.JACKSON_DEFAULT_READ_MAX_NUM_LEN.name + " system property value, use " +

View on GitHub (pinned to fb308bd8c3)

Solutions

  1. Set the system property to a valid integer or unset it to fall back to the default
  2. Audit -D Vert.x-related properties in startup scripts
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at vertx-core/src/main/java21/io/vertx/core/json/jackson/v3/JacksonCodec.java:61 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/a9da9a9dbbbdf2dc. Report an issue: GitHub.