Une erreur s'est produite lors du traitement du gabarit.
The following has evaluated to null or missing:
==> httpServletRequest.getCookies()  [in template "20115#20151#IDEWE.TEMPLATE.WEB.SEGMENT" at line 20, column 8]

----
Tip: If the failing expression is known to be 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 httpServletRequest.getCookies()...  [in template "20115#20151#IDEWE.TEMPLATE.WEB.SEGMENT" at line 20, column 1]
----
1<#assign 
2    testimonialArticleService = serviceLocator.findService("be.idewe.portal.website.articles.api.TestimonialArticleService") 
3    relatedTestimonialList = testimonialArticleService.getRelatedTestimonials(.vars['reserved-article-id'].getData(), 9, groupId, locale) 
4	 
5    serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() 
6	themeDisplay = serviceContext.getThemeDisplay() 
7	thisLayout = themeDisplay.getLayout() 
8    sourceUrl = themeDisplay.getURLCurrent()?keep_before("?") 
9	siteUrl = themeDisplay.getPathFriendlyURLPublic() + thisLayout.getGroup().getFriendlyURL() 
10
11<#if !sourceUrl?starts_with(siteUrl)> 
12    <#assign siteUrl = ''> 
13</#if> 
14<#assign 
15	fullSiteUrl = themeDisplay.getPortalURL() + siteUrl 
16 
17    httpServletRequest = serviceContext.getRequest() 
18    ideweComponentValue = (httpServletRequest.getParameter('comp')?html)!'' 
19
20<#list httpServletRequest.getCookies() as cookie> 
21    <#if cookie.getName() == 'idewe-component'> 
22        <#assign ideweComponentValue = cookie.getValue()> 
23    </#if> 
24</#list> 
25<#assign 
26    solutionArticleService = serviceLocator.findService("be.idewe.portal.website.articles.api.SolutionArticleService") 
27    relatedSolutionList = solutionArticleService.getWeightedSolutions(groupId, locale, .vars['reserved-article-id'].getData(), ideweComponentValue) 
28
29<div class="segment-details"> 
30	<#if banner.bannerImage.getData()?? && banner.bannerImage.getData()?has_content> 
31		<div class="segment-details-banner banner <#if banner.isParallax?has_content && banner.isParallax.getData()?? && banner.isParallax.getData() == "true">parallax-image</#if>" 
32            <#if banner.bannerHeight?has_content && banner.bannerHeight.getData()?? && banner.bannerHeight.getData()?number &gt;= 250> style="height: ${banner.bannerHeight.getData()}px;"</#if>> 
33			<img data-fileentryid="${banner.bannerImage.getAttribute("fileEntryId")}" alt="${banner.bannerImage.getAttribute("alt")}" src="${banner.bannerImage.getData()}" class="${banner.bannerImageAlignment.getData()!}" /> 
34			<div class="banner-overlay ${banner.bannerTextPosition.getData()!}"> 
35                <div class="banner-overlay-gradient ${banner.bannerOverlayColor.getData()!}"></div> 
36                <#if banner.bannerTitle.getData()?has_content || banner.bannerText.getData()?has_content> 
37                    <div class="banner-overlay-content-wrapper"> 
38                        <div class="banner-overlay-content-inner"> 
39                            <div class="banner-overlay-content ${banner.bannerOverlayColor.getData()!}"> 
40                                <#if banner.bannerTitle.getData()?has_content> 
41                                    <p class="banner-title">${banner.bannerTitle.getData()}</p> 
42                                </#if> 
43                                <#if banner.bannerText.getData()?has_content> 
44                                    <p class="banner-text">${banner.bannerText.getData()}</p> 
45                                </#if> 
46                            </div> 
47                        </div> 
48                    </div> 
49                </#if> 
50            </div> 
51		</div> 
52	</#if> 
53	<div class="segment-details-breadcrumbs"> 
54		<nav id="breadcrumbs"> 
55            <@liferay.breadcrumbs /> 
56        </nav> 
57	</div> 
58	<div class="segment-details-content centered-content"> 
59		<h1 id="${companyId}_Top">${.vars['reserved-article-title'].getData()}</h1> 
60		<div class="web-content-paragraph clearfix">${intro.getData()}</div> 
61		<#if paragraph?has_content> 
62			<#list paragraph.getSiblings() as paragraphItem> 
63				<div class="web-content-paragraph color-${paragraphItem.paragraphColor.getData()} clearfix"> 
64					<#if paragraphItem.paragraphTitle.getData()?has_content> 
65						<h3 class="web-content-paragraph-title">${paragraphItem.paragraphTitle.getData()}</h3> 
66					</#if> 
67					<#if paragraphItem.paragraphImage?? && paragraphItem.paragraphImage.paragraphImageAlignment?? && paragraphItem.paragraphImage.paragraphImageAlignment.getData() != ""> 
68                        <#assign imageAlignment = paragraphItem.paragraphImage.paragraphImageAlignment.getData()> 
69                    <#else> 
70                        <#assign imageAlignment = "left"> 
71                    </#if> 
72                    <#if paragraphItem.paragraphImage.paragraphImageFile?? && paragraphItem.paragraphImage.paragraphImageFile.getData()?has_content> 
73						<#if paragraphItem.paragraphImage.paragraphImageWidth?? && paragraphItem.paragraphImage.paragraphImageWidth.getData() != ""> 
74                            <#assign imageWidth = paragraphItem.paragraphImage.paragraphImageWidth.getData()> 
75                        <#else> 
76                            <#assign imageWidth = "full"> 
77                        </#if> 
78                        <div class="web-content-paragraph-image alignment-${imageAlignment} width-${imageWidth} wow fadeIn"> 
79							<img alt="${paragraphItem.paragraphImage.paragraphImageFile.getAttribute("alt")}" src="${paragraphItem.paragraphImage.paragraphImageFile.getData()}" /> 
80						</div> 
81					</#if> 
82					<div class="web-content-paragraph-content alignment-${paragraphItem.paragraphImage.paragraphImageAlignment.getData()}">${paragraphItem.paragraphContent.getData()}</div> 
83				</div> 
84			</#list> 
85		</#if> 
86	</div> 
87    <#if relatedTestimonialList?? && (relatedTestimonialList?size > 0)> 
88        <div class="segment-details-testimonials-wrapper centered-content"> 
89            <div class="related-testimonials"> 
90                <h3>${testimonialsParagraph.testimonialsParagraphTitle.getData()}</h3> 
91                <div>${testimonialsParagraph.testimonialsParagraphContent.getData()}</div> 
92                <div class="owl-carousel testimonial-carousel"> 
93                    <#list relatedTestimonialList as relatedTestimonial> 
94                        <div class="relatedTestimonial"> 
95                            <div class="relatedTestimonialContent"> 
96                                <#if relatedTestimonial.getImageUrl()?has_content> 
97                                    <div class="logo-testimonial"><img src="${relatedTestimonial.getImageUrl()}" /></div> 
98                                </#if> 
99                                <#if relatedTestimonial.isDisplayCompanyName()> 
100                                    <div class="company-name">${relatedTestimonial.getCompanyName()}</div> 
101                                </#if> 
102                                <div class="quote-testimonial"> 
103                                    <a href="${fullSiteUrl}/-/${relatedTestimonial.getArticleUrl()}"><i class="fa fa-quote-left"></i>${relatedTestimonial.getTitle()!""}<i class="fa fa-quote-right"></i></a> 
104                                </div> 
105                                <div class="excerpt-testimonial">${relatedTestimonial.getDescription()!""}</div> 
106                            </div> 
107                            <a class="button button-green" href="${fullSiteUrl}/-/${relatedTestimonial.getArticleUrl()}"><@liferay.language key="idewe.testimonial.other.read.more" /></a> 
108                        </div> 
109                    </#list> 
110                </div> 
111                <div class="owl-mask"></div> 
112            </div> 
113        </div> 
114    </#if> 
115    <#if relatedSolutionList?size &gt; 0> 
116        <div class="segment-details-solutions-wrapper"> 
117            <div class="segment-details-solutions centered-content"> 
118                <div class="web-content-paragraph"> 
119                    <h3 class="web-content-paragraph-title">${solutionsParagraph.solutionsParagraphTitle.getData()}</h3> 
120                    <div class="web-content-paragraph-content">${solutionsParagraph.solutionsParagraphContent.getData()}</div> 
121                </div> 
122                <div class="segment-details-solutions-carousel"> 
123                    <div class="owl-carousel solutions-carousel"> 
124                        <#list relatedSolutionList as relatedSolution> 
125                            <div class="idewe-solution"> 
126                                <div class="card-wrapper"> 
127                                    <div id="card-${relatedSolution?index}" class="card-rotating effect__click"> 
128                                        <div class="face card-rotating__front z-depth-1"> 
129                                            <h4>${relatedSolution.getTitle()}</h4> 
130                                            <div class="solutions-image-wrapper"> 
131                                                <img class="solutions-image" alt="${relatedSolution.getImageAlt()}" src="${relatedSolution.getImageSrc()}" /> 
132                                            </div> 
133                                            <a class="rotate-btn" data-card="card-${relatedSolution?index}"><i class="fas fa-redo-alt"></i> <@liferay.language key="idewe.flipcard.show.back" /></a> 
134                                        </div> 
135                                        <div class="face card-rotating__back z-depth-1"> 
136                                            <h5>${relatedSolution.getTitle()}</h5> 
137                                            <div class="solutions-description web-content-paragraph clearfix">${relatedSolution.getDescription()}</div> 
138                                            <#if relatedSolution.getDownloadLink()?? && relatedSolution.getDownloadLink()?has_content> 
139                                                <a class="button download-button button-blue" href="${relatedSolution.getDownloadLink()}" target="_blank"> 
140                                                    <i class="fas fa-download"></i> 
141                                                    <span>Download PDF</span> 
142                                                </a> 
143                                            </#if> 
144                                        </div> 
145                                    </div> 
146                                </div> 
147                            </div> 
148                        </#list> 
149                    </div> 
150                </div> 
151            </div> 
152        </div> 
153    </#if> 
154	<div class="segment-details-contact-wrapper web-content-paragraph color-inverted"> 
155        <div class="segment-details-contact centered-content"> 
156            <#if contactParagraph?has_content> 
157                <h3 class="web-content-paragraph-title">${contactParagraph.contactParagraphTitle.getData()}</h3> 
158                <div class="web-content-paragraph-content">${contactParagraph.contactParagraphContent.getData()}</div> 
159                <a class="button contact-button larger-button button-blue-inverted" href="${contactPage.getFriendlyUrl()}?source=${sourceUrl}"> 
160                    <#if contactParagraph.contactButtonText?? && contactParagraph.contactButtonText.getData()?has_content> 
161                        ${contactParagraph.contactButtonText.getData()} 
162                    <#else> 
163                        <@liferay.language key="idewe.contact" /> 
164                    </#if> 
165                </a> 
166            </#if> 
167        </div> 
168	</div> 
169	<div class="segment-details-newsletter"> 
170		<div class="centered-content"> 
171			<h3>${newsletterParagraph.newsletterParagraphTitle.getData()}</h3> 
172			<div class="web-content-paragraph-content">${newsletterParagraph.newsletterParagraphContent.getData()}</div> 
173            <a class="button newsletter-button larger-button button-blue" href="${newsletterPage.getFriendlyUrl()}?source=${sourceUrl}"> 
174                <#if newsletterParagraph.newsletterButtonText?? && newsletterParagraph.newsletterButtonText.getData()?has_content> 
175                    ${newsletterParagraph.newsletterButtonText.getData()} 
176                <#else> 
177                    <@liferay.language key="idewe.newsletter.subscribe" /> 
178                </#if> 
179            </a> 
180		</div> 
181	</div> 
182</div> 
183<script type="text/javascript"> 
184    jQuery(document).ready(function(){ 
185        jQuery(".owl-carousel.solutions-carousel").owlCarousel({ 
186            nav: true, 
187            navText: ["<i class='fa fa-chevron-left'></i>","<i class='fa fa-chevron-right'></i>"], 
188            responsive:{ 
189                  0:{ 
190                      items: 1 
191                  }, 
192                  500:{ 
193                      items: 2 
194                  }, 
195                  800:{ 
196                      items: 3 
197
198
199        }); 
200         
201        jQuery('.rotate-btn').click(function(event) { 
202            var clickedCardId = jQuery(event.target).attr('data-card'); 
203            jQuery('.card-rotating').removeClass('flipped'); 
204            jQuery('#' + clickedCardId).addClass('flipped'); 
205        }); 
206         
207        jQuery('html,body').scrollTop(0); 
208    }); 
209</script>