An error occurred while processing the template.
Failed to "?eval" string with this error:

---begin-message---
Syntax error in ?eval-ed string in line 1, column 2:
Encountered ")", but was expecting one of:
    <STRING_LITERAL>
    <RAW_STRING>
    "false"
    "true"
    <INTEGER>
    <DECIMAL>
    "."
    "+"
    "-"
    "!"
    "["
    "("
    "{"
    <ID>
---end-message---

The failing expression:
==> imageElem?eval  [in template "20101#20128#null" at line 71, column 46]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign imageJSON = imageElem?eval  [in template "20101#20128#null" at line 71, column 25]
----
1<#-- Article Display 2 --> 
2 
3<#include init />  
4 
5 
6<#--<#include "${full_templates_path}/homepage/article_display2.ftl" />--> 
7<#assign fileEntryServiceUtil = objectUtil("com.liferay.document.library.kernel.service.DLFileEntryLocalServiceUtil")> 
8<#-- 
9Article Display 2 
10--> 
11<#include init/> 
12<link rel="stylesheet"   href="${themeDisplay.getPathThemeCss()}/articleDisplay2.css"/> 
13<#assign imageJSON = "{}"?eval> 
14<#assign title = "No title"> 
15<#assign summary = "No summary"> 
16<#assign category = "No category"> 
17<#assign categoryName = "No Title"> 
18<#assign publishDate = ""> 
19<#assign pdfUrl = ""> 
20<#if curEntry??> 
21	<#assign renderer = curEntry.getAssetRenderer()> 
22	<#assign className = renderer.getClassName()> 
23	<#if className == "com.liferay.journal.model.JournalArticle"> 
24		<#assign journalArticle = renderer.getArticle()> 
25		<#assign journalArticleId = journalArticle.getArticleId()> 
26	</#if> 
27<#else> 
28	<#assign journalArticleId = .vars['reserved-article-id'].data> 
29	<#-- journalArticle.getDescription() returns the diacritical description wraped in <span> => assetEntry.getSummary() --> 
30	<#assign journalArticleLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleLocalServiceUtil"]> 
31	<#assign journalArticle = journalArticleLocalServiceUtil.getLatestArticle(themeDisplay.getScopeGroupId(), journalArticleId)> 
32	<#assign journalArticleResourcePrimKey = journalArticle.getResourcePrimKey()> 
33	<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
34	<#assign curEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", journalArticleResourcePrimKey)> 
35	<#assign renderer = curEntry.getAssetRenderer()> 
36</#if> 
37<#assign journalArticleTitle = renderer.getTitle(locale)> 
38<#if journalArticleTitle?hasContent> 
39	<#if journalArticleTitle?length &lt; 115> 
40		<#assign title = journalArticleTitle> 
41	<#else> 
42		<#assign title = journalArticleTitle?substring(0,115) + "..."> 
43	</#if>		 
44</#if>	 
45 
46<#assign journalArticleSummary =  htmlUtil.extractText(curEntry.getSummary(locale))> 
47<#if journalArticleSummary?hasContent> 
48		<#if journalArticleSummary?length &lt; 110> 
49			<#assign summary = journalArticleSummary>	 
50		<#else> 
51			<#assign summary = journalArticleSummary?substring(0,107) + "...">	 
52		</#if> 
53</#if>		 
54<#list curEntry.getCategories() as journalArticleCategory> 
55	<#assign category = journalArticleCategory.getTitle(locale)> <#-- only one category can be used --> 
56	<#assign categoryName= journalArticleCategory.getName()> 
57	<#break> 
58</#list> 
59 
60<#if curEntry.publishDate?hasContent> 
61 	<#setting dateFormat=display_date_format> 
62 	<#setting locale = locale.getLanguage()> 
63	<#assign publishDate =  curEntry.publishDate?date> 
64</#if> 
65<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(locale))> 
66<#assign rootElement = document.getRootElement()> 
67<#list rootElement.elements() as dynamicElement> 
68	<#switch dynamicElement.attributeValue("name")> 
69		<#case "image1"> 
70			<#assign imageElem = dynamicElement.element("dynamic-content").getText()> 
71			<#assign imageJSON = imageElem?eval> 
72			<#break> 
73		<#case "pdfFile"> 
74			<#assign pdfElem = dynamicElement.element("dynamic-content").getText()> 
75			<#if validator.isNotNull(pdfElem)> 
76	 			<#assign pdfJSON = pdfElem?eval> 
77				<#assign pdfUrl = "/c/document_library/get_file?uuid=" + pdfJSON.uuid	+ "&groupId=" + pdfJSON.groupId> 
78				<#assign pdfFile = fileEntryServiceUtil.getFileEntryByUuidAndGroupId(pdfJSON.uuid, pdfJSON.groupId?number)> 
79				<#assign pdfFileSize = pdfFile.getSize()/1024> 
80				<#assign pdfFileType = pdfFile.getExtension()> 
81			</#if> 
82			<#break>	 
83		<#default> 
84	</#switch> 
85</#list> 
86 
87<#include "${full_templates_path}/inc/redirect_actualites_portlet.ftl" /> 
88<#assign articleUrl =getUrlArticle(journalArticle.getUrlTitle(locale)) />  
89 
90<#assign structure = journalArticle.getDDMStructure()/> 
91<#assign isComDePresse = structure.getName(locale) == "Press_release"> 
92 
93 
94 
95 
96 
97 
98<#assign notFromCarousel = !fromCarousel?? || !fromCarousel> 
99 
100<div class="<#if notFromCarousel>rectangle-article-display2<#else>carousel-rectangle</#if>" > 
101	 
102<#if notFromCarousel> 
103	<div class="image-article-display2"> 
104 
105	<#if imageJSON?hasContent> 
106		<a href='${articleUrl}'> 
107			<img alt="${imageJSON.alt}"  aria-hidden="true" data-fileentryid="${imageJSON.fileEntryId}" class=" " loading="lazy" loading="lazy" src="/documents/${imageJSON.groupId}/${imageJSON.uuid}"/> 
108		</a> 
109	<#else> 
110		<#if imageElem?hasContent>  
111			<a href='${articleUrl}'> 
112				<img alt="${imageElem.getAttribute('alt')}"   aria-hidden="true" data-fileentryid="${imageElem.getAttribute('fileEntryId')}" class=" "  loading="lazy" loading="lazy" src="${imageElem.getData()}" /> 
113			</a> 
114		</#if>	 
115	</#if> 
116 	</div> 
117</#if> 	 
118	<div class="<#if notFromCarousel>box-text-article-display2 wording-block-article-display2</#if>"> 
119  		<div class="<#if notFromCarousel>wording-article-display2</#if>">  
120	  		<div class="<#if notFromCarousel>categorie-article-display2<#else>carousel-category</#if>" > 
121	  			<a href='${actualite_url_portlet+categoryName+"/1"}' >${category}</a> 
122	  		</div>  
123	  		<h3  <#if notFromCarousel && imageJSON?hasContent> id="${journalArticleId}" </#if>  class="<#if notFromCarousel>titre-de-l-actualite-article-display2<#else>carousel-title</#if>"><a href='${articleUrl}'>${title}</a></h3> 
124   			<p class="<#if notFromCarousel>petite-description-d-article-display2<#else>carousel-description</#if>">${summary}</p>  
125  		</div>  		 
126<#if notFromCarousel> 
127	<#if isComDePresse> 
128		<div class="download-article_display2"> 
129		<#if pdfUrl?hasContent> 
130			<div class="date-article-display2"> 
131				<div style="overflow:hidden; float:left;">${publishDate}</div> 
132				<a  href='${pdfUrl}' target='_blank' > 
133				  	<div class="telecharger-article_display2" style="float:left;"><@liferay.language key="bnpparibas.cardif.portlet.telecharger" /> (${pdfFileSize?string("0")} ko ${pdfFileType})</div> 
134				  	<div class="icn-download-article_display2" style="float:right;"> 
135				  		<img style="float:right; margin-top: 0px;margin-bottom: 0px;margin-left: 16px;" class=" " aria-hidden="true" alt="<@liferay.language key="bnpparibas.cardif.portlet.telecharger" />"  loading="lazy" loading="lazy" src="${themeDisplay.getPathThemeImages()}/cardif/press_release/download.png"/>  
136				  	</div> 
137			  	</a> 
138			</div>  	 
139		<#else> 
140			<div class="date-article-display2"> 
141				<div style="overflow:hidden; float:left;">${publishDate}</div> 
142			</div> 	 
143		</#if> 
144		</div> 
145	<#else> 
146		<div class="date-article-display2">${publishDate}</div> 
147	</#if> 
148</#if>	 
149	</div>	  
150</div> 
Strategy

BNP Paribas enters into exclusive negotiations with AXA for the acquisition of AXA investment Managers and a long t...

The BNP Paribas Group announces today that it has entered into exclusive negotiations with AXA to acquire 1...

01 August 2024
Download (883 ko pdf)
Strategy

New BNP Paribas Cardif survey: “Protect & Project Oneself”

Results of the 2024 survey show that people are slightly less concerned about unforeseen life events than i...

04 June 2024
Download (798 ko pdf)
Strategy

BNP Paribas Cardif reports increased results for 2023 thanks to partnership model

BNP Paribas Cardif reports solid results for 2023, reflecting a balanced model and robust sales momentum. P...

06 March 2024
Download (1379 ko pdf)
Strategy

Appointments at BNP Paribas Cardif

Chrystelle Renaud is appointed Deputy Chief Executive Officer and General Secretary Christian Gibot is ap...

04 March 2024
Download (689 ko pdf)
Strategy

A look back at BNP PARIBAS CARDIF’S 2023 HIGHLIGHTS

BNP Paribas Cardif celebrated its 50th anniversary. Half a century of adventure, partnerships, and internat...

27 December 2023
Strategy

BNP Paribas Cardif reports solid 2022 results, reflecting strong commercial momentum

BNP Paribas Cardif’s performance in 2022 confirmed the solidity of its partnership model and diversificatio...

04 April 2023
Download (1449 ko pdf)
Strategy

BNP Paribas Cardif's 2022 highlights

In 2022, BNP Paribas Cardif accelerated its transformation by taking to account the emerging expectations o...

03 January 2023
Strategy

BNP Paribas Cardif launches ambitious 2025 Strategic Plan led by new Executive Committee

BNP Paribas Cardif launches ambitious 2025 Strategic Plan led by new Executive Committee

24 May 2022
Download (2156 ko pdf)