Java 中带参数的 XSL 转换 [英] XSL Transformation in Java with parameters
本文介绍了Java 中带参数的 XSL 转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个 xsl 文件,我需要在其中使用来自外部源的参数.我正在使用 Java,我的代码如下所示:
I have a xsl file where i need to use parameters from an external source. I am using Java and my code looks something like this:
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer xsltTransformer = transformerFactory.newTransformer(xsltSource);
xsltTransformer.setParameter(parameterName, parameterValue);
但是,在第 2 行抛出异常 - 未定义变量或参数variable_name".我意识到 XSL 已编译,并且可能在创建转换器时编译.
However, an exception is thrown at the 2nd line - Variable or parameter 'variable_name' is undefined. I realize that XSL is compiled and is probably compiled when the transformer is created.
那么,我如何将参数传递给我的转换?setParameter 方法应该如何使用?
So, how do i pass parameters to my transformation? How is the setParameter method supposed to be used?
推荐答案
如果你传递一个参数,如:
If you pass a parameter like:
transformer.setParameter("render_id", "1234");
该参数可以被转换提取:
the parameter can be picked up by the transform:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="xml" encoding="UTF-8" omit-xml-declaration="yes"/>
<!-- Receives the id of the menu being rendered. -->
<xsl:param name="render_id" />
这篇关于Java 中带参数的 XSL 转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文