Foros de discusión

Portal Url in VM

Syed Umair, modificado hace 11 años.

Portal Url in VM

Junior Member Mensajes: 36 Fecha de incorporación: 11/10/12 Mensajes recientes
Hi,
I have developed a structure and template. Currently, I am using localhost:8080 in my template, but when I will deploy my web it should not be localhost. Can anyone suggest me how to get portal url in VM template.
I can get it in jsp using themeDisplay.getPortalURL(), but I dont know how to do it in VM. emoticon

Any valuable suggestion will be appreciated. emoticon
Umair
thumbnail
Rishi Dev Gupta, modificado hace 11 años.

RE: Portal Url in VM

Expert Mensajes: 255 Fecha de incorporación: 23/11/08 Mensajes recientes
Check this link this might help you

http://content.liferay.com/4.3/misc/theme-api-4.3.0.html
thumbnail
Jitendra Rajput, modificado hace 11 años.

RE: Portal Url in VM

Liferay Master Mensajes: 875 Fecha de incorporación: 7/01/11 Mensajes recientes
Could you please try with below code .

#set ($portalUtil= $utiLocator.findUtil("com.liferay.portal.util.portalUtil"))
#set ($portalURL=$portalUtil.getPortalURL($themeDisplay))
$portalURL
Syed Umair, modificado hace 11 años.

RE: Portal Url in VM (Respuesta)

Junior Member Mensajes: 36 Fecha de incorporación: 11/10/12 Mensajes recientes
Thnx, for your replies. I manage it to do it with

#set($companyLocalService = $serviceLocator.findService("com.liferay.portal.service.CompanyLocalService"))
#set($company = $companyLocalService.getCompany($company_id))
#set($portalURL = $company.getVirtualHostname())
thumbnail
Rishi Dev Gupta, modificado hace 11 años.

RE: Portal Url in VM (Respuesta)

Expert Mensajes: 255 Fecha de incorporación: 23/11/08 Mensajes recientes
You do not need to define service variable to get company information. You will get the $company object by default in vm file, thus no need to make a database hit.

Also you will need to set the property accordingly in portal.properties, if you want to use service layer (as answered y you)
#
# Input a comma delimited list of variables which are restricted from the
# context in Velocity based Journal templates.
#
journal.template.velocity.restricted.variables=serviceLocator
Syed Umair, modificado hace 11 años.

RE: Portal Url in VM

Junior Member Mensajes: 36 Fecha de incorporación: 11/10/12 Mensajes recientes
Rishi Dev Gupta:
You do not need to define service variable to get company information. You will get the $company object by default in vm file, thus no need to make a database hit.


I have tried the $company object and it works same. And it will certainly improve the performance. emoticon