当前位置: 首页 > 知识库问答 >
问题:

FreeMarker模板错误:以下内容已计算为null或缺失,但不为TRUE

彭涵衍
2023-03-14

我面临的错误太奇怪了。一切看起来都很好,但是当浏览器向服务器发送get请求时,我得到了这个错误。我要做的实际上是捕获HTTP参数,将它们保存在一个对象中,该对象保存在ArrayList中,发送给Freemarker模板。

你能帮帮我吗?多谢.

  final FreeMarkerEngine freeMarkerEngine = new FreeMarkerEngine();
    final Configuration freeMarkerConfiguration = new Configuration();
    freeMarkerConfiguration.setTemplateLoader(new ClassTemplateLoader(App.class, "/"));
    freeMarkerEngine.setConfiguration(freeMarkerConfiguration);

    get("/rest", (request, response) -> {
        Double lat1 = Double.parseDouble(request.queryParams("lat1") != null ? request.queryParams("lat1") : "anonymous");
        Double lon1 = Double.parseDouble(request.queryParams("lon1") != null ? request.queryParams("lon1") : "anonymous");
        Double lat2 = Double.parseDouble(request.queryParams("lat2") != null ? request.queryParams("lat2") : "anonymous");
        Double lon2 = Double.parseDouble(request.queryParams("lon2") != null ? request.queryParams("lon2") : "anonymous");

        if (shouldReturnHtml(request)) {
            response.status(200);
            response.type("text/html");
            Map<String, Object> attributes = new HashMap<>();
            attributes.put("list",loadTheList(lat1,lon1,lat2,lon2));
            return freeMarkerEngine.render(new ModelAndView(attributes, "/view/result.ftl"));
        }
        else {
            response.status(200);
            response.type("application/json");
            return null;
        }
    });


}

private static boolean shouldReturnHtml(Request request) {
    String accept = request.headers("Accept");
    return accept != null && accept.contains("text/html");
}
public static ArrayList<Bereken> loadTheList(double lat1, double lon1, double lat2, double lon2) {
    ArrayList<Bereken> list = new ArrayList<>();
    list.add(new Bereken(lat1,lon1,lat2,lon2));
    return list;
}
      <#list list as item>
        <h2>${item.lat1}</h2>
        <h2>${item.lon1}</h2>
        <h2>${item.lat2}</h2>
        <h2>${item.lon2}</h2>
    </#list>

共有1个答案

太叔何平
2023-03-14

您正在将Bereken类的1个实例添加到“列表”中。所以我假设Bereken类不提供公共属性lat1、lat2、lon1、lon2或协同响应getter方法。

 类似资料:
  • 我得到以下异常: FreeMarker模板错误:以下内容已计算为null或缺少:==>log.stepname[在模板“extent.offline.ftl”中,第297行,第93列]

  • 以上是我正在开发的Spark应用程序的主要方法。它涉及两个模板:loginform.ftl和result.ftl。ftl是一个简单的html表单,它向服务器发送post请求,由上面代码中的post处理程序处理。当我填写表单并发送请求时,我得到一个500内部服务器错误。这个错误与result.ftl有关,我现在用它来测试模板的制作。我将一个HashMap传递给result.ftl模板。我得到的错误是

  • 当我点击登录按钮并通过数据库成功登录后,它被重定向到hello.ftl页面。但是ftl页面显示此错误 FreeMarker模板错误(调试模式;在生产中使用RETHROW!):以下内容的计算结果为null或missing:==>var[在模板“hello.ftl”第8行,第32列]----提示:如果已知失败的表达式在法律上引用了有时为null或missing的内容,可以指定默认值,如myoption

  • 我正试图提交一份表格,但出现了此错误 查询异常在Connection.php647行:SQLSTATE[23000]:完整性约束违反:1048列内容不能为空(SQL:插入到(,,,,)值(主, , [], 2017-03-28 11:10:58, 2017-03-28 11:10:58)) 内容应该可以为空。 我的迁移表 我的存储方法

  • 我正在用Spring MVC和Thymeleaf作为我的ViewResolver开发一个web应用程序。我有以下控制器处理程序方法: 我的视图包含以下行: 执行时,标签不会呈现为任何内容。这可能是由于评估为空字符串,但我不明白为什么。Spring的注释不是自动将对象添加到模型映射中,Thymeleaf可以在其中找到它吗? 如果我有: 通过错误消息,视图呈现得非常好。@ModelAttribute是