带参数的Java中的XSL转换

我有一个xsl文件,我需要使用外部源的参数。 我正在使用Java,我的代码看起来像这样:

TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer xsltTransformer = transformerFactory.newTransformer(xsltSource); xsltTransformer.setParameter(parameterName, parameterValue); 

但是,在第二行抛出exception – 变量或参数’variable_name’未定义。 我意识到XSL是经过编译的,可能是在创建变换器时编译的。

那么,我如何将参数传递给我的转换? 如何使用setParameter方法?

如果你传递一个参数,如:

 transformer.setParameter("render_id", "1234"); 

该参数可以通过变换获取:

     

rsp的答案很明显。 谢谢。 只是想补充一点,你不能以同样的方式将参数传递给变量(我通过Java的TransformerFactory设置参数)。

我犯了错误,认为变量和参数是可以互换的:)