如何使用spring-cloud-config服务器将属性注入现有的xml文件中

问题描述 投票:0回答:1

我的xml看起来像这样:

<bean id="dataSourceMaster" class="com.jolbox.bonecp.BoneCPDataSource">
    <property name="driverClass" value="com.mysql.jdbc.Driver"/>
    <property name="jdbcUrl" value="jdbc:mysql://${db.url}?useUnicode=true&amp;characterEncoding=UTF8&amp;characterSetResults=UTF8&amp;autoReconnect=true"/>
    <property name="username" value="${db.username}"></property>
    <property name="password" value="${db.password}"></property>
    ...
</bean>

在spring.xml中,我试过这个:

<context:property-placeholder location="${spring.cloud.config.sync.url}" ignore-unresolvable="true" />

但是cloud-config服务器使用basic-auth,我试图设置spring.cloud.config.sync.url = http://user:pass@url/config-name/profile/label

,但启动时应用程序返回401错误。

如何解决这个问题,还是有一种优雅的方法来解决从cloud-config服务器注入现有xml的属性?

谢谢。

java spring spring-cloud
1个回答
0
投票

我们不能在PropertyPlaceholderConfigurer中注入$ {...}表达式。这已经有一个JIRA Ticket了。但是,此票证中有可用的解决方法,可以解决您的问题。

© www.soinside.com 2019 - 2024. All rights reserved.