当我点击登录按钮并通过数据库成功登录后,它被重定向到hello.ftl页面。但是ftl页面显示此错误
FreeMarker模板错误(调试模式;在生产中使用RETHROW!):以下内容的计算结果为null或missing:==>var[在模板“hello.ftl”第8行,第32列]----提示:如果已知失败的表达式在法律上引用了有时为null或missing的内容,可以指定默认值,如myoptionalvar!mydefault,或者使用<#If myoptionalvar??>when-present<#els>when-missing。(这些仅覆盖表达式的最后一步;要覆盖整个表达式,请使用圆括号:(myoptionalvar.foo)!mydefault,(myoptionalvar.foo)??-------FTL堆栈跟踪(“~”表示嵌套相关):--失败处:#macro url relationveurl extra...[在模板“spring.FTL”中,在宏“url”第89行,第1列]--通过:@spring.url“/logout”,var=“logouturl”[在模板“hello.FTL”中,第8行,第9列]----Java堆栈跟踪(针对程序员)在freemarker.core.invalidreferenceexception.getinstance(invalidreferenceexception.Java:134),在freemarker.core.evalutil.compare(evalutil.Java:196),在freemarker.core.evaluitil.compare(evalutil.Java:113),在freemarker.core.evaluitil.compare(evalutil.Java:113),在freemarker.core.comparisonexpression.evaltoBoolean(
<#import "/spring.ftl" as spring>
<html>
<body>
Welcome
<!-- For login user -->
<@spring.url '/logout' var="logoutUrl"/>
<form action="${logoutUrl}" method="post" id="logoutForm">
<input type="hidden" name="${_csrf.parameterName}"
value="${_csrf.token}" />
</form>
<script>
function formSubmit() {
document.getElementById("logoutForm").submit();
}
</script>
<#if "${pageContext.request.userPrincipal.name != null}"?? >
<span><h2>
User : ${pageContext.request.userPrincipal.name} | <a
href="javascript:formSubmit()"> Logout</a>
</h2></span>
</#if>
</body>
</html>
请告诉我解决方案,为什么这个代码不起作用
它试图将var=“logouturl”
解释为var==“logouturl”
,从而查找名为var
的变量。为了避免这种情况,所有参数都必须按名称传递:
<@spring.url relativeUrl='/logout' var="logoutUrl"/>
尽管给定了额外的参数名称和值,但我不确定您想用它实现什么。也许您只是想要<@spring.url logoutUrl/>
?
以上是我正在开发的Spark应用程序的主要方法。它涉及两个模板:loginform.ftl和result.ftl。ftl是一个简单的html表单,它向服务器发送post请求,由上面代码中的post处理程序处理。当我填写表单并发送请求时,我得到一个500内部服务器错误。这个错误与result.ftl有关,我现在用它来测试模板的制作。我将一个HashMap传递给result.ftl模板。我得到的错误是
在我的应用程序中,所有freemarker模板都位于/templates/ftl/中,因此在应用程序部署期间,我加载了一个类,我调用了一个扩展FreemarkerManager并具有方法的类 这样,当我需要加载模板文件时,我可以这样做: 仅在一种特定情况下,我需要获得一个来自完全不同路径的模板(而不是/templates/ftl/)。 如何在这个特定的时刻声明模板加载的第二个目录,而不破坏所有调用
我的文件在src/main/Resources/freemarker/email_notification.txt 我无法读取freemaker文件,即电子邮件通知。txt,其中包含html文件。 我的推荐信来自这里:http://websystique.com/spring/spring-4-email-using-velocity-freemaker-template-library/ 我尝试
我正在使用freemarker模板生成电子邮件。我将freemarker与spring结合使用。我很难用参数替换来实现国际化。我用它来代替一个参数。例子: 消息你好=你好,{0} 在fm模板中,我有 然而,我无法弄清楚如何进行多参数替换。 消息你好{0},欢迎来到{1} 我如何在模板中表示这一点?当我尝试以下方法时: 它不起作用。你能帮忙吗?当做
我正在尝试使用从多个位置加载模板。这个项目是使用开发的。 我有两个maven项目: > 我的网站:maven的主要项目,包含自定义模板,例如WEB-INF/ftl/landing/login。ftl 通用模板:包含位于WEB-INF/ftl的通用freemarker模板,例如WEB-INF/ftl/landing/login。ftl 例如,Freemarker的想法是在“我的网站”中搜索登陆/登录
问题内容: 如何配置freemarker以在多个jar中搜索模板?随着春天。 一个war文件(要部署)和jar文件(依赖项)。 一战 /freemarker/simple.ftl Two.jar /freemarker/test.ftl 工作。 不工作。找不到test.ftl 如果设置为: 一战 /freemarker/simple.ftl Two.jar /freemarker2/test.ft