将绝对文件路径从java代码传递给xslt document()
在我的xslt中,我想查找一个xml文件。 我需要从java代码传递这个文件的路径。我有以下几点:
... Transformer transformer = TRANSFORMER_FACTORY.newTransformer(); transformer.setParameter("mypath", "/home/user/repository");
XSLT:
... ...
问题是我想将一个绝对的“基本”路径传递给xsl,我希望将其与实际的xml文件名(myfile.xml)结合起来。 在我看来, document
考虑了相对于xsl位置的文件参数。 此外,我注意到该参数未从java代码中获取。 我使用JABX和默认的Xalan XSLT处理器(1.0)我尝试了许多基于其他SOpost传递参数的变体,但没有成功。
您需要使用完整的文件URL构造一个字符串: document(concat('file://', $mypath, '/myfile.xml'))
。