Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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
Liferay Freemaker:如何在模板中获取请求对象?_Liferay_Freemarker_Liferay Theme - Fatal编程技术网

Liferay Freemaker:如何在模板中获取请求对象?

Liferay Freemaker:如何在模板中获取请求对象?,liferay,freemarker,liferay-theme,Liferay,Freemarker,Liferay Theme,我正在使用Liferay 6.2和freemaker制作web内容模板。我需要在模板中获取请求对象。当我尝试使用${Request.getRequest()}时,它抛出错误表达式请求未定义。 完整代码在这里 <#assign userService=utilLocator.findUtil('my-portlets', org.test.service.UserService')> <#if userService.isUser(Request.getRequest())&g

我正在使用Liferay 6.2和freemaker制作web内容模板。我需要在模板中获取请求对象。当我尝试使用
${Request.getRequest()}
时,它抛出错误
表达式请求未定义
。 完整代码在这里

<#assign userService=utilLocator.findUtil('my-portlets', org.test.service.UserService')>
 <#if userService.isUser(Request.getRequest())>
     <h1>is User</h1>
 </#if>

如何在freemaket ftl模板中获取请求对象?

FreeMarker变量区分大小写,并且不以
$
符号开头(如velocity)


使用
request
变量。

您可以像中一样使用request变量

<#if request.getParameter("something")??>

我发现这个文件总是有用的


另外,$的使用可能会给您带来一些问题,因为它在velocity中没有使用。

$request
是模板中可用的隐式对象。但是,如果您想获取
httpServletRequest
对象,可以通过以下方式获取:
\set($serviceContext=$portal.getClass().forName(“com.liferay.portal.service.ServiceContextThreadLocal”).getServiceContext())#set($httpServletRequest=$serviceContext.getRequest())
谢谢!但是你能用一个小例子以更扩展的方式发布你的答案吗?@ParkashKumarHere是完整的列表,这是与你的问题相匹配的答案。
<#if request.getParameter("something")??>