如何将参数传递给xsl文件并使用它来响应

时间:2011-12-05 07:53:41

标签: xslt xslt-2.0

我有和xsl文件在UI上呈现问题。 该课题分布在不同的分类中。

现在我的要求是将参数从java代码传递给xsl文件,并根据该参数我想执行特定的操作来生成UI。

任何正文可以帮我建议如何从JAVA代码传递参数到XSL文件吗?

示例:

/form/A/Question-Category,
/form/B/Question-Category,
/form/c/Question-Category,
/form/D/Question-Category

A,B,C,D是我将从java代码传递的类别,并使用该令牌来获取我的XPATh问题 假设从Java代码传递的令牌是B,那么表达式将是'/form/B/Question-Category'

现在我的障碍是我不知道如何从java代码传递参数以及如何在XSL中使用它?

1 个答案:

答案 0 :(得分:1)

声明参数如下:

<xsl:param name="category"/>

像这样使用

select="/form/*[name()=$category]/Question-Category

然后从Java传递它(假设您使用的是JAXP API):

transformer.setParameter("category", "a");

顺便说一句,我认为这不是一个特别聪明的XML文档设计。我认为类别列表是数据而不是元数据,所以我会使用<category name="A">而不是<A>来定义类别A.但是您的课程导师可能有其他想法(我认为这是学生练习,因为实施调查问卷通常是。)