Asset-Herausgeber

Fehler bei der Verarbeitung der Vorlage.
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 these patterns:
<STRING_LITERAL>
<RAW_STRING>
"false"
"true"
<INTEGER>
<DECIMAL>
"."
"+"
"-"
"!"
"["
"("
"{"
<ID>
---end-message---
The failing expression:
==> coverDMTKASDEMEDIUM.data?eval [in template "252001#252047#WCD_DEBATTENBLOG_ARTIKELDETAIL_INTRO" at line 65, column 23]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign mediumData = coverDMTKASDEMED... [in template "252001#252047#WCD_DEBATTENBLOG_ARTIKELDETAIL_INTRO" at line 65, column 1]
----
1<#-- bezieht sich auf WCS Publikation --> 
2<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
3<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
4<#assign version = .vars['reserved-article-version'].data?number /> 
5<#assign articleId = .vars['reserved-article-id'].data /> 
6<#assign article = JournalArticleLocalService.fetchArticle( articleGroupId, articleId , version ) /> 
7<#assign articleTitle = .vars['reserved-article-title'].data/> 
8 
9<#if requestMap??>  
10 <#assign 
11 renderUrl = requestMap['render-url'] 
12 control_panel = renderUrl?contains('control_panel')  
13
14</#if> 
15  
16<#if control_panel?? && control_panel> 
17 <#if FrontendService.user.isPrivilegedUser(permissionChecker.getUser())> 
18 <pre> 
19 articleId = ${.vars['reserved-article-id'].data} 
20 version = ${.vars['reserved-article-version'].data} 
21 groupId = ${articleGroupId} 
22 structurekey = ${article.getDDMStructureKey()} 
23 </pre> 
24 <pre> 
25 ${FrontendService.json.transformToJson( article, true )} 
26 </pre> 
27 </#if> 
28<#else>  
29 <#include "${fullTemplatesPath}/macros/page-modules/PMShare.ftl" /> 
30  
31 <#-- Function for related Content for PERSON --> 
32 <#function getSaxReaderDocument dataObj > 
33 <#local document = "" > 
34  
35 <#attempt> 
36 <#local data = dataObj.getData()?eval > 
37 <#local classPK = data.classPK > 
38 <#local className = data.className > 
39 <#local entry = AssetEntryLocalService.getEntry(className, classPK?number)! > 
40  
41 <#if entry??> 
42 <#local assetRenderer = entry.getAssetRenderer() /> 
43 <#local journalArticle = (assetRenderer.getArticle())! /> 
44 <#local document = (saxReaderUtil.read(journalArticle.getContentByLocale(locale.toString())))!"" /> 
45 </#if> 
46 <#recover> 
47 <#-- catch block --> 
48 </#attempt> 
49  
50 <#return document > 
51  
52 </#function> 
53  
54<#macro mediaReference groupId uuid > 
55 <#local mediaObj = FrontendService.media.getDMTJsonObject(groupId, uuid, locale)!"" > 
56 
57 <#if mediaObj?has_content && (mediaObj.quelle)?has_content > 
58 <#local source = mediaObj.quelle?substring(1, (mediaObj.quelle?length - 1))> 
59 <#if source?has_content> 
60 <span>${source}</span> 
61 </#if> 
62 </#if> 
63</#macro> 
64 
65<#assign mediumData = coverDMTKASDEMEDIUM.data?eval /> 
66<#if mediumData?has_content> 
67 <#assign linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution', mediumData["groupId"]?number, mediumData["uuid"]) /> 
68</#if> 
69 
70<#if !isDPMColorSchemeNEW()> 
71 <div class="c-page-intro c-page-intro--article"> 
72 <div class="o-page-module"> 
73 <div class="c-page-intro__wrapper"> 
74  
75 <#if coverDMTKASDEMEDIUM.getData()?has_content> 
76 <#if linkToDMT?has_content> 
77 <div class="c-page-intro__image" style="background-image:url('${linkToDMT}');"> 
78 <span class="o-imagesource"><@mediaReference mediumData["groupId"]?number mediumData["uuid"] /></span> 
79 </div> 
80 </#if> 
81 </#if> 
82  
83 <div class="c-page-intro__meta"> 
84  
85 <#-- Erscheinungsdatum --> 
86 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
87  
88 <#if validator.isNotNull(erscheinungsdatum_Data)> 
89 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
90 <span class="o-metadata o-metadata--date"> 
91 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
92 </span> 
93 </#if> 
94  
95 <#-- laufende nummer --> 
96 <#assign article = JournalArticleLocalService.getArticle(groupId, articleId) /> 
97 <#assign verbundJournalArticle = FrontendService.publication.getVerbundToPublikation(article)!"" > 
98  
99 <#if verbundJournalArticle?has_content> 
100 <#assign document = (saxReaderUtil.read(verbundJournalArticle.getContentByLocale(locale.toString())))!"" /> 
101 <#if document?has_content> 
102  
103 <#if document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content")??> 
104 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='laufendenummer']/dynamic-content") /> 
105 <#assign laufendenummer = node.getText() /> 
106 <#if laufendenummer?has_content > 
107 <span class="o-metadata o-metadata--hash"><@liferay.language key="ausgabe" /> ${laufendenummer}</span> 
108 </#if> 
109 </#if> 
110 </#if> 
111 </#if> 
112  
113 </div> 
114  
115 <#-- Titel --> 
116 <div class="o-page-headline__wrapper"> 
117  
118 <div class="c-share"> 
119 <div class="c-share__wrapper--aside"> 
120 <div class="c-share c-share--aside c-share--aside-new"> 
121 <ul class="c-share__list"> 
122 <@ShareLink "print" /> 
123 <@ShareLink "mail" /> 
124 <@ShareLink "share" /> 
125 </ul> 
126 </div> 
127 </div> 
128 <@ShareOverlay /> 
129 </div> 
130  
131 <h2 class="o-page-headline"> 
132 ${articleTitle} 
133 </h2> 
134 </div> 
135  
136 <#-- Autoren --> 
137 <#if autorenWCSKASDEPERSON.getSiblings()?has_content> 
138 <#list autorenWCSKASDEPERSON.getSiblings() as cur_autorenWCSKASDEPERSON> 
139 <#assign document = getSaxReaderDocument(cur_autorenWCSKASDEPERSON) > 
140  
141 <#if document?has_content> 
142  
143 <div class="c-page-intro__author"> 
144 <@liferay.language key="von" /> 
145  
146 <#if document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content")??> 
147 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content") /> 
148 <#assign vorname = node.getText() /> 
149 <#if vorname?has_content > 
150 ${vorname} 
151 </#if> 
152 </#if> 
153  
154 <#if document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content")??> 
155 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content") /> 
156 <#assign nachname = node.getText() /> 
157 <#if nachname?has_content > 
158 ${nachname} 
159 </#if> 
160 </#if> 
161 </div> 
162 </#if> 
163  
164 </#list> 
165 </#if> 
166  
167 <#-- Untertitel --> 
168 <h2 class="c-page-intro__subheadline"> 
169 ${untertitel.getData()} 
170 </h2> 
171  
172 <#-- Kurzbeschreibung --> 
173 <p class="c-page-intro__copy"> 
174 ${beschreibung.getData()} 
175 </p> 
176  
177 </div> 
178  
179 </div> 
180  
181 </div> 
182<#elseif isDPMColorSchemeNEW()> 
183 <div class="c-page-intro c-page-intro--article"> 
184 <div class="o-page-module"> 
185 <div class="c-page-intro__wrapper"> 
186 
187 <#-- Titel --> 
188 <div class="o-page-headline__wrapper"> 
189  
190 <div class="c-share"> 
191 <div class="c-share__wrapper--aside"> 
192 <div class="c-share c-share--aside c-share--aside-new"> 
193 <ul class="c-share__list"> 
194 <@ShareLink "print" /> 
195 <@ShareLink "mail" /> 
196 <@ShareLink "share" /> 
197 </ul> 
198 </div> 
199 </div> 
200 <@ShareOverlay /> 
201 </div> 
202  
203 <h1 class="o-page-headline"> 
204 ${articleTitle} 
205 </h1> 
206 </div> 
207  
208 <div class="c-page-subheadline__wrapper"> 
209 <div class="c-page-intro__meta"> 
210 
211 <#-- Autoren --> 
212 <#if autorenWCSKASDEPERSON.getSiblings()?has_content> 
213 <#list autorenWCSKASDEPERSON.getSiblings() as cur_autorenWCSKASDEPERSON> 
214 <#assign document = getSaxReaderDocument(cur_autorenWCSKASDEPERSON) > 
215  
216 <#if document?has_content> 
217  
218 <div class="o-metadata o-metadata--author"> 
219  
220 <#if document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content")??> 
221 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='vorname']/dynamic-content") /> 
222 <#assign vorname = node.getText() /> 
223 <#if vorname?has_content > 
224 ${vorname} 
225 </#if> 
226 </#if> 
227  
228 <#if document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content")??> 
229 <#assign node = document.selectSingleNode("/root/dynamic-element[@name='nachname']/dynamic-content") /> 
230 <#assign nachname = node.getText() /> 
231 <#if nachname?has_content > 
232 ${nachname} 
233 </#if> 
234 </#if> 
235 </div> 
236 </#if> 
237  
238 </#list> 
239 </#if> 
240  
241 <#-- Erscheinungsdatum --> 
242 <#assign erscheinungsdatum_Data = getterUtil.getString(erscheinungsdatum.getData())> 
243  
244 <#if validator.isNotNull(erscheinungsdatum_Data)> 
245 <#assign erscheinungsdatum_DateObj = dateUtil.parseDate("yyyy-MM-dd", erscheinungsdatum_Data, locale)> 
246 <span class="o-metadata o-metadata--date"> 
247 ${dateUtil.getDate(erscheinungsdatum_DateObj, "dd. MMMM yyyy", locale)} 
248 </span> 
249 </#if> 
250  
251 </div> 
252 <#-- Untertitel --> 
253 <h2 class="c-page-intro__subheadline"> 
254 ${untertitel.getData()} 
255 </h2> 
256 </div> 
257  
258 <#-- Kurzbeschreibung --> 
259 <p class="c-page-intro__copy"> 
260 ${beschreibung.getData()} 
261 </p> 
262  
263 </div> 
264  
265 </div> 
266  
267 </div> 
268 </#if> 
269</#if> 

Asset-Herausgeber

Zum Abschluss des Planspiels „Jugend und Parlament“, bei dem Jugendliche parlamentarische Verfahren praxisnah  erlernen, legten sich junge Klima-Aktivisten  vor die Rednertribüne des Bundestags  und stellten sich – unter dem Transparent  „Eure Klimapolitik = Katastrophe“ – tot.  „Fridays For Future“ unterstützte den Protest.

Bemerkenswert ist, dass andere Jugendliche  die Aktion mit Buh-Rufen quittierten.  War das gedachte Bravourstück dann doch  zu selbstgerecht geraten?

Respekt gewinnt, wer den anderen ohne Herablassung „für voll nimmt“ und gleichzeitig zu seiner Haltung steht. Das gilt für die einen wie für die anderen.

 

Foto: © picture alliance / Christoph Soeder / dpa

comment-portlet