Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 向Solr数据导入的数据配置添加变量_Xml_Xslt_Solr - Fatal编程技术网

Xml 向Solr数据导入的数据配置添加变量

Xml 向Solr数据导入的数据配置添加变量,xml,xslt,solr,Xml,Xslt,Solr,我尝试向data-config.xml添加变量以进行Solr数据导入,但在尝试执行数据导入时收到以下错误消息: 数据配置问题:元素xsl:variable的前缀xsl为 不受约束 我尝试了以下data-config.xml: <?xml version="1.0" encoding="UTF-8"?> <xsl:variable name="fileName" select="6781" /> <dataConfig> <dataSource name=

我尝试向data-config.xml添加变量以进行Solr数据导入,但在尝试执行数据导入时收到以下错误消息:

数据配置问题:元素xsl:variable的前缀xsl为 不受约束

我尝试了以下data-config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:variable name="fileName" select="6781" />
<dataConfig>
<dataSource name="a" driver="net.ucanaccess.jdbc.UcanaccessDriver" type="JdbcDataSource" url="jdbc:ucanaccess://E:/feqh/Wak1/Wak1/main.mdb;memory=false"/>

<dataSource name="a1" driver="net.ucanaccess.jdbc.UcanaccessDriver" type="JdbcDataSource" url="jdbc:ucanaccess://E:/feqh/Wak1/Wak1/${fileName}.mdb"/>

<document>
    <entity name="Book" dataSource="a" query="select bkid AS id, bkid AS BookID,bk AS BookTitle, betaka AS BookInfo, cat as cat from 0bok WHERE bkid = ${fileName}">

我使用PHP脚本动态地更改配置文件,我需要一个地方,即变量来更改其值,然后将其传播到所有需要它的地方。可能吗?我使用的xslt代码中有错误吗

从技术上讲,这里的XML不是XSLT表,因为这需要标记和名称空间xsl的声明。因此,您要做的是将XSLT表的一个片段插入到未声明名称空间的XML配置文件中。这不太可能奏效。我假设,如果在配置设置中有任何处理变量的机制,它们可能不会使用XSLT名称空间和标记。这样,您就可以将任何变量传播到许多配置文件中。但是,为此,您需要:a输入文件的定义,b XSLT表,c XSLT处理器可能由PHP提供。您是否可以使用将变量移动到属性文件中所述的第二种方法?@cheffe您的意思是不编辑data-config.xml本身,我应该编辑core.properties,然后在data config.xml中传播变量?我的想法就是这样。您可以使用脚本更改属性文件。当然,您需要在更改后重新加载配置,但无论如何都需要这样做。