Une erreur s'est produite lors du traitement du gabarit.
The following has evaluated to null or missing:
==> assetRenderer.getArticle  [in template "20101#20128#153372" at line 27, column 67]

----
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 "20101#20128#153372" at line 27, column 41]
----
1<#include "${templatesPathTurismo}/113928" /> 
2<!-- Section Cards  - Eventos --> 
3<#if entries?has_content> 
4<#assign dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService") /> 
5<#assign mediaQueryProvider = serviceLocator.findService("com.liferay.adaptive.media.image.media.query.MediaQueryProvider") />  
6<section class="sectioncards"> 
7	<div class="container"> 
8	    <#assign tituloYDescripcion =themeDisplay.getPortletDisplay().getTitle()?split("|") />  
9	    <#assign customTitle = themeDisplay.getPortletDisplay().getPortletSetup().getValue("portletSetupUseCustomTitle", "false") /> 
10	     
11	    <#if customTitle?boolean > 
12	        <h3 class="headline-mediumlarge fontMedium">${(tituloYDescripcion?size>0 
13        )?then(tituloYDescripcion[0],'')}</h3> 
14        ${(tituloYDescripcion?size>1)?then('<p>'+tituloYDescripcion[1]+'</p>','')} 
15	    <#else> 
16	        <h3 class="headline-mediumlarge fontMedium">${languageUtil.get(themeDisplay.getLocale(), 'sm.buscador.eventos')}</h3> 
17	        <p></p> 
18	    </#if> 
19        <div class="row"> 
20            <div class="col-12"> 
21                <div class="divSwiper tePuedeInteresar" id="tePuedeInteresar"> 
22                    <div class="divSwiper-wrapper row"> 
23				    <#list entries as curEntry> 
24				        
25				        <#assign assetRenderer = curEntry.getAssetRenderer() /> 
26				        <#assign entryTitle = htmlUtil.escape(assetRenderer.getTitle(locale)) /> 
27				        <#assign journalArticle = assetRenderer.getArticle() />  
28				        <#assign docXml = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplay.getLocale())) /> 
29				         
30				        <#-- Cogemos los valores de cada campo necesario  --> 
31				        <#assign nombre = docXml.valueOf("//dynamic-element[@name='Nombre']/dynamic-content/text()") /> 
32				        <#assign lugar = docXml.valueOf("//dynamic-element[@name='Lugar']/dynamic-content/text()") /> 
33				        <#assign fechaInicio = docXml.valueOf("//dynamic-element[@name='FechaInicio']/dynamic-content/text()") /> 
34				        <#assign fechaFin = docXml.valueOf("//dynamic-element[@name='FechaFin']/dynamic-content/text()") /> 
35				        <#assign horaInicio = docXml.valueOf("//dynamic-element[@name='HoraInicio']/dynamic-content/text()") /> 
36				        <#assign horaFin = docXml.valueOf("//dynamic-element[@name='HoraFin']/dynamic-content/text()") /> 
37				        <#assign imagen = docXml.valueOf("//dynamic-element[@name='Imagen']/dynamic-content/text()") /> 
38				   
39				        <#-- Comprobar si el evento ha expirado  
40                        <#assign fechaHoraFin = fechaFin?date("yyyy-MM-dd")+" "+horaFin?time("HH:mm") /> 
41				        <#if fechaHoraFin?datetime < .now?datetime> 
42                            <#-- Si entra en el IF, saltamos a la siguiente entrada --> 
43                            <#-- IF fechaHoraFin < .now, significa que el evento ha expirado --> 
44                        <#-- 
45                        <#else> 
46                         
47                        
48                             
49                        					     
50					    </#if> 
51                        --> 
52				        <#-- Cargamos la Imagen --> 
53				        <#assign docUrl="" /> 
54				        <#assign altImagen=nombre /> 
55				        <#assign toolTipImagen=nombre /> 
56                        <#assign map={ "propietario": '' , "contacto": '' } /> 
57                        <#if imagen?has_content>  
58                            <#assign jsonObject=imagen?eval />  
59                            <#assign entryUuid=jsonObject.uuid /> 
60                            <#if jsonObject.alt?has_content>  
61                                <#assign altImagen=jsonObject.alt /> 
62                            </#if> 
63                            <#if jsonObject??> 
64                        	    <#assign mapFields=getFieldsDocument(map,jsonObject) /> 
65                        	    <#list mapFields?keys as key> 
66                        	    <#if key=="propietario"> 
67                        	        <#assign propietario = mapFields[key] /> 
68                        			<#assign toolTipImagen="${altImagen}"+" © "+"${propietario}" /> 
69                        	    </#if> 
70                        	    </#list> 
71                        	</#if> 
72                            <#assign entryGroupId=getterUtil.getLong(jsonObject.groupId) />  
73                            <#assign dlFileEntryLocalService=serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>  
74                            <#assign dlFileEntry=dlFileEntryLocalService.getDLFileEntryByUuidAndGroupId(entryUuid, entryGroupId) /> 
75                            <#--<#assign assetEntryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
76                            <#assign assetEntry=assetEntryLocalService.getEntry("com.liferay.document.library.kernel.model.DLFileEntry", dlFileEntry.fileEntryId) /> 
77                            <#assign assetRendererStr=assetEntry.assetRenderer /> 
78                            <#assign docUrl=assetRendererStr.getURLDownload(themeDisplay) /> 
79                            --> 
80                        </#if> 
81                     
82                        <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, assetRenderer, curEntry, true) /> 
83				        <#assign classNameId=curEntry.getClassNameId() /> 
84				        <#assign classPK=curEntry.getClassPK() />  
85						<div class="li_ss col-md-6 col-lg-3"> 
86							<div class="card"> 
87							    <@getEditIcon/> 
88								<a href="${viewURL}&classNameId=${classNameId}&classPK=${classPK}"  
89								    class="aCard"> 
90									<div class="card-img marcEventos"> 
91									     <#if imagen?has_content && dlFileEntry?has_content> 
92									        <#attempt> 
93								            <@adaptive_media_image["img"] alt="${altImagen}" title="${toolTipImagen}" class="card-img-top" fileVersion=dlAppService.getFileEntry(dlFileEntry.fileEntryId).getFileVersion()/> 
94								            <#recover> 
95								            </#attempt> 
96								        </#if> 
97									</div> 
98									<div class="card-body"> 
99									    <#assign str_fini = "" /> 
100									    <#if fechaInicio?? && fechaInicio?has_content> 
101											<#assign ini = fechaInicio?date("yyyy-MM-dd") /> 
102											<#assign str_fini = ini?string /> 
103										</#if>	 
104										<#assign str_ffin = ""/> 
105										<#if fechaFin?? && fechaFin?has_content> 
106											<#assign fini = fechaFin?date("yyyy-MM-dd") /> 
107											<#assign str_ffin = fini?string /> 
108										</#if>	 
109										<#assign str_hini = "" /> 
110										<#if horaInicio?? && horaInicio?has_content> 
111    									    <#attempt> 
112    									        <#assign str_hini = horaInicio?time("HH:mm")?string /> 
113    									    <#recover> 
114    									        <#assign str_hini = "??:??" /> 
115    										</#attempt> 
116										</#if> 
117										<#assign str_hfin = "" /> 
118										<#if horaFin?? && horaFin?has_content> 
119    									     <#attempt> 
120    									          <#assign str_hfin = horaFin?time("HH:mm")?string/> 
121    									      <#recover> 
122    											<#assign str_hfin = "??:??" /> 
123    										</#attempt>   
124										</#if> 
125 
126										<p class="card-date"><#if str_fini != "">${str_fini}</#if><#if str_ffin != ""> - ${str_ffin}</#if></p> 
127										<p class="card-date"><#if str_hini != "">${str_hini}</#if><#if str_hfin != ""> - ${str_hfin}</#if></p> 
128										<p class="card-text"></p> 
129										<p class="card-text">${lugar}</p> 
130										<p class="card-title">${nombre}</p> 
131									</div> 
132								</a> 
133							</div> 
134						</div> 
135					</#list> 
136					</div> 
137					<div role="link" class="swiper-button-next" title="${languageUtil.get(themeDisplay.getLocale(), 'sm.swiper.slider.next')}"></div> 
138					<div role="link" class="swiper-button-prev" title="${languageUtil.get(themeDisplay.getLocale(), 'sm.swiper.slider.prev')}"></div> 
139				</div> 
140			</div> 
141		</div> 
142	</div> 
143</section> 
144</#if> 
145<!-- FIN Cards -->