Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> assetRenderer.getArticle  [in template "20101#20128#42338" 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#42338" 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				        <#assign enlaceExternoParaDetalle = docXml.valueOf("//dynamic-element[@name='EnlaceExternoParaDetalle']/dynamic-content/text()") /> 
39				        <#assign webOficial = docXml.valueOf("//dynamic-element[@name='WebOficial']/dynamic-content/text()") /> 
40				   
41				        <#-- Comprobar si el evento ha expirado  
42                        <#assign fechaHoraFin = fechaFin?date("yyyy-MM-dd")+" "+horaFin?time("HH:mm") /> 
43				        <#if fechaHoraFin?datetime < .now?datetime> 
44                            <#-- Si entra en el IF, saltamos a la siguiente entrada --> 
45                            <#-- IF fechaHoraFin < .now, significa que el evento ha expirado --> 
46                        <#-- 
47                        <#else> 
48                         
49                        
50                             
51                        					     
52					    </#if> 
53                        --> 
54				        <#-- Cargamos la Imagen --> 
55				        <#assign docUrl="" /> 
56				        <#assign altImagen=nombre /> 
57				        <#assign toolTipImagen=nombre /> 
58                        <#assign map={ "propietario": '' , "contacto": '' } /> 
59                        <#if imagen?has_content>  
60                            <#assign jsonObject=imagen?eval />  
61                            <#assign entryUuid=jsonObject.uuid /> 
62                            <#if jsonObject.alt?has_content>  
63                                <#assign altImagen=jsonObject.alt /> 
64                            </#if> 
65                            <#if jsonObject??> 
66                        	    <#assign mapFields=getFieldsDocument(map,jsonObject) /> 
67                        	    <#list mapFields?keys as key> 
68                        	    <#if key=="propietario"> 
69                        	        <#assign propietario = mapFields[key] /> 
70                        			<#assign toolTipImagen="${altImagen}"+" © "+"${propietario}" /> 
71                        	    </#if> 
72                        	    </#list> 
73                        	</#if> 
74                            <#assign entryGroupId=getterUtil.getLong(jsonObject.groupId) />  
75                            <#assign dlFileEntryLocalService=serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>  
76                            <#attempt> 
77                                <#assign dlFileEntry=dlFileEntryLocalService.getDLFileEntryByUuidAndGroupId(entryUuid, entryGroupId) /> 
78                            <#recover> 
79                                <#assign dlFileEntry="" /> 
80                            </#attempt> 
81                            <#--<#assign assetEntryLocalService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
82                            <#assign assetEntry=assetEntryLocalService.getEntry("com.liferay.document.library.kernel.model.DLFileEntry", dlFileEntry.fileEntryId) /> 
83                            <#assign assetRendererStr=assetEntry.assetRenderer /> 
84                            <#assign docUrl=assetRendererStr.getURLDownload(themeDisplay) /> 
85                            --> 
86                        </#if> 
87                     
88                        <#assign baseURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, assetRenderer, curEntry, true)?replace("https://", "") /> 
89                        <#assign viewURL = baseURL[baseURL?index_of("/")..] /> 
90				        <#assign classNameId=curEntry.getClassNameId() /> 
91				        <#assign classPK=curEntry.getClassPK() />  
92						<div class="li_ss col-md-6 col-lg-3"> 
93							<div class="card"> 
94							    <@getEditIcon/> 
95							    <#if webOficial?? && enlaceExternoParaDetalle?? && webOficial!="" && enlaceExternoParaDetalle!=""> 
96								    <a onClick="mostrarModal('${webOficial}', 'modalEventos')" class="aCard"> 
97								<#else> 
98								    <a href="${viewURL}&classNameId=${classNameId}&classPK=${classPK}"  
99								        class="aCard"> 
100								</#if> 
101									<div class="card-img marcEventos"> 
102									     <#if imagen?has_content && dlFileEntry?? && dlFileEntry?has_content> 
103									        <#attempt> 
104								            <@adaptive_media_image["img"] alt="${altImagen}" title="${toolTipImagen}" class="card-img-top" fileVersion=dlAppService.getFileEntry(dlFileEntry.fileEntryId).getFileVersion()/> 
105								            <#recover> 
106								            </#attempt> 
107								        </#if> 
108									</div> 
109									<div class="card-body"> 
110									    <#assign str_fini = "" /> 
111									    <#if fechaInicio?? && fechaInicio?has_content> 
112											<#assign ini = fechaInicio?date("yyyy-MM-dd") /> 
113											<#assign str_fini = ini?string /> 
114										</#if>	 
115										<#assign str_ffin = ""/> 
116										<#if fechaFin?? && fechaFin?has_content> 
117											<#assign fini = fechaFin?date("yyyy-MM-dd") /> 
118											<#assign str_ffin = fini?string /> 
119										</#if>	 
120										<#assign str_hini = "" /> 
121										<#if horaInicio?? && horaInicio?has_content> 
122    									    <#attempt> 
123    									        <#assign str_hini = horaInicio?time("HH:mm")?string /> 
124    									    <#recover> 
125    									        <#assign str_hini = "??:??" /> 
126    										</#attempt> 
127										</#if> 
128										<#assign str_hfin = "" /> 
129										<#if horaFin?? && horaFin?has_content> 
130    									     <#attempt> 
131    									          <#assign str_hfin = horaFin?time("HH:mm")?string/> 
132    									      <#recover> 
133    											<#assign str_hfin = "??:??" /> 
134    										</#attempt>   
135										</#if> 
136 
137										<p class="card-date"><#if str_fini != "">${str_fini}</#if><#if str_ffin != ""> - ${str_ffin}</#if></p> 
138										<p class="card-date"><#if str_hini != "">${str_hini}</#if><#if str_hfin != ""> - ${str_hfin}</#if></p> 
139										<p class="card-text"></p> 
140										<p class="card-text">${lugar}</p> 
141										<p class="card-title"> 
142										    <#if webOficial?? && enlaceExternoParaDetalle?? && webOficial!="" && enlaceExternoParaDetalle!=""> 
143										        <img class="icoCardText" src="${themeDisplay.getPathThemeImages()}/sm/iconos/opciones/link.svg" alt="${languageUtil.get(themeDisplay.getLocale(), 'sm.popup.web.externa')}"> 
144										    </#if> 
145										    ${nombre}</p> 
146									</div> 
147								</a> 
148							</div> 
149						</div> 
150					</#list> 
151					</div> 
152					<div role="link" class="swiper-button-next" title="${languageUtil.get(themeDisplay.getLocale(), 'sm.swiper.slider.next')}"></div> 
153					<div role="link" class="swiper-button-prev" title="${languageUtil.get(themeDisplay.getLocale(), 'sm.swiper.slider.prev')}"></div> 
154				</div> 
155			</div> 
156		</div> 
157	</div> 
158</section> 
159<@crearModal link="" idModal="modalEventos" texto="${languageUtil.get(themeDisplay.getLocale(), 'sm.popup.web.externa')}"/> 
160<@showModal/> 
161</#if> 
162<!-- FIN Cards -->