Freemarker 将列表长度分配给局部变量

2024-02-03

以下 freemarker 代码会导致异常

<#assign i= it.getList().size()>
<#list it.getList() as elem>
    <#if i==1>
    <li>${elem.name}</li>
    <#else>
    <li class="marked">${elem.name}</li>
    </#if>
    <#assign i = i-1>
</#list>

抛出以下异常:

预期的哈希值。 it.getList() 评估为 freemarker.template.SimpleSequence

有人知道为什么吗?我如何将列表的长度分配给我的变量i?


我发现,它不理解的语法size built-in http://freemarker.sourceforge.net/docs/ref_builtins_sequence.html#ref_builtin_size。 将列表大小分配给局部变量的正确语法是

<#assign i = it.getList()?size>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Freemarker 将列表长度分配给局部变量 的相关文章

  • 为什么分配给多个目标(标识符/属性)会产生奇怪的结果?

    我有一些这样的代码 def foo bar initial bar Bar while True next bar Bar bar next bar next bar bar next bar return initial bar 其目的是
  • Kotlin 调用 Java 平台类型导致非法状态异常

    我在用着kotlin在我的一个 Android 课程中 它看起来像是IllegalStateException当试图从某个人那里获得额外的东西时 有时会在这条线上弹出Bundle keyOrTag bundle getString tag
  • 在现代 Perl 中编写异常类的最佳实践

    With Exception Class https metacpan org pod Exception Class 我可以将异常定义为类 并且一旦将它们加载到任何地方 它们就可以在任何地方使用 但是很多地方 包括 E C 本身的文档 都
  • 抛出旧异常的同时抛出新异常

    如果在由异常引起的堆栈展开期间 C 中的析构函数抛出异常 则程序将终止 这就是为什么析构函数永远不应该在 C 中抛出 示例 struct Foo Foo throw 2 whoops already throwing 1 at this p
  • Xunit 中的测试异常 ()

    我正在尝试对此方法编写 Xunit 测试 public async Task
  • 为什么我不能在 Java 8 lambda 表达式中引发异常? [复制]

    这个问题在这里已经有答案了 我升级到 Java 8 并尝试用新的 lamdba 表达式替换通过 Map 的简单迭代 该循环搜索空值 如果找到则抛出异常 旧的 Java 7 代码如下所示 for Map Entry
  • 在 Spring 中,为什么 POJO 上的 CGLib 的行号会丢失?

    Spring MVC Web 应用程序 我有一个不带行号的堆栈跟踪 显示在底部 我认为这是由于 CGLib 在控制器上运行所致 但这对我来说很奇怪 实际的异常发生在ServerBatchRemoteRequestAcceptor 一个没有注
  • 如何禁用浮点单元(FPU)?

    我想在 x86 系统中禁用 FPU MMX SSE 指令 并且我将为设备不可用异常实现一个处理程序 我已经提到过控制寄存器 wiki 页面 http en wikipedia org wiki Control register 看来我必须在
  • RuntimeException 以外的异常

    Java中除了RuntimeException之外还有其他可能发生的异常吗 谢谢 是的 有Three kinds 检查异常 编译器会让您知道何时可能会抛出它们 最有可能是由于环境中的故障 如果程序可以用它们做某事 则应该捕获它们 否则最好让
  • 如何处理过时的连接?

    我们的应用程序是一个 J2EE 应用程序 在 Websphere 6 1 上通过 Mainframe DB2 后端使用 Struts EJB Hibernate 最近已投入生产 我们收到过时的连接异常当用户第一次或有时登录应用程序时 此异常
  • Polly 策略记录异常并重新抛出

    我考虑使用Polly https github com App vNext Polly handing return values and policytresult创建策略来记录异常并重新抛出 我没有找到允许它开箱即用的现有方法 但我看到
  • GSON 是一个 Java Throwable

    我有一个对象 其中包含一段数据和关联的异常 Public class MyBean Private String data Private Exception problem 当我尝试GSON toJSON 对象 它给了我一个循环引用抱怨
  • 如何以编程方式区分不同的 IOException?

    我正在对写入 Process 对象的 StandardInput 流的代码进行一些异常处理 Process 有点像 unix head 命令 它只读取输入流的一部分 当进程终止时 写入线程会失败并显示 IOException The pip
  • Java 应用程序中 PKIX 路径构建失败

    将应用程序从 Windows 2000 迁移到 Windows 2008 R2 Server 后 我花了将近一周的时间才让我的应用程序正常运行 步骤 安装Java JDK 1 7 0 25 设置系统环境变量JAVA HOME to C Pr
  • 当整数被零除时,msvc 6 会抛出什么异常?

    我做了一些实验 发现当整数除以零时会引发异常 include
  • C++运行时如何确定抛出的异常的类型?

    如果我执行以下操作 运行时如何确定抛出的异常的类型 它使用 RTTI 吗 try dostuff throws something catch int e catch const char e catch const myexception
  • C++ 支持“finally”块吗? (我经常听到的“RAII”是什么?)

    C 是否支持 finally http java sun com docs books tutorial essential exceptions finally html 块 是什么RAII 习语 http en wikipedia or
  • 不要在异常堆栈中显示 Python raise-line

    当我在 Python 库中引发自己的异常时 异常堆栈将引发行本身显示为堆栈的最后一项 这显然不是一个错误 在概念上是正确的 但是当您在外部使用代码 例如作为模块 时 它会将重点放在对调试无用的东西上 有没有办法避免这种情况并强制 Pytho
  • CTRL+C 和 CTRL+Break 不同吗?

    我一直认为它们绝对是一样的 但我刚刚在以下位置找到了一些值 CTRL C EVENT 和 CTRL BREAK EVENT设置控制台Ctrl处理程序 http msdn microsoft com en us library ms68601
  • Spring - 捕获bean创建异常

    我想在我的代码中捕获 bean 实例化异常 我有什么选择 一种方法是使用基于 Java 的容器配置 Configuration public class AppConfig Bean public SomeBean someBean try

随机推荐