{"record":{"id":"bf359c7ae31dd4ef","repo":"quarkusio/quarkus","slug":"the-quarkus-spring-cloud-config-url-property-can","errorCode":null,"errorMessage":"The 'quarkus.spring-cloud-config.url' property cannot be empty","messagePattern":"The 'quarkus\\.spring-cloud-config\\.url' property cannot be empty","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"extensions/spring-cloud-config-client/runtime/src/main/java/io/quarkus/spring/cloud/config/client/runtime/DirectConfigServerBaseUrlProvider.java","lineNumber":29,"sourceCode":"    public DirectConfigServerBaseUrlProvider(SpringCloudConfigClientConfig config) {\n        this.config = config;\n    }\n\n    @Override\n    public URI get() {\n        String url = config.url();\n        validate(url);\n        try {\n            return UrlUtility.toURI(url);\n        } catch (URISyntaxException e) {\n            throw new IllegalArgumentException(\"Value: '\" + config.url()\n                    + \"' of property 'quarkus.spring-cloud-config.url' is invalid\", e);\n        }\n    }\n\n    private void validate(String url) {\n        if (null == url || url.isEmpty()) {\n            throw new IllegalArgumentException(\n                    \"The 'quarkus.spring-cloud-config.url' property cannot be empty\");\n        }\n    }\n}\n","sourceCodeStart":11,"sourceCodeEnd":34,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/extensions/spring-cloud-config-client/runtime/src/main/java/io/quarkus/spring/cloud/config/client/runtime/DirectConfigServerBaseUrlProvider.java#L11-L34","documentation":"Before building the URI, DirectConfigServerBaseUrlProvider.validate() rejects a null or empty quarkus.spring-cloud-config.url value. The property is enabled for the Config Client but no server URL was actually supplied, so there is no endpoint to query. Fail-fast at startup prevents later opaque connection errors.","triggerScenarios":"Setting quarkus.spring-cloud-config.enabled=true (or relying on config-source activation) without defining quarkus.spring-cloud-config.url; the property being overridden to empty by an environment variable or profile; a typo like quarkus.spring-cloud-config.uri.","commonSituations":"Kubernetes deployments where the URL is injected via env var (SPRING_CLOUD_CONFIG_URL style) that is missing; enabling the extension in one profile while the url is only set in another.","solutions":["Set quarkus.spring-cloud-config.url=http://<config-server>:8888 in application.properties or via QUARKUS_SPRING_CLOUD_CONFIG_URL env var","If you do not need the Config Server, disable it with quarkus.spring-cloud-config.enabled=false","Check active profiles/env to confirm the property isn't blanked out"],"exampleFix":"// before\nquarkus.spring-cloud-config.enabled=true\n# url missing\n\n// after\nquarkus.spring-cloud-config.enabled=true\nquarkus.spring-cloud-config.url=http://config-server:8888","handlingStrategy":"validation","validationCode":"if (config == null || config.url() == null || config.url().isEmpty()) {\n    throw new IllegalStateException(\"quarkus.spring-cloud-config.url must be set\");\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Set the URL whenever discovery-enabled or the config client is enabled","Prefer env var QUARKUS_SPRING_CLOUD_CONFIG_URL in containers","Check profile overrides don't blank the property"],"tags":["quarkus","spring-cloud-config","missing-property","configuration"],"backgroundTag":"missing-config-property","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-12T22:17:10.623Z"}