规则或脚本可以转换为Java和XSLT的语言

时间:2012-02-14 12:24:27

标签: java xslt code-generation

是否有任何规则或脚本语言存在一个或多个Java库以将其转换为Java和XSLT?

为了转换为Java,它可以生成Java源代码或java字节代码。它需要很容易从Java调用和“轻量级”/高性能。

对于XSLT ...生成等效的函数或模板或操纵值的内容并返回结果。

通过转换,我的意思是有人用某种语言编写代码(规则/脚本/无论如何)。然后我在该代码上运行一些“转换”,我得到Java代码(源代码或字节码)。我在同一个代码上运行了一些其他“转换”,我得到了XSLT代码。

由于我猜测XSLT案例难以解决,这里有一个简化的可能示例:

输入规则/脚本语言:

// Some language psuedocode
output(concat(value1, value2, value3))

输出XSLT:

<xsl:value-of select="concat($value1, $value2, $value3)"/>

3 个答案:

答案 0 :(得分:1)

Groovy浮现在脑海中,您可以根据需要输入java,或者使用更有效的语法。

它也被有效地扩展到Grails,这是Groovy on Rails。 SpringSource支持两者,性能高,重量轻。它们将编译为Java字节码。

有一个关于使用Groovy with XSLT的链接,你提到你要将脚本“转换”为XSTL,不确定你的意思,但你肯定可以使用XSLT和groovy。

如果你需要创建某种模板来生成java代码,html,文本,电子表格,几乎任何东西都有Apache Velocity,这是一个模板语言/引擎来引用java代码中定义的对象。

BeanShell是另一个,语法就像java一样,它是一种脚本语言,根据我的经验,您可以在Java中使用BeanShell做的任何事情。

答案 1 :(得分:0)

您可以随时尝试使用antlr并实现自己的解析器/转换器。

答案 2 :(得分:0)

Xalan XSLTC支持将xslt编译为java字节码,因此如果xslt符合您可能的脚本语言定义。对xslt的编译只是身份转换:)