无法在Spring Bean BasicDataSource中注入Bean属性

时间:2017-12-06 13:53:42

标签: apache-camel jbossfuse


我试图在BasicDataSource中使用从Bean类派生的用户名和密码:

<bean class="org.apache.commons.dbcp.BasicDataSource" id="myDataSource">
    <property name="driverClassName" value="org.teiid.jdbc.TeiidDriver"/>
    <property name="url" value="jdbc:myurl"/>
    <property name="username" value="${bean:quickstartConfiguration?method=getQueueUsername}"/>
    <property name="password" value="${bean:quickstartConfiguration?method=getQueuePassword}"/>
    <property name="maxIdle" value="1"/>
</bean>

在我的项目中,我有一个名为QuickStartConfiguration的Bean类,其方法是getQueueUser和getQueuePassword。 不幸的是,当路由被实例化时,似乎没有解析用户名和密码:

 The username "quickstartConfiguration?method=getQueueUsername" and/or password and/or payload token could not be authenticated by security domain ldap-security.)

奇怪的是,无论使用日志组件,我都可以从Bean中检索实际值:

 <log id="async-queue-cred-log" message="----> Using username '${bean:quickstartConfiguration?method=getQueueUsername}' for the async queue"/>

BasicDataSource类是否有任何限制阻止评估Bean表达式? 谢谢!

0 个答案:

没有答案