Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> imagen.imagen.link [in template "24121366510601#31740#null" at line 85, column 101]
----
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: ${imagen.imagen.link.href} [in template "24121366510601#31740#null" at line 85, column 99]
----
1<#if (ObjectEntry_objectEntryId.getData())??>
2 <#assign idObject= ObjectEntry_objectEntryId.getData() />
3 <#assign scopeKey= themeDisplay.getScopeGroupId() />
4
5 <#assign imagenesRest = restClient.get("/c/vivaofertas/${idObject}?nestedFields=imagenesOferta")/>
6
7 <section class="offer-hotel-banner">
8 <div class="offer-hotel-banner-content">
9 <div class="offer-hotel-banner-content-img">
10 <div class="d-flex justify-content-between offer-hotel-banner-content-img-info">
11 <div>
12 <#if (ObjectField_nombre.getData())??>
13 <h2 class="${((.data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData())?? && .data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData() != 'Default')?then('text-adults','text-viva')}">${ObjectField_nombre.getData()}</h2>
14 </#if>
15
16 <#if (ObjectField_descripcion.getData())??>
17 <p>${ObjectField_descripcion.getData()}</p>
18 </#if>
19
20 </div>
21 <div>
22
23 <#assign styleColor = ""/>
24 <#assign ancho = ""/>
25 <#assign promocionEspecial = false/>
26 <#assign agrupada = false/>
27 <#assign tituloBloque = ""/>
28
29 <#if getterUtil.getBoolean(ObjectField_promocionEspecial.getData())>
30 <#assign promocionEspecial = getterUtil.getBoolean(ObjectField_promocionEspecial.getData()) />
31 </#if>
32 <#if getterUtil.getBoolean(ObjectField_agrupada.getData())>
33 <#assign agrupada = getterUtil.getBoolean(ObjectField_agrupada.getData()) />
34 </#if>
35 <#if (ObjectField_tituloBloque.getData())??>
36 <#assign tituloBloque = ObjectField_tituloBloque.getData() />
37 </#if>
38
39 <#if promocionEspecial || agrupada || tituloBloque != "">
40 <#assign colorHexadecimal = ""/>
41 <#if (ObjectField_colorHexadecimal.getData())??>
42 <#assign colorHexadecimal = ObjectField_colorHexadecimal.getData()/>
43 </#if>
44
45 <#if colorHexadecimal != "">
46 <#assign styleColor = "background-color: " + colorHexadecimal + " !important;"/>
47 </#if>
48
49 <#if promocionEspecial>
50 <#assign ancho = "w-75"/>
51 </#if>
52 </#if>
53
54 <div class="sticker ${ancho}" style="${styleColor}">
55
56 <#if promocionEspecial>
57 <div class="sticker-content d-flex justify-content-between">
58 <div>${languageUtil.get(themeDisplay.getLocale(), "promocion-especial")}</div>
59 <div class="text-white d-flex">
60 <a href="">${languageUtil.get(themeDisplay.getLocale(), "ver-promociones-especiales")}</a>
61 </div>
62 </div>
63 <#else>
64 <div class="sticker-content">
65 <h2 class="text-white">
66 ${tituloBloque}
67 </h2>
68 <#if (ObjectField_subtituloBloque.getData())??>
69 <span>${ObjectField_subtituloBloque.getData()}</span>
70 </#if>
71
72 </div>
73 </#if>
74
75 </div>
76 </div>
77 </div>
78 <!-- Set up your HTML -->
79 <div class="swipper-container">
80 <div class="swiper offer-hotel-banner-swiper">
81 <div class="swiper-wrapper">
82 <#if imagenesRest.imagenesOferta?size gt 0>
83 <#list imagenesRest.imagenesOferta as imagen>
84 <div data-hash="slide${imagen?index+1}" class="swiper-slide">
85 <img src="${imagen.imagen.link.href}" alt="${imagen.alt}"/>
86 </div>
87 </#list>
88 </#if>
89 </div>
90 <div class="swiper-pagination"></div>
91 </div>
92 </div>
93 </div>
94 <div class="offer-hotel-banner-content-txt">
95 <div class="content">
96 <div class="d-flex go-back">
97 <#assign configuracion = restClient.get("/c/vivaconfiguracions/scopes/${scopeKey}?filter=clave%20eq%20%27url-promociones%27") />
98 <#assign enlacePromociones = ""/>
99 <#if configuracion??>
100 <#if configuracion.items??>
101 <#assign enlacePromociones = configuracion.items?first.valor/>
102 </#if>
103 </#if>
104 <a
105 href="${enlacePromociones}"
106 class="btn d-flex justify-content-center align-items-center px-4 py-2"
107 >
108 <div class="icon icon-arrow-left mr-2"></div>
109 <div>${languageUtil.get(themeDisplay.getLocale(), "volver-promociones")}</div></a
110 >
111 </div>
112 <div class="content-title d-flex hotel-rate">
113 <#if (ObjectField_subtituloGenerico.getData())??>
114 <#assign nombre =ObjectField_subtituloGenerico.getData() />
115 </#if>
116 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_nombre"].getData())??>
117 <#assign nombre =.data_model["ObjectRelationship#C_VIVAHotel#ofertas_marca"].getData()/>
118 </#if>
119 <h4>${nombre}</h4>
120
121 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_estrellas"].getData())??>
122 <#assign estrellas = .data_model["ObjectRelationship#C_VIVAHotel#ofertas_estrellas"].getData() />
123 <ul class="ml-3">
124
125 </ul>
126 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_categoriaSuperior"].getData())?? && .data_model["ObjectRelationship#C_VIVAHotel#ofertas_categoriaSuperior"].getData() = "true">
127 <span class="star-tag">SUP</span>
128 </#if>
129 </#if>
130
131
132 </div>
133 <div class="content-text">
134 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_nombre"].getData())??>
135 <h3>${.data_model["ObjectRelationship#C_VIVAHotel#ofertas_nombre"].getData()}</h3>
136 </#if>
137 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_tipo"].getData())?? && .data_model["ObjectRelationship#C_VIVAHotel#ofertas_tipo"].getData() != "Default">
138 <h5>${.data_model["ObjectRelationship#C_VIVAHotel#ofertas_tipo"].getData()}</h5>
139 </#if>
140 <#if (.data_model["ObjectRelationship#C_VIVAHotel#ofertas_localizacion"].getData())??>
141 <p>${.data_model["ObjectRelationship#C_VIVAHotel#ofertas_localizacion"].getData()}</p>
142 </#if>
143 </div>
144 <div class="content-info">
145 <div class="mt-5 mb-3">
146
147 <h4 class="${((.data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData())?? && .data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData() != 'Default')?then('text-adults','text-viva')}">${ObjectField_nombre.getData()}</h4>
148 </div>
149 <div class="my-3">
150 <#if (ObjectField_descripcionCompleta.getData())??>
151 <p>${ObjectField_descripcionCompleta.getData()}</p>
152 </#if>
153
154 </div>
155
156 </div>
157
158 <div class="content-price d-flex">
159 <#assign styleColor = ""/>
160 <#if (ObjectField_colorHexadecimal.getData())??>
161 <#assign styleColor = "background-color: " + ObjectField_colorHexadecimal.getData() + " !important;"/>
162 </#if>
163 <#if (ObjectField_uRLRoiback.getData())?? && ObjectField_uRLRoiback.getData() != "">
164 <#assign enlaceBoton = ObjectField_uRLRoiback.getData()/>
165 </#if>
166 <a class="btn ${((.data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData())?? && .data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData() != 'Default')?then('btn-adults','btn-viva')} p-3" name="${.data_model['ObjectRelationship#C_VIVAHotel#ofertas_codigoRoiback'].getData()}" href="${(enlaceBoton??)?then(enlaceBoton, '#')}" style="${styleColor}">${languageUtil.get(themeDisplay.getLocale(), "reservar-desde")} <span name="precioOferta">
167 <#if ObjectField_precioLiferay.getData() != "0.0">
168 ${ObjectField_precioLiferay.getData()} EUR
169 </#if>
170 </span></a>
171 </div>
172 </div>
173 </div>
174 </div>
175 </section>
176</#if>
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> servicio.imagenPrincipal [in template "24121366510601#31740#null" at line 17, column 77]
----
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: ${servicio.imagenPrincipal.link.href} [in template "24121366510601#31740#null" at line 17, column 75]
----
1<#if (ObjectEntry_objectEntryId.getData())??>
2 <#assign idObject= ObjectEntry_objectEntryId.getData() />
3 <#assign scopeKey= themeDisplay.getScopeGroupId() />
4
5 <#assign ofertaRest= restClient.get("/c/vivaofertas/${idObject}") />
6 <#if (ofertaRest.r_ofertas_c_vivaHotelId)??>
7 <#assign idHotel= ofertaRest.r_ofertas_c_vivaHotelId />
8 <#assign serviciosRest = restClient.get("/c/vivahotels/${idHotel}?nestedFields=servicioDestacados")/>
9
10 <section class="offer-activities">
11 <div class="container">
12 <div class="offer-activities-list">
13 <#list serviciosRest.servicioDestacados as servicio>
14
15 <div class="offer-activities-list-item">
16 <div class="imgItem">
17 <img src="${servicio.imagenPrincipal.link.href}" alt="imgItem" class="icon" />
18 </div>
19 <div class="titleItem">
20 <p class="${((.data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData())?? && .data_model['ObjectRelationship#C_VIVAHotel#ofertas_tipo'].getData() != 'Default')?then('text-adults','text-viva')}">${servicio.nombre}</p>
21 </div>
22 </div>
23
24 </#list>
25
26 </div>
27 </div>
28 </section>
29
30 </#if>
31
32</#if>
DISTANCIAS
A 300 m. de la playa de Puerto de Alcudia. A 62 km del Aeropuerto de Palma.
CONTACTO
edenlago@hotelsviva.com