【问题标题】:HOWTO use freemarker tag library in jsp files?如何在 jsp 文件中使用 freemarker 标签库?
【发布时间】:2012-03-01 01:21:30
【问题描述】:

如果可能的话,我想知道如何在 jsp 文件中使用 freemarker 标记库。我正在使用 Struts2 框架。目前我没有足够的带宽将项目中的所有 jsp 文件转换为 ftl 文件,因此是个难题。

我查看了http://freemarker.sourceforge.net/docs/pgui_misc_servlet.html#autoid_57,但它并没有说太多。

【问题讨论】:

    标签: java struts2 freemarker taglib


    【解决方案1】:

    我找到了这个标签的 javadocs:http://freemarker.sourceforge.net/docs/api/freemarker/ext/jsp/FreemarkerTag.html 但我真的没有找到任何使用它的例子。它应该做你所说的事情,我正在寻找同样的事情。

    【讨论】:

      【解决方案2】:

      在我工作的地方,我们一直在做同样的事情,我们创建了一个自定义标签库,其中包含我们放入 JSP 中的每个模板的标签。

      例如: 我们有 productSpecs.ftl 正在替换产品页面上的一些内容。 我们已经创建了一个标记库(名为 ftl)并正在放入我们的 JSP。 我们已经做了一些 Java 魔术,以便我们为 taglib 中的每个标签都有一个 Java 类。换句话说,有一个名为 ProductSpecs.java 的类,它基本上只是加载同名的 ftl 文件,并将其与我们的 JSON 数据结合起来,然后将输出写入 html。

      还有比我上面详述的更多的工作,但我的意思是这完全有可能。

      【讨论】:

        【解决方案3】:

        您不能在 JSP 文件中使用 FreeMarker 指令(标签)(除非有人为此编写了 JSP 标签库,但我强烈怀疑这一点)。 (FreeMarker 模板可以使用 JSP 标签,但有限制,但这不是您要的。)

        【讨论】:

          【解决方案4】:

          Struts 2 标记库是在 JSP 标记、Velocity 标记和 Freemarker 标记中实现的。每种视图层技术的语法略有不同,但都有很好的文档记录。

          http://struts.apache.org/2.x/docs/struts-tags.html

          【讨论】:

            【解决方案5】:

            如果你想用 Free marker 模板代替标准 struts2 模板,我相信框架提供了对此的扩展。

            FreeMarker 标签是框架提供的通用Struts Tags 的扩展。您只需了解可以访问标签的通用结构即可直接进入:<@s.tag> ...</@s.tag>,其中标签是框架支持的任何标签。

            更多详情请参考官方文档。

            Freemarker-tags

            【讨论】:

              猜你喜欢
              • 2011-10-25
              • 2011-06-02
              • 2011-04-27
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2019-04-27
              • 2015-05-17
              • 2013-06-12
              相关资源
              最近更新 更多