Noticias

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> assetRenderer.getArticle  [in template "10114#2295845#2419570" at line 8, column 55]

----
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 journalArticle = assetRendere...  [in template "10114#2295845#2419570" at line 8, column 29]
----
1<#assign dlFileEntryService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")> 
2 
3<div class="filanoticias"> 
4	<#if entries?has_content> 
5		<div class="detalle">	  
6			<#list entries as entry> 
7			    <#assign assetRenderer = entry.getAssetRenderer() /> 
8			    <#assign journalArticle = assetRenderer.getArticle() /> 
9			    <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(locale)) /> 
10			    <#assign rootElement = document.getRootElement() /> 
11			     
12			    <#assign titulo = saxReaderUtil.createXPath("dynamic-element[@name='titulo']").selectSingleNode(rootElement).getStringValue() /> 
13			    <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) /> 
14			     
15			 	<#assign resumen = saxReaderUtil.createXPath("dynamic-element[@name='resumen']").selectSingleNode(rootElement).getStringValue() /> 
16			 	 
17			 	<#assign imagenRepresentativa = "" /> 
18	   			<#assign altImgRepresen = "" /> 
19	   			<#if saxReaderUtil.createXPath("dynamic-element[@name='imagenRepresentativa']/dynamic-content").selectSingleNode(rootElement)??> 
20				    <#assign imagenRepresentativa = saxReaderUtil.createXPath("dynamic-element[@name='imagenRepresentativa']/dynamic-content").selectSingleNode(rootElement).getStringValue() /> 
21				    <#if saxReaderUtil.createXPath("dynamic-element[@name='imagenRepresentativa']/dynamic-element[@name='altImgRepresen']").selectSingleNode(rootElement)??> 
22				    	<#assign altImgRepresen = saxReaderUtil.createXPath("dynamic-element[@name='imagenRepresentativa']/dynamic-element[@name='altImgRepresen']").selectSingleNode(rootElement).getStringValue() /> 
23			    	</#if> 
24			    </#if> 
25			    <div> 
26			        
27			       <#-- <#assign viewURL = viewURL?replace('/noticias/', '/noticia/')/> 
28			        <#assign viewURL = viewURL?replace('/portada/', '/noticia/')/> --> 
29			         
30					<h3 class="titular"><a href="${viewURL}">${titulo}</a></h3> 
31					<#if !validator.isBlank(imagenRepresentativa)> 
32    					<#assign json_img = imagenRepresentativa?eval /> 
33                        <#assign group_id = json_img.groupId />	   
34                        <#assign uuid = json_img.uuid />	     
35                        <#assign fileEntry = dlFileEntryService.getFileEntryByUuidAndGroupId(uuid, getterUtil.getLong(group_id)) /> 
36                        <#assign rutaImg = '/documents/' + group_id + '/'  + fileEntry.getClassPK() + '/'  + json_img.title  + '/'  + uuid /> 
37						<img src="${rutaImg}" alt="${altImgRepresen}" /> 
38					</#if> 
39		            <p>${resumen}</p>       
40				</div> 
41			</#list> 
42		</div> 
43	</#if> 
44</div>