我试图在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表达式? 谢谢!