Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将jstl函数转换为freemarker_Java_Jsp_Jstl_Freemarker - Fatal编程技术网

Java 将jstl函数转换为freemarker

Java 将jstl函数转换为freemarker,java,jsp,jstl,freemarker,Java,Jsp,Jstl,Freemarker,我需要将jsp页面转换为freemarker模板。我使用了一些jstl函数,我需要将这些函数带到freemarker中,并且我需要一些帮助来编写freemarker代码,该代码对jsp中的实际jstl执行相同的调用。 感谢您的帮助 taglib.tld <taglib> ... <function> <name>isBeanType</name> <function-class>my.BeanUtils</function-c

我需要将jsp页面转换为freemarker模板。我使用了一些jstl函数,我需要将这些函数带到freemarker中,并且我需要一些帮助来编写freemarker代码,该代码对jsp中的实际jstl执行相同的调用。 感谢您的帮助

taglib.tld

<taglib>
...
<function>
 <name>isBeanType</name>
 <function-class>my.BeanUtils</function-class>
 <function-signature>boolean isBeanType(Object,String)</function-signature>
</function>
...
</taglib>

...
isBeanType
我的小海狸
布尔isBeanType(对象、字符串)
...
要在Freemarker脚本中转换的jsp代码段:

..
 <c:if test="${t:isBeanType(bean, 'my.BeanClass')}">
..
。。
..

Freemarker可以轻松调用带或不带参数的静态方法:

,所以只需在模型中的某个地方实现isBeanType方法并调用它。 以下是完整的独立示例:

从Freemarker 2.23.22开始,它支持自定义JSTL函数。所以你可以这样使用它:

<#if t.isBeanType(bean, "my.BeanClass")>
  ...
</#if>

...
有关详细信息,请参阅“FreemarkerServlet改进:”部分[1]

[1]