【发布时间】:2019-10-03 20:32:49
【问题描述】:
按照here 的指导,我正在尝试将 Solr (7.5) 数据导入处理程序的用户名/密码设置为动态的。
这是我的数据配置:
<dataConfig>
<dataSource
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://mysqlconnectionstring"
user="${dataimporter.request.jdbcuser}"
password="${dataimporter.request.jdbcpassword}"/> ...
还有 solrconfig:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
但是,当我执行 dataimport 命令(例如http://mysolr.something/solr/dataimport?command=full-import&jdbcuser=foo&jdbcpassword=bar)时,我得到(部分)这样的响应:
"initArgs": [
"defaults",
[
"config",
"data-config.xml",
"datasource",
[
"driver",
"com.mysql.jdbc.Driver",
"url",
"jdbc:mysql://mysqlconnectionstring",
"user",
"",
"password",
""
]
]
]
如果我查看 solr 日志,我会看到如下条目:
18:56:32.076 [qtp1076770748-18] INFO org.apache.solr.handler.dataimport.DataImporter - 加载 DIH 配置:data-config.xml
18:56:32.087 [qtp1076770748-18] INFO org.apache.solr.handler.dataimport.DataImporter - 数据配置加载成功
18:56:32.087 [qtp1076770748-18] INFO org.apache.solr.handler.dataimport.DataImporter - 获取全局数据源的配置...
18:56:32.087 [qtp1076770748-18] INFO org.apache.solr.handler.dataimport.DataImporter - 向数据源添加属性:{password=, driver=com.mysql.jdbc.Driver, user=, url= jdbc:mysql://mysqlconnectionstring}
我只是不知道我在这里缺少什么,为什么它不会从请求中读取用户名/密码并从中填充数据源?
【问题讨论】: