2014-09-29 238 views
0

我正在使用JForum,并且想要访问Freemarker模板文件中的请求参数。 我GOOGLE了一下,并没有任何运气尝试以下。使用JForum访问Freemarker模板中的请求参数

${RequestParameters.paramName} 
${RequestParameters['paramName']} 
${args['paramName']} 
${param.paramName} 

它们都返回RequestParameters是未定义的或args是未定义的错误类型。

我看到一些问题,比如“你如何使用Spring MVC访问Freemarker模板中的请求参数?”但我无法从这些问题和答案中获得帮助。

跟进

所以据我已经找到了,Freemarker的不透露这些信息。你需要自己添加这些信息。

我从javaranch.com得到了一些帮助。这里是链接,如果它可以帮助任何人询问相同的问题:Access request parameters in Freemarker templates

回答

0

也许JForum根本不公开请求参数。 FreeMarker不像JSP,它不绑定到Servlet-s。嵌入FreeMarker的库/框架决定它是否会公开请求(以及会话等),以及如何。更清洁的应用程序不会那样做。它打破了关注点(和纯粹的MVC)的分离。

+0

如果它打破了问题的分离,我该怎么办?我不想把这个应用程序变成意大利面条。那么,是在视图层上使用参数信息,打破了关注的分离?那我该如何避免呢? – Ascendant 2014-09-29 07:21:25

+0

HTTP请求参数是技术细节。如果您需要显示某些内容,则将其放入FreeMarker数据模型中,对于模板而言,它不会来自哪里(来自请求参数,来自会话,来自数据库查询等)。尽管我不知道该参数的具体含义,但是如果JForum有一些插件机制可以让您将该值放入数据模型中。 – ddekany 2014-09-29 20:35:49