<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>How to get render url in Velocity template in 7.1</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=113127746" />
  <subtitle>How to get render url in Velocity template in 7.1</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=113127746</id>
  <updated>2026-04-06T08:44:29Z</updated>
  <dc:date>2026-04-06T08:44:29Z</dc:date>
  <entry>
    <title>RE: How to get render url in Velocity template in 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113387454" />
    <author>
      <name>Andrew Jardine</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113387454</id>
    <updated>2019-04-25T02:48:26Z</updated>
    <published>2019-04-25T02:48:26Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;Hi Alla,&lt;br&gt;&lt;br&gt;This question has been asked several times before in the forums (I know this because I have answered it before myself) -- but here is some sample code, again, on one option for doing it.&lt;pre&gt;&lt;code&gt;&amp;amp;lt;#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() /&amp;amp;gt;
&amp;amp;lt;#assign request = serviceContext.getRequest() /&amp;amp;gt;
&amp;amp;nbsp;
&amp;amp;nbsp;
&amp;amp;lt;#assign portletURLFactoryUtil = staticUtil["com.liferay.portal.kernel.portlet.PortletURLFactoryUtil"]/&amp;amp;gt;
&amp;amp;nbsp;
&amp;amp;nbsp;
&amp;amp;lt;#assign portletId = "com_ml_some_web.portlet_fake_FakePortlet" /&amp;amp;gt;
&amp;amp;lt;#assign plid = layout.getPlid() /&amp;amp;gt;
&amp;amp;lt;#assign phase = "RENDER_PHASE" /&amp;amp;gt;
&amp;amp;nbsp;
&amp;amp;lt;#assign portletRenderUrl = portletURLFactoryUtil.create(request, portletId, plid, phase)/&amp;amp;gt;
&amp;amp;nbsp;
&amp;amp;nbsp;
&amp;lt;a href="${portletRenderUrl}" class="btn btn-primary"&amp;gt;Render Portlet&amp;lt;/a&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Andrew Jardine</dc:creator>
    <dc:date>2019-04-25T02:48:26Z</dc:date>
  </entry>
  <entry>
    <title>RE: How to get render url in Velocity template in 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113385201" />
    <author>
      <name>Alla Sapozhnikova</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113385201</id>
    <updated>2019-04-24T21:07:29Z</updated>
    <published>2019-04-24T21:07:29Z</published>
    <summary type="html">How can I get render url or request in FreeMaker  WCM Template ?</summary>
    <dc:creator>Alla Sapozhnikova</dc:creator>
    <dc:date>2019-04-24T21:07:29Z</dc:date>
  </entry>
  <entry>
    <title>RE: How to get render url in Velocity template in 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113136798" />
    <author>
      <name>Alla Sapozhnikova</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113136798</id>
    <updated>2019-04-11T11:21:08Z</updated>
    <published>2019-04-11T11:21:08Z</published>
    <summary type="html">Hi Alberto,&lt;br /&gt;&lt;br /&gt;This is a simple web content template. &lt;br /&gt;&lt;br /&gt;I know that Velocity is deprecated. But the question still remains: is request available in Web Content template? And if not, how can I get render url and other request components?&lt;br /&gt;&lt;br /&gt;Thank you very much for your help.&lt;br /&gt;Alla</summary>
    <dc:creator>Alla Sapozhnikova</dc:creator>
    <dc:date>2019-04-11T11:21:08Z</dc:date>
  </entry>
  <entry>
    <title>RE: How to get render url in Velocity template in 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113135733" />
    <author>
      <name>Alberto Chaparro</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113135733</id>
    <updated>2019-04-11T10:56:51Z</updated>
    <published>2019-04-11T10:56:51Z</published>
    <summary type="html">Hi Alla,&lt;br /&gt;&lt;br /&gt;Please take into account the following article:&lt;br /&gt;&lt;a href="https://dev.liferay.com/de/develop/tutorials/-/knowledge_base/7-1/updating-theme-templates"&gt;https://dev.liferay.com/de/develop/tutorials/-/knowledge_base/7-1/updating-theme-templates&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;Which kind of template is your template? Theme, ADT or WCM template?&lt;br /&gt;&lt;br /&gt;​​​​​​​Thanks.</summary>
    <dc:creator>Alberto Chaparro</dc:creator>
    <dc:date>2019-04-11T10:56:51Z</dc:date>
  </entry>
  <entry>
    <title>How to get render url in Velocity template in 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113127745" />
    <author>
      <name>Alla Sapozhnikova</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113127745</id>
    <updated>2019-04-10T21:52:58Z</updated>
    <published>2019-04-10T21:52:58Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;I have a simple velocity template that was working just fine in 6.2. Now I am going through the upgrade process to 7.1, and the template stopped working because it seems that the $request is not longer available. &lt;br&gt;&lt;br&gt;Does anybody know if that's the case or I am just missing something? And is it possible to render url in some different way? And if so, how?&lt;br&gt;&lt;br&gt;The code is below:&lt;br&gt;&lt;br&gt;&lt;pre&gt;&lt;code&gt;

##Get portlet URL
#set ($url = $request.get('render-url'))
  #set ($namespace = $request.get('portlet-namespace'))
  #set ($paramName = $request.get('parameters').get('paramName'))

#set ($themeDisplay = $httpServletRequest.getAttribute("THEME_DISPLAY"))  


#if ($paramName)
 
    Hello ${paramName}!
 
&amp;lt;form class="form-search" action="$url" method="post" name="${namespace}frm"&amp;gt;
  &amp;lt;div class="input-appended"&amp;gt;
  ##   Please enter your search keyword:
    &amp;lt;input type="text" class="field" size="20" name="${namespace}paramName" value="$paramName"&amp;gt;
    &amp;lt;!--button type="submit" class="btn"&amp;gt;Search&amp;lt;/button--&amp;gt;
&amp;lt;input type="image" src="/BSCFixed-theme/images/common/search.png" alt="Submit"&amp;gt;
&amp;amp;nbsp;&amp;amp;nbsp;
&amp;lt;a class="search-links" href="$url"&amp;gt;Back&amp;lt;/a&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;
&amp;lt;a class="search-links" href="/group/dppos/directory"&amp;gt;Advanced Search&amp;lt;/a&amp;gt;

  &amp;lt;/div&amp;gt;  

#set($companyId = $themeDisplay.getCompanyId())

#set ($userService = $serviceLocator.findService("com.liferay.portal.service.UserLocalService"))

#set ($phoneService = $serviceLocator.findService("com.liferay.portal.service.PhoneLocalService"))

##search user by screen name

 ##get all users in current organization
#set ($organizationId = $getterUtil.getLong($groupId) - 1)
#set ($userList = $userService.getOrganizationUsers($organizationId))

#set ($count = 1 )
#foreach ($user in $userList)
  #set ($idxfirst = $user.getFirstName().toUpperCase().indexOf($paramName.toUpperCase()))
  #set ($idxlast = $user.getLastName().toUpperCase().indexOf($paramName.toUpperCase()))
  #if ($idxlast &amp;amp;gt;-1 || $idxfirst &amp;amp;gt;-1)
#if ($count == 1)
&amp;lt;table class="lfr-table-display"&amp;gt;
    &amp;lt;tbody&amp;gt;&amp;lt;tr&amp;gt;
        &amp;lt;th&amp;gt;Name&amp;lt;/th&amp;gt;
        &amp;lt;th&amp;gt;Email Address&amp;lt;/th&amp;gt;
                &amp;lt;th&amp;gt;Phone Number&amp;lt;/th&amp;gt;
    &amp;lt;/tr&amp;gt;
#set ($count = 2 )
#end
&amp;lt;tr&amp;gt;
&amp;lt;!--td&amp;gt;$user.getScreenName()&amp;lt;/td--&amp;gt;
&amp;lt;td class="dppusname"&amp;gt;$user.getFirstName() $user.getLastName()&amp;lt;/td&amp;gt;
&amp;lt;!--td&amp;gt;&amp;lt;a href="mailto:$user.getEmailAddress()?Subject=Hello%20again" target="_top"&amp;gt;
$user.getEmailAddress&amp;lt;/a&amp;gt;&amp;lt;/td--&amp;gt;
&amp;lt;td class="dppusemail"&amp;gt;&amp;lt;a href="mailto:$user.getEmailAddress()" target="_top"&amp;gt;
$user.getEmailAddress()&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;
#set ($phoneList = $phoneService.getPhones($companyId, 'com.liferay.portal.model.Contact',$user.getContactId()))
&amp;lt;td class="dppusphone"&amp;gt;
#foreach ($phone in $phoneList)
 #if ($phone.primary)
$phone.number ext. $phone.extension &amp;lt;br&amp;gt;
 #end
&amp;lt;/td&amp;gt;
#end
&amp;lt;/tr&amp;gt;

#end

#end
#if ($count == 2)
&amp;lt;/tbody&amp;gt;&amp;lt;/table&amp;gt;
&amp;lt;/form&amp;gt;
#else
No Users Found
#end

  #else
&amp;lt;form class="form-search" action="$url" method="post" name="${namespace}frm"&amp;gt;
  &amp;lt;div class="input-appended"&amp;gt;
 ##    Please enter your search keyword:
    &amp;lt;input type="text" class="field" size="20" name="${namespace}paramName"&amp;gt;
    &amp;lt;!--button type="submit"  class="btn"&amp;gt;Search&amp;lt;/button--&amp;gt;
&amp;lt;input type="image" src="/BSCFixed-theme/images/common/search.png" alt="Submit"&amp;gt;
&amp;amp;nbsp;&amp;amp;nbsp;
    &amp;lt;a class="search-links" href="/group/dppos/directory"&amp;gt;Advanced Search&amp;lt;/a&amp;gt;
  &amp;lt;/div&amp;gt;  
&amp;lt;/form&amp;gt;

 
  #end
&lt;/code&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;Thank you very much.&lt;br&gt;Alla&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Alla Sapozhnikova</dc:creator>
    <dc:date>2019-04-10T21:52:58Z</dc:date>
  </entry>
</feed>
