Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix resolution of references #2

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

henrikno
Copy link

@henrikno henrikno commented Mar 9, 2020

Resolve failed with the following exception when using references:
Exception in thread "main" com.typesafe.config.ConfigException$BugOrBroken: replace in parent not possible
or
Exception in thread "main" com.typesafe.config.ConfigException$UnresolvedSubstitution: Reader: 2: Could not resolve substitution to a value: ${a}

The docs for resolveWith says:

Note that this method does NOT look in this instance for substitution values.

Which means we can't refer to variabled in the same config.
It also says:

If you want to do that, you could either merge this instance into
your value source using Config.withFallback, or you could resolve
multiple times with multiple sources (using setAllowUnresolved).

I tried using withFallback, but the same error still occurred.
This might be due to a bug in typesafe config: lightbend/config#332 lightbend/config#499

This works around that by resolving multiple times as suggested
in the javadoc.

Fixes #1

henrikno added 2 commits March 9, 2020 16:16
Resolve failed with the following exception when using references:
Exception in thread "main" com.typesafe.config.ConfigException$BugOrBroken: replace in parent not possible

The docs for resolveWith says:
> Note that this method does NOT look in this instance for substitution values.

Which means we can't refer to variabled in the same config.
It also says:
> If you want to do that, you could either merge this instance into
> your value source using Config.withFallback,  or you could resolve
> multiple times with multiple sources (using setAllowUnresolved).

I tried using withFallback, but the same error still occurred.
This might be due to a bug in typesafe config:
lightbend/config#332

This works around that by resolving multiple times as suggested
in the javadoc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

substitution not working inside user doc.
1 participant