An error occurred while processing the template.
The following has evaluated to null or missing:
==> AssetCategoryLocalService.getAssetEntryAssetCategories  [in template "42020#42061#74526" at line 16, column 24]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign categories = AssetCategoryLoc...  [in template "42020#42061#74526" at line 16, column 1]
----
1<#--  
2	Esta template se usa para pintar una Noticia mostrando  
3	solo la sección de la Noticia y el Titular 
4--> 
5<#assign newUrl = "blog" /> 
6 
7<#assign AssetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
8<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
9<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
10<#assign AssetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")> 
11 
12 
13<#assign statusApproved = 0> 
14<#assign journalArticle = JournalArticleLocalService.fetchLatestArticle(groupId, reserved\-article\-id.data, statusApproved)> 
15<#assign assetEntry = AssetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey())> 
16<#assign categories =  AssetCategoryLocalService.getAssetEntryAssetCategories(assetEntry.getEntryId())> 
17 
18 
19<#assign VOC_SECCION_BLOG = "SACYR_GLOBAL_VOC_SECCIÓN_BLOGS"> 
20 
21 
22<div class="container"> 
23	<#list categories as cat> 
24		<#assign voc = AssetVocabularyLocalService.getAssetVocabulary(cat.getVocabularyId())> 
25		<#if voc.getName()?lower_case == VOC_SECCION_BLOG?lower_case> 
26			<p>${cat.getTitle(locale)}</p> 
27			<#break> 
28		</#if> 
29	</#list> 
30    <p><a href="${themeDisplay.getScopeGroup().getDisplayURL(themeDisplay,false)}/-/${reserved\-article\-url\-title.get("data")}/${newUrl}">${titular.getData()}</a></p>      
31</div> 

This website uses its own and third-party cookies to improve the user experience and analyze their behavior in order to improve the service offered.
You can consult additional information about the cookies installed on our Cookies policy.

Cookie Settings

Cookie declaration

TECHNIQUES

These cookies are exempt from compliance with article 22.2 of the LSSI in accordance with the recommendations indicated by the European authority on privacy and cookies. In accordance with the above and although configuration, acceptance or denial is not possible, the editor of this website offers information about them in an exercise of transparency with the user.

  • Name: LFR_Session_STATE_*, Provider: Liferay, Purpose: Manages the session as a registered user , Expiration: Session, Type: HTTP

  • Name: GUEST_LANGUAGE_ID, Provider: Liferay, Purpose: Determines the language with which you access , to show the same in the next session, Expiration: 1 year, Type: HTTP

  • Name: ANONYMOUS_USER_ID, Provider: Liferay, Purpose: Manages the session as an unregistered user , Expiration: 1 year, Type: HTTP

  • Name: COOKIE_SUPPORT, Provider: Liferay, Purpose: Identifies that the use of cookies for the operation of the portal, Expiration: 1 year, Type: HTTP

  • Name: JSessionID, Provider: Liferay, Purpose: Manages login and indicates who is using the site, Expiry: Session, Type: HTTP

  • Name: SACYRGDPR, Supplier: Sacyr, Purpose: Used to manage the cookie policy , Expiration: Session, Type: HTTP