quarkusio/quarkus · critical · ConfigurationException
Proxy configuration '${name}' was specified, but it does not
Error message
Proxy configuration '${name}' was specified, but it does not exist. What it means
At build time the GraphQL client recorder resolves the proxy configuration named by clientConfig.proxyConfigurationName through the proxy configuration registry. If the registry has no entry under that name, a ConfigurationException is thrown and startup fails. The message placeholder ${name} is the configured proxy configuration name.
Source
Thrown at extensions/smallrye-graphql-client/runtime/src/main/java/io/quarkus/smallrye/graphql/client/runtime/SmallRyeGraphQLClientRecorder.java:278
throw new ConfigurationException("TLS configuration '" + quarkusConfig.tlsConfigurationName().get()
+ "' was specified, but no TLS configuration registry could be found.");
}
}
}
return Optional.empty();
}
private Optional<ProxyConfiguration> resolveProxyConfiguration(GraphQLClientConfig clientConfig) {
if (Arc.container() != null) {
ProxyConfigurationRegistry proxyConfigurationRegistry = Arc.container().select(ProxyConfigurationRegistry.class)
.orNull();
if (proxyConfigurationRegistry != null) {
if (clientConfig.proxyConfigurationName().isPresent()) {
// explicit proxy config
Optional<ProxyConfiguration> namedConfig = proxyConfigurationRegistry
.get(clientConfig.proxyConfigurationName());
if (namedConfig.isEmpty()) {
throw new ConfigurationException("Proxy configuration '" + clientConfig.proxyConfigurationName().get()
+ "' was specified, but it does not exist.");
}
return namedConfig;
} else {
// no explicit proxy config -> get the default proxy configuration if it exists
return proxyConfigurationRegistry.get(Optional.empty());
}
} else {
if (clientConfig.proxyConfigurationName().isPresent()) {
throw new ConfigurationException("Proxy configuration '" + clientConfig.proxyConfigurationName().get()
+ "' was specified, but no Proxy configuration registry could be found.");
}
}
}
return Optional.empty();
}
record TlsClientInfo(String tlsConfigName, HttpClient httpClient) {View on GitHub (pinned to e1c734241f)
Solutions
- Define a proxy configuration registered under exactly that name in the registry
- Fix or remove the proxy-configuration-name property
- Remove the property entirely to use the default proxy configuration (if one is registered)
Example fix
// before quarkus.smallrye-graphql-client.my-client.proxy-configuration-name=corp-proxy // (no proxy named corp-proxy registered) // after — register it or use the default quarkus.smallrye-graphql-client.my-client.proxy-configuration-name=corporate-proxy // plus a registry entry named "corporate-proxy"
Defensive patterns
Strategy: validation
Validate before calling
// Check the property before starting clients
Optional<String> proxyName = ConfigProvider.getConfig()
.getOptionalValue("quarkus.smallrye-graphql-client.my-client.proxy-configuration-name", String.class);
proxyName.ifPresent(n -> {
if (!proxyRegistry.get(Optional.of(n)).isPresent()) {
throw new IllegalStateException("Proxy configuration '" + n + "' is not registered");
}
}); Try / catch
try {
client.query("...").execute();
} catch (ConfigurationException e) {
if (e.getMessage().startsWith("Proxy configuration")) {
throw new IllegalStateException("Registered proxy names must match proxy-configuration-name", e);
}
throw e;
} Prevention
- Centralize proxy names as constants shared with the registry registration code
- Add a startup test asserting all referenced proxy names resolve
- Document every registered proxy name next to its definition
- Prefer the default proxy configuration when one global proxy suffices
When it happens
Trigger: quarkus.smallrye-graphql-client.<client>.proxy-configuration-name (or equivalent client config) is set to a name for which no proxy configuration is registered in the ProxyConfigurationRegistry.
Common situations: Typo in the proxy name; proxy defined only for another client/scope; proxy config section removed during refactor; environment-specific profiles defining the proxy in one profile but the name referenced globally.
Related errors
- Proxy configuration '${name}' was specified, but no Proxy co
- Cannot find the Proxy registry configuration '%s'
- ${prefix}.username and ${prefix}.password must be both set o
- Could not retrieve ${missingKeys} from credentials provider
- Proxy configuration with name ${key} was requested but quark
AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05).
Data as JSON: /api/errors/8cccd11cb84a643a.
Report an issue: GitHub.