Une erreur s'est produite lors du traitement du modèle.
The following has evaluated to null or missing:
==> relatedArticles.relatedLinkToPage  [in template "20115#20151#FULLARTICLE" at line 122, column 32]

----
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: #list relatedArticles.relatedLinkToPa...  [in template "20115#20151#FULLARTICLE" at line 122, column 25]
----
1<#macro cleanUnicode field> 
2    <#assign result = field?replace("\\u00e9", "é")?replace("\\u00e0", "à")?replace("\\u2019", "'") /> 
3	${result} 
4</#macro> 
5 
6<#assign showBreadcrumb = themeDisplay.getThemeSetting("show-breadcrumb")?boolean /> 
7<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
8 
9 
10<#assign image = (header.Visual.getData())!"" /> 
11<#assign hideHeaderFlag = getterUtil.getBoolean(header.hideHeader.getData()) /> 
12<#assign hideGetQuoteFlag = getterUtil.getBoolean(quoting_block.hideGetQuoteSection.getData()) /> 
13<#assign hideBottomLinksFlag = getterUtil.getBoolean(bottom_links.hideBottomLinks.getData()) /> 
14 
15 
16<!-- Article --> 
17	<#assign url="#"> 
18	<#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] /> 
19	<#assign url=PortalUtil.getCurrentCompleteURL(request) /> 
20	<#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
21	<#assign portalURL = serviceContext.getThemeDisplay().getPortalURL() /> 
22	<#assign description=.vars['reserved-article-description'].data /> 
23	<#-- 
24	<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
25	<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
26	 --> 
27	<#-- Header section --> 
28	<#-- TODO: if we have related content, then we should had the class ".t_fullArticle--hasAside" to the article element right below --> 
29	<#assign hasRelated=false /> 
30	<#if (relatedArticles.relatedLinkToPage)?has_content && relatedArticles.relatedLinkToPage.getSiblings()?first.getData()?has_content> 
31		<#assign hasRelated=true /> 
32		<article class="article-full"> 
33	<#else> 
34		<article class="article-full"> <#-- OR  --> 
35	</#if> 
36 
37	<!-- hero-banner hero-banner--slim --> 
38	<#if !hideHeaderFlag> 
39		<#if image == ""> 
40			<p>Please include a background image if you select the option "Show Header"</p> 
41		<#else> 
42			<div class="hero-banner"> 
43				<div class="hero-banner__mask"> 
44                   <picture> 
45									 <source srcset="${image} 1x, ${image} 2x" media="(max-width: 600px)"> 
46								<img class="lazyload" style="width: 100%;" src="${image}" data-fileentryid="${header.Visual.getAttribute("fileEntryId")}" data-src="${image}" data-srcset="${image}" /> 
47						</picture> 
48                    <div class="hero-banner__mask"> 
49                        <div class="hero-banner__container"> 
50                            <div class="hero-banner__content text-left"> 
51                                <#-- BREADCRUMBS --> 
52                                <#if !showBreadcrumb> 
53                                    <div class="v2-hero-banner__breadcrumbs"> 
54 
55                                        <#assign prefs = { 
56                                        "displayStyle": "ddmTemplate_NEOBREADCRUMB", 
57                                                "showCurrentGroup": "false", 
58                                                "showGuestGroup": "false", 
59                                                "showLayout": "true", 
60                                                "showParentGroups": "true", 
61                                                "showPortletBreadcrumb": "true" 
62                                        } /> 
63                                        <#assign instanceId = .now?long> 
64                                        <@liferay_portlet["runtime"] 
65                                            portletName="com_liferay_site_navigation_breadcrumb_web_portlet_SiteNavigationBreadcrumbPortlet" 
66                                                instanceId="Slim" 
67                                                defaultPreferences = freeMarkerPortletPreferences.getPreferences(prefs) 
68                                        /> 
69                                    </div> 
70                                </#if> 
71                                <h1 class="v2-hero-banner__title font-bold-publicoheadline color-white mt-4">${header.Visual.MainText.getData()}</h1> 
72                                <#if header.Visual.TextCenter.getData()?? && header.Visual.TextCenter.getData() != ""> 
73                                    <p class="v2-hero-banner__text color-white">${header.Visual.TextCenter.getData()}</p> 
74                                </#if> 
75                                <div class="t_introduction__ctas mt-4"> 
76                                    <#if header.Visual.ButtonLeft.ButtonLeftText.getData()?? && header.Visual.ButtonLeft.ButtonLeftText.getData() != ""> 
77                                        <a href="${header.Visual.ButtonLeft.getFriendlyUrl()}" class="btn btn--primary text-uppercase mr-3" onclick="pushDataLayerCTA(window.location.href + &quot;${header.Visual.ButtonLeft.getFriendlyUrl()}&quot;, 'secondary red', &quot;${header.Visual.ButtonLeft.ButtonLeftText.getData()}&quot;)"> 
78                                            ${header.Visual.ButtonLeft.ButtonLeftText.getData()} 
79                                        </a> 
80                                    </#if> 
81                                    <#if header.Visual.ButtonRight.ButtonRightText.getData()?? && header.Visual.ButtonRight.ButtonRightText.getData() != ""> 
82                                        <a href="${header.Visual.ButtonRight.getFriendlyUrl()}" class="btn btn--light-white text-uppercase" onclick="pushDataLayerCTA(window.location.href + &quot;${header.Visual.ButtonRight.getFriendlyUrl()}&quot;, 'ghost', &quot;${header.Visual.ButtonRight.ButtonRightText.getData()}&quot;)"> 
83                                            <span class="t_button__label">${header.Visual.ButtonRight.ButtonRightText.getData()}</span> 
84                                        </a> 
85                                    </#if> 
86                                </div> 
87                            </div> 
88                        </div> 
89                    </div> 
90				</div> 
91			</div> 
92		</#if> 
93	</#if> 
94	<!-- /hero-banner --> 
95 
96    <div class="article-full__content pb-4"> 
97        <div class="article-full__container container"> 
98 
99			<!-- tag --> 
100				<#if TopContent?has_content> 
101                    <div class="tg__tag"> 
102                        <div class="tg__tag--container"> 
103                        <#assign journalArticleId = .vars['reserved-article-id'].data> 
104                        <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
105                        <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
106                        <#assign articleResourcePK = journalArticleLocalService.getArticle(groupId,journalArticleId).getArticleResourceUuid()> 
107                        <#assign categoryList = assetEntryLocalService.fetchEntry(groupId,articleResourcePK).getCategories()> 
108                            <ul class="tg__tag--list"> 
109                                <#list categoryList as category> 
110                                    <li class="tg__tag--element"> 
111                                        <a class="t_tag__link"> 
112                                            ${category.getTitle(locale)} 
113                                        </a> 
114                                    </li> 
115                                </#list> 
116                            </ul> 
117                        </div> 
118                    </div> 
119				</#if> 
120            <!-- tag --> 
121			<#assign fullColumn="full-column"> 
122			<#list relatedArticles.relatedLinkToPage.getSiblings() as relatedArticle> 
123				<#if relatedArticle.getData()?has_content> 
124				   <#assign fullColumn=""> 
125				</#if> 
126			</#list> 
127 
128			<#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content> 
129           		<div class="article-full__row"> 
130			<#else> 
131				<div class="article-full__row--"> 
132			</#if> 
133                <div class="article-full__left ${fullColumn}"> 
134 
135                    <div class="article-full__text"> 
136                    	<#if themeDisplay.getURLCurrent()?contains(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL())> 
137    						${TopContent.getData()} 
138						<#else> 
139    						${TopContent.getData()?replace(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL(),"")} 
140						</#if> 
141                    </div> 
142 
143                    <#-- Get Quote section --> 
144                        <#if !hideGetQuoteFlag> 
145                            <section class="t_block t_quote t_quote--xlarge" style="background-color:${quoting_block.background_color.getData()}"> 
146                                <div class="t_block__inner t_quote__inner"> 
147                                                <h2 class="t_quoteTitle font-display-5 color-white font-medium-publicoheadline">${(quoting_block.Title.getData())!""}</h2> 
148                                    <p class="t_mainText color-white font-medium">${quoting_block.paragraph.getData()}</p> 
149                                    <#if quoting_block.Button.LinkText.getData()?? && quoting_block.Button.LinkText.getData() != ""> 
150                                        <div class="mt-2"> 
151                                            <a href="${quoting_block.Button.getFriendlyUrl()}" class="btn btn--light-white text-uppercase" onclick="pushDataLayerCTA(window.location.href + &quot;${quoting_block.Button.getFriendlyUrl()}&quot;, 'ghost', &quot;${quoting_block.Button.LinkText.getData()}&quot;)"> 
152                                                ${quoting_block.Button.LinkText.getData()} 
153                                            </a> 
154                                        </div> 
155                                    </#if> 
156                                </div> 
157                            </section> 
158                        </#if> 
159                    <#-- Get Quote section --> 
160 
161					<#-- Mid content --> 
162					<#if mid_content.getData()?has_content> 
163						<section class="article-full__text mt-5"> 
164							<p> 
165							<#if themeDisplay.getURLCurrent()?contains(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL())> 
166								${mid_content.getData()} 
167							<#else> 
168								${mid_content.getData()?replace(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL(),"")} 
169							</#if> 
170							</p> 
171						</section> 
172					</#if> 
173 
174                    <#-- Splitted images section --> 
175                    <#if (splitted_images.split_image.getSiblings())?has_content> 
176                    <!-- pictures--> 
177                        <section class="pictures mt-5"> 
178                            <div class="pictures__inline pictures__inline--container"> 
179                            <#list splitted_images.split_image.getSiblings() as image_splitted> 
180                                    <#if (image_splitted.getData()?has_content 
181                                    && image_splitted.getAttribute("fileEntryId")?has_content 
182                                    && image_splitted.getAttribute("fileEntryId")?has_content 
183                                    && image_splitted.getAttribute("alt")?has_content)> 
184                                <div class="pictures__inline pictures__inline--img-fluid"> 
185                                        <figure class="t_picture__element"> 
186                                            <img class="pictures__inline pictures__inline--card-img-top lazyload" data-fileentryid="${image_splitted.getAttribute("fileEntryId")}" alt="${image_splitted.getAttribute("alt")}" data-src="${image_splitted.getData()}" /> 
187                                        </figure> 
188                                    <div class="pictures__inline pictures__inline--card-img-overlay"> 
189                                        <p class="pictures__inline pictures__inline--card-title color-white font-bold-publicoheadline font-display-5 pb-3">${image_splitted.split_image_text.getData()}</p> 
190                                    </div> 
191                                </div> 
192                                    </#if> 
193                                </#list> 
194                            </div> 
195                        </section> 
196                    <!-- pictures--> 
197                    </#if> 
198 
199					<#-- Bottom content --> 
200					<#if bottom_content.getData()?has_content> 
201					<section class="article-full__text mt-5"> 
202						<p> 
203						<#if themeDisplay.getURLCurrent()?contains(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL())> 
204							${bottom_content.getData()} 
205						<#else> 
206							${bottom_content.getData()?replace(themeDisplay.getPathFriendlyURLPublic()+themeDisplay.getSiteGroup().getFriendlyURL(),"")} 
207						</#if> 
208 
209						</p> 
210					</section> 
211					</#if> 
212 
213                </div> 
214 
215				<#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content> 
216					<div class="article-full__right"> 
217						<!-- Detail 1 --> 
218 
219						<#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content> 
220							<#list relatedArticles.relatedLinkToPage.getSiblings() as relatedArticle> 
221								<#if relatedArticle?index=0 && relatedArticle.getData()?has_content> 
222								<aside class="article-full__detail mb-3"> 
223									<div class="article-full__container color-white"> 
224									<div class="pb-3"><span class="font-bold-publicoheadline font-display-5"><@liferay.language key="related-assets" /></span></div> 
225									<div class="article-full__detail--data font-normal"> 
226 
227									<#assign layout> 
228										<@cleanUnicode relatedArticle.getData() /> 
229									</#assign> 
230									<#assign layout = layout?eval /> 
231 
232									<#if layout?has_content> 
233									<#assign pageTitle = "default2" /> 
234										<#--TITLE--> 
235										<#if layout.title?? && layout.title?trim!=""> 
236		                				<#assign pageTitle = layout.title /> 
237										<#--NAME--> 
238										<#elseif layout.name?? && layout.name?trim!=""> 
239										<#assign pageTitle = layout.name /> 
240										<#--LABEL--> 
241										<#elseif layout.label?? && layout.label?trim!=""> 
242											<#assign pageTitle = layout.label /> 
243										<#--DEBUG--> 
244										<#elseif layout?has_content> 
245											<#assign pageTitle = "---." /> 
246										<#--EMPTY--> 
247										<#else> 
248											<#assign pageTitle = "---.." /> 
249										</#if> 
250										<p class="article-full__detail--title"> 
251											<a class="color-white" href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a> 
252										</p> 
253										<script> 
254											$('.article-full__right').css('display', 'block'); 
255										</script> 
256									<#else> 
257										<script> 
258											$('.article-full__right').css('display', 'none'); 
259										</script> 
260									</#if> 
261 
262 
263								<#elseif relatedArticle.getData()?has_content> 
264									<#attempt> 
265										<#assign layout> 
266											<@cleanUnicode relatedArticle.getData() /> 
267										</#assign> 
268										<#assign layout = layout?eval /> 
269 
270										<#if layout?has_content> 
271										<#assign pageTitle = "default2" /> 
272											<#--TITLE--> 
273											<#if layout.title?? && layout.title?trim!=""> 
274			                				<#assign pageTitle = layout.title /> 
275											<#--NAME--> 
276											<#elseif layout.name?? && layout.name?trim!=""> 
277											<#assign pageTitle = layout.name /> 
278											<#--LABEL--> 
279											<#elseif layout.label?? && layout.label?trim!=""> 
280												<#assign pageTitle = layout.label /> 
281											<#--DEBUG--> 
282											<#elseif layout?has_content> 
283												<#assign pageTitle = "---." /> 
284											<#--EMPTY--> 
285											<#else> 
286												<#assign pageTitle = "---.." /> 
287											</#if> 
288											<p class="article-full__detail--title"> 
289												<a class="color-white" href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a> 
290											</p> 
291											<script> 
292												$('.article-full__right').css('display', 'block'); 
293											</script> 
294										<#else> 
295											<script> 
296												$('.article-full__right').css('display', 'none'); 
297											</script> 
298										</#if> 
299									<#recover> 
300										<#-- Recover from error --> 
301										<#assign layoutStr = relatedArticle.getData()?string/> 
302										<#if layoutStr?contains("\\u2019")> 
303											<#assign layoutStr = layoutStr?replace("\\u2019", "'")/> 
304											<#assign layout = layoutStr?eval/> 
305											<#if layout.name?? && layout.name?trim!=""> 
306												<#assign pageTitle = layout.name /> 
307											<#elseif layout.label?? && layout.label?trim!=""> 
308												<#assign pageTitle = layout.label /> 
309											<#elseif layout.title?? && layout.title?trim!=""> 
310	                                        <#assign pageTitle = layout.title /> 
311											<#else> 
312												<#assign pageTitle = "---___" /> 
313											</#if> 
314                                            <p class="article-full__detail--title"> 
315												<a class="color-white" href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a> 
316											</p> 
317											<script> 
318											$('.article-full__right').css('display', 'block'); 
319											</script> 
320										<#else> 
321											<script> 
322												$('.article-full__right').css('display', 'none'); 
323											</script> 
324										</#if> 
325									</#attempt> 
326 
327								</#if> 
328							</#list> 
329							<#if hasRelated> 
330									</div> 
331									</div> 
332								</aside> 
333							</#if> 
334						</#if> 
335 
336					</div> 
337				</#if> 
338            </div> 
339        </div> 
340    </div> 
341 
342	 
343 
344	 
345 
346	<#if !hideBottomLinksFlag> 
347	<section class="mt-1"> 
348	<h2 class="font-display-4 text-center font-medium-publicoheadline pt-3 pb-5">${(bottom_links.bottom_content_title.getData())!""}</h2> 
349 
350	<div class="article-inline"> 
351 
352			<#list bottom_links.Picture.getSiblings() as cur_Picture> 
353				  <div class="article-inline__card mb-6"> 
354					<div class="article-inline__image"> 
355						<#if cur_Picture.getData()?? && cur_Picture.getData() != ""> 
356							<img class="lazyload t_insurance__listElement__picture" data-fileentryid="${cur_Picture.getAttribute("fileEntryId")}" alt="${cur_Picture.getAttribute("alt")}" data-src="${cur_Picture.getData()}" /> 
357						</#if> 
358					</div> 
359					<div class="article-inline__card-body"> 
360					  <h3 class="article-inline__title h2 ">${cur_Picture.bottom_content_subtitle.getData()}</h3> 
361					  <p class="article-inline__card-text mb-0 pb-2"> 
362						${cur_Picture.Text.getData()} 
363					  </p> 
364					  <#if cur_Picture.Link.TextLink.getData()?? && cur_Picture.Link.TextLink.getData() != ""> 
365					  <div><a href="${cur_Picture.Link.getFriendlyUrl()}"class="link link--secondary-link icons--right icons--east">${cur_Picture.Link.TextLink.getData()}</a></div> 
366						</#if> 
367					</div> 
368				  </div> 
369			</#list> 
370	</div> 
371	</section> 
372	</#if> 
373 
374 
375</article> 
376 
377<!-- /Article -->