Я хочу вставить некоторые значения из YAML в контекст Spring. Структура YAML аналогична, поэтому я не хотел дублировать код, но запуск Spring завершается ошибкой, потому что он не может ввести значение в заполнитель.
Обратите внимание на мой application.properties
:
server.port=8084
activeProfile=dev
autoAgents.supplier.id=0
autoAgents.supplier.name=test
autoAgents.supplier.serviceType=REST
autoAgents.supplier.authType=1
autoAgents.supplier.adapter=test
autoAgents.supplier.username=test
autoAgents.supplier.secret=test
autoAgents.supplier.apiPassword=12345
autoAgents.client.id=1
autoAgents.client.name=test
autoAgents.client.serviceType=REST
autoAgents.client.authType=1
autoAgents.client.adapter=
autoAgents.client.username=test
autoAgents.client.secret=test
autoAgents.client.apiPassword=12345
Затем я вставляю эти значения в YAML, application.yml
activeProfile: ${activeProfile}
autoAgents:
supplier:
isSupplier: true
meta:
id: ${autoAgents.supplier.id}
name: ${autoAgents.supplier.name}
serviceType: ${autoAgents.supplier.serviceType}
authType: ${autoAgents.supplier.authType}
adapter: ${autoAgents.supplier.adapter}
credentials:
username: ${autoAgents.supplier.username}
secret: ${autoAgents.supplier.secret}
apiPassword: ${autoAgents.supplier.apiPassword}
client:
isSupplier: false
meta:
id: ${autoAgents.client.id}
name: ${autoAgents.client.name}
serviceType: ${autoAgents.client.serviceType}
authType: ${autoAgents.client.authType}
adapter: ${autoAgents.client.adapter}
credentials:
username: ${autoAgents.client.username}
secret: ${autoAgents.client.secret}
apiPassword: ${autoAgents.client.apiPassword}
И затем я импортирую это в контекст свойства конфигурации:
@Configuration
@EnableConfigurationProperties
@ConfigurationProperties
@Data
public class TwoConnectConfigurationProperties {
private String activeProfile;
@Value("${autoAgents.supplier}")
private AutoAgentDup supplier;
@Value("${autoAgents.client}")
private AutoAgentDup client;
}
Но @Value("${autoAgents.supplier}")
не работает.
Посоветуйте, пожалуйста.