Si è verificato un errore nell'elaborarazione del modello.
Java method "com.sun.proxy.$Proxy91.getFileEntryByUuidAndGroupId(String, long)" threw an exception when invoked on com.sun.proxy.$Proxy91 object "com.liferay.portlet.documentlibrary.service.impl.DLFileEntryLocalServiceImpl@2d90523a"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign fileEntry = DLFileEntryLocalS...  [in template "10154#10192#17414443" in macro "getLinkAndAllegati" at line 269, column 81]
	- Reached through: @getLinkAndAllegati  [in template "10154#10192#17414443" at line 187, column 17]
----
1<#setting time_zone=timeZone.ID> 
2<#setting locale=locale.toString()> 
3 
4<#assign hasCookie > 
5    <@rt.checkCookieAcceptance siteId=themeDisplay.getScopeGroupId() cookieToCheck="third-party" /> 
6</#assign> 
7 
8<#assign AssetEntryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil"] /> 
9<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
10<#assign DLFileEntryLocalServiceUtil =  serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryLocalService') />  
11<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") /> 
12 
13<#assign journalArticleId = .vars['reserved-article-id'].data/>  
14<#assign article = JournalArticleLocalService.getArticle(groupId, journalArticleId) /> 
15<#assign entry = AssetEntryLocalServiceUtil.fetchEntry("com.liferay.journal.model.JournalArticle", article.resourcePrimKey) /> 
16 
17<#assign currentArticleAssetEntryId = entry.getEntryId() /> 
18 
19<#assign assetRenderer = entry.getAssetRenderer() /> 
20<#assign entryTitle = htmlUtil.escape(entry.getTitle(locale)?html) /> 
21 
22<#assign docXml = saxReaderUtil.read(article.getContent()) /> 
23 
24<style> 
25.header-title{ 
26    display:none; 
27
28.header-back-to{ 
29    display:none; 
30
31</style> 
32 
33<section class="portlet-column portlet-column-only" id="column-1"> 
34         
35<div class="rt-subheader rt-subheader--no-bg rt-subheader--updates"> 
36    <div class="rt-subheader__wrapper"> 
37        <div class="rt-container"> 
38            <div class="rt-subheader__content"> 
39                <p><@getEditIcon /></p> 
40                <h2 class="rt-subheader__title"> ${.vars['reserved-article-title'].data} </h2> 
41                <#if entry.getSummary(locale)?? && entry.getSummary(locale) != "" > 
42                    <div class="rt-subheader__text">${entry.getSummary(locale)}</div></br> 
43                <#elseif TitoloSecondario?? && TitoloSecondario.getData() != ""> 
44                 
45                    <div class="rt-subheader__text">${TitoloSecondario.getData()}</div></br> 
46                </#if> 
47 
48                <#if TipologiaDiBando?? && TipologiaDiBando.getData() != ""> 
49                    <div class="rt-subheader__category"> 
50                        <#if TipologiaDiBando.getData()?upper_case == 'BANDOTIPOSEMPREAPERTO'> 
51                            <div class="rt-subheader__category-label">BANDO SEMPRE APERTO</div> 
52                            <i aria-hidden="true" class="far fa-flag-alt"></i> 
53                        </#if> 
54 
55                        <#if TipologiaDiBando.getData()?upper_case == 'BANDOTIPOCONATTUAZIONE'> 
56                            <div class="rt-subheader__category-label">BANDO CON ATTUAZIONE</div> 
57                            <i aria-hidden="true" class="far fa-handshake"></i> 
58                        </#if> 
59 
60                        <#if TipologiaDiBando.getData()?upper_case == 'BANDOTIPOSENZAATTUAZIONE'> 
61                            <div class="rt-subheader__category-label">BANDO SENZA ATTUAZIONE</div> 
62                            <i aria-hidden="true" class="far fa-award"></i> 
63                        </#if> 
64                    </div> 
65                </#if> 
66 
67                <div class="rt-btn rt-btn-light rt-btn-round rt-btn-share" id="sharebtn"> 
68                    <span class="rt-btn-round__label">Condividi</span> <i aria-hidden="true" class="fas fa-share"></i> 
69                </div> 
70 
71                <#if DataPubblicazioneBandoSuBURT?? && DataPubblicazioneBandoSuBURT.getData()??> 
72                    <#assign DataPubblicazioneBandoSuBURT_Data = getterUtil.getString(DataPubblicazioneBandoSuBURT.getData())> 
73                    <#if validator.isNotNull(DataPubblicazioneBandoSuBURT_Data)> 
74                        <p>Data di pubblicazione bando su BURT</p> 
75                        <#assign DataPubblicazioneBandoSuBURT_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataPubblicazioneBandoSuBURT_Data, locale)> 
76                            ${DataPubblicazioneBandoSuBURT_DateObj?string("dd MMMM yyyy")} 
77                    </#if> 
78                </#if> 
79 
80                <#if NumeroEParteDelBURT?? && NumeroEParteDelBURT.getData() != ""> 
81                    <p>Numero e parte del BURT</p> 
82                    ${NumeroEParteDelBURT.getData()} 
83                </#if> 
84 
85                <#if DataScadenzaPresentazioneDomande?? && DataScadenzaPresentazioneDomande.getData()?has_content> 
86                    <#assign DataScadenzaPresentazioneDomande_Data = getterUtil.getString(DataScadenzaPresentazioneDomande.getData())>  
87                    <p>Data di scadenza presentazione domande</p> 
88                    <#if validator.isNotNull(DataScadenzaPresentazioneDomande_Data)> 
89                        <#assign DataScadenzaPresentazioneDomande_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataScadenzaPresentazioneDomande_Data, locale)> 
90                        <p> 
91                             ${DataScadenzaPresentazioneDomande_DateObj?string("dd MMMM yyyy")} 
92                        </p> 
93                    <#else> 
94                        <p>Non specificato</p> 
95                    </#if> 
96                </#if> 
97 
98                <#if DataArchiviazioneBando_Data?? && DataArchiviazioneBando_Data.getData?has_content> 
99                    <p>Data archiviazione bando</p> 
100                    <#assign DataArchiviazioneBando_Data = getterUtil.getString(DataArchiviazioneBando.getData())> 
101                    <#if validator.isNotNull(DataArchiviazioneBando_Data)> 
102                        <#assign DataArchiviazioneBando_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataArchiviazioneBando_Data, locale)> ${dateUtil.getDate(DataArchiviazioneBando_DateObj, "dd MMMM yyyy - HH:mm:ss", locale)} 
103                        <p> 
104                             ${DataArchiviazioneBando_DateObj?string("dd MMMM yyyy")} 
105                        </p> 
106 
107                    <#else> 
108                        <p>Non specificato</p> 
109                    </#if> 
110                </#if> 
111            </div> 
112        </div> 
113    </div> 
114 
115</section> 
116 
117<section class="container rt-content" id="content"> 
118    <div class="row"> 
119        <div class="col-md-8 portlet-column portlet-column-first" id="column-2"> 
120            <div class="rt-page__content rt-page-content--left"> 
121                <div class="rt-page__content-text"> 
122                <#if Didascalia?? && Didascalia.getData() != ""> 
123                    <div class="rt-page__content-emphasis"> 
124                        ${Didascalia.getData()} 
125                    </div> 
126                </#if> 
127                <#if ContenutoPrincipale?? && ContenutoPrincipale.getData() != ""> 
128                    <p> 
129                        <@rt.pruneExternalContent html=ContenutoPrincipale.getData()?remove_beginning("<p>&nbsp;</p>") acceptedCookie=hasCookie?trim?boolean /> 
130                    </p> 
131                </#if> 
132                <#if Obiettivi?? && Obiettivi.getData() != ""> 
133                    <p> 
134                        <b>Obiettivi:</b> 
135                        ${Obiettivi.getData()} 
136                    </p> 
137                </#if> 
138                <#if TipoDiAgevolazione?? && TipoDiAgevolazione.getData() != ""> 
139                    <p> 
140                        <b>Tipo Di Agevolazione:</b> 
141                        ${TipoDiAgevolazione.getData()} 
142                    </p> 
143                </#if> 
144                <#if InterventiESpeseAmmissibili?? && InterventiESpeseAmmissibili.getData() != ""> 
145                    <p> 
146                        <b>Interventi E Spese Ammissibili:</b> 
147                        ${InterventiESpeseAmmissibili.getData()} 
148                    </p> 
149                </#if> 
150                <#if BandoReferenti?? && BandoReferenti.getData() != ""> 
151                    <p> 
152                        <b>Referenti Bando:</b> 
153                        ${BandoReferenti.getData()} 
154                    </p> 
155                </#if> 
156                 
157                    <p> 
158                        <#if OrganismoEmittente?? && OrganismoEmittente.getData() != ""> 
159                            <b>Organismo emittente:</b> </br> 
160                            <#if OrganismoEmittente.getData() == "bando-organismo-comunita-europea-commissione"> 
161                                Comunità europea commissione 
162                            </#if> 
163                            <#if OrganismoEmittente.getData() == "bando-organismo-comunita-europea-consiglio"> 
164                                Comunità europea consiglio 
165                            </#if> 
166                            <#if OrganismoEmittente.getData() == "bando-organismo-comunita-europea-parlamento"> 
167                                Comunità europea parlamento 
168                            </#if> 
169                            <#if OrganismoEmittente.getData() == "bando-organismo-regione-toscana"> 
170                                Regione Toscana 
171                            </#if> 
172                            <#if OrganismoEmittente.getData() == "bando-organismo-istituti-universita"> 
173                                Istituti e Università 
174                            </#if> 
175                            <#if OrganismoEmittente.getData() == "bando-organismo-altro"> 
176                                <#if AltroOrganismoEmittente?? && AltroOrganismoEmittente.getData() != ""> 
177                                    ${AltroOrganismoEmittente.getData()} 
178                                </#if> 
179                            </#if> 
180                        </#if> 
181                    </p> 
182 
183                </div> 
184            </div> 
185        </div> 
186     
187		<@getLinkAndAllegati /> 
188	 
189	</div> 
190	 
191	<div class="rt-update-informations"> 
192		<div class="rt-update-informations__row"> 
193			<div class="rt-update-informations__info rt-update-informations__info--updated"> 
194				<i aria-hidden="true" class="far fa-calendar-edit"></i> 
195				<div class="rt-update-informations__info-label">Aggiornato al:</div> 
196				<div class="rt-update-informations__info-value"><strong>${article.modifiedDate?string["dd.MM.yyyy"]}</strong></div> 
197			</div> 
198 
199			<div class="rt-update-informations__info rt-update-informations__info--id"> 
200				<i aria-hidden="true" class="far fa-hashtag"></i> 
201				<div class="rt-update-informations__info-label">Article ID:</div> 
202				<div class="rt-update-informations__info-value"><strong>${article.getArticleId()}</strong></div> 
203			</div> 
204		</div> 
205	</div> 
206</section> 
207 
208 
209<#macro getLinkAndAllegati> 
210	<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") /> 
211	<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
212	<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
213	 
214	<#assign currentArticle = JournalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) /> 
215	<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() /> 
216	<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) /> 
217	<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() /> 
218	<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) /> 
219 
220	<#assign hasAllegato = "false" /> 
221	<#assign hasLink = "false" /> 
222	<#if currentArticleRelatedLinks?? && currentArticleRelatedLinks?has_content> 
223		<#list currentArticleRelatedLinks as related_entry> 
224			<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
225			<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
226			<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
227 
228			<#if relatedAssetEntry.getClassName() == 'com.liferay.document.library.kernel.model.DLFileEntry' > 
229				<#assign hasAllegato = "true" /> 
230			<#elseif relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' > 
231				<#assign hasLink = "true" /> 
232			</#if> 
233		</#list> 
234	</#if> 
235 
236    <div class="col-md-4 portlet-column portlet-column-last" id="column-3"> 
237    <#if (TitoloAllegato?? && TitoloAllegato.getData()?has_content && TitoloAllegato.getSiblings()?has_content) 
238		|| (hasAllegato == "true")> 
239            <div class="rt-section rt-section--sidebar" aria-label="Lista dei link utili"> 
240			<div class="rt-section-title-wrapper"> 
241				<h2 class="rt-section-title">Allegati</h2> 
242			</div> 
243 
244                <#if (TitoloAllegato?? && TitoloAllegato.getData()?has_content && TitoloAllegato.getSiblings()?has_content)> 
245 
246					<#assign allegati = docXml.getRootElement().selectNodes("//dynamic-element[@name='TitoloAllegato']") /> 
247					<#list allegati as allegatoXML> 
248					 
249						<#assign titoloAllegato = allegatoXML.elementText("dynamic-content") /> 
250						<#assign allegato = allegatoXML.valueOf("//dynamic-element[@name='Allegato']/dynamic-content/text()") /> 
251						 
252						<#assign subfields = allegatoXML.elements("dynamic-element")> 
253						<#list subfields as subfield > 
254							<#if subfield.attributeValue("name") == "Allegato" && titoloAllegato?? && titoloAllegato != ""> 
255								<#assign allegato = subfield.elementText("dynamic-content") /> 
256								<#assign json = jsonFactoryUtil.createJSONObject(allegato) /> 
257											 
258								<#assign nameImg = json.getString("name") /> 
259								<#assign altImg = json.getString("alt") /> 
260								<#assign fileEntryId = json.getLong("fileEntryId") /> 
261								<#assign uuiD = json.getString("uuid") /> 
262								<#assign groupId = json.getLong("groupId") /> 
263 
264								<#if fileEntryId != 0> 
265									<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(fileEntryId) />  
266									<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />  
267								<#else> 
268									<#if groupId != 0 && uuiD != ""> 
269										<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntryByUuidAndGroupId(uuiD,groupId) /> 
270										<#if fileEntry?? > 
271											<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />  
272										</#if> 
273									</#if> 
274								</#if> 
275								<div class="rt-box rt-box--link"> 
276									<div class="rt-box__header"> 
277										<div class="rt-box__wrapper"> 
278											<div class="rt-box__title"> 
279												<a target="_blank" href="${fileUrl}" aria-label="Vedi ${titoloAllegato?html}" title="Vedi ${titoloAllegato?html}"> 
280													${titoloAllegato?html} 
281												</a> 
282											</div> 
283										</div> 
284										<div class="rt-box__icon"> 
285											<i aria-hidden="true" class="far fa-download"></i> 
286										</div> 
287									</div> 
288								</div> 
289 
290							</#if> 
291						</#list>		 
292					</#list> 
293 
294				</#if> 
295 
296				<#if hasAllegato == "true"> 
297					<#list currentArticleRelatedLinks as related_entry> 
298						<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
299						<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
300						<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
301 
302						<#if relatedAssetEntry.getClassName() == 'com.liferay.document.library.kernel.model.DLFileEntry' > 
303							<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(relatedAssetEntryPrimKey) /> 
304							<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() /> 
305							<#if fileEntry?? && fileUrl != ""> 
306								<#if fileEntry.getExtension() == 'mp3'> 
307									<div class="rt-box rt-box--link rt-box--audio"> 
308										<div class="rt-box__header"> 
309											<div class="rt-box__wrapper"> 
310												<div class="rt-box__title"> 
311													<a title="Scarica ${fileEntry.getTitle()}" aria-label="Scarica ${fileEntry.getTitle()}" href="${fileUrl}" target="_blank"> 
312														${fileEntry.getTitle()} 
313													</a> 
314												</div> 
315												<audio controls> 
316													<source src="${fileUrl}" type="audio/ogg"> 
317													<source src="${fileUrl}" type="audio/mpeg"> 
318														Il tuo browser non supporta questo tipo di oggetto html 
319												</audio> 
320											</div> 
321										</div> 
322									</div> 
323								<#else> 
324									<div class="rt-box rt-box--link"> 
325										<div class="rt-box__header"> 
326											<div class="rt-box__wrapper"> 
327												<div class="rt-box__title"> 
328													<a target="_blank" href="${fileUrl}" aria-label="Vedi ${fileEntry.getTitle()}" title="Vedi ${fileEntry.getTitle()}"> 
329														${fileEntry.getTitle()} 
330													</a> 
331												</div> 
332											</div> 
333 
334											<div class="rt-box__icon"> 
335												<i aria-hidden="true" class="far fa-download"></i> 
336											</div> 
337										</div> 
338									</div> 
339								</#if> 
340							</#if> 
341						</#if> 
342					</#list> 
343				</#if> 
344 
345 
346            </div> 
347 
348    </#if> 
349	<#if (TitoloLinkUtile?? && TitoloLinkUtile.getData()?has_content && TitoloLinkUtile.getSiblings()?has_content) 
350		|| (hasLink == "true")> 
351		 
352        <div class="rt-section rt-section--sidebar" aria-label="Lista dei link utili"> 
353			<div class="rt-section-title-wrapper"> 
354				<h2 class="rt-section-title">Link</h2> 
355			</div> 
356				 
357				<#if (TitoloLinkUtile?? && TitoloLinkUtile.getData()?has_content && TitoloLinkUtile.getSiblings()?has_content)> 
358 
359					<#assign links = docXml.getRootElement().selectNodes("//dynamic-element[@name='TitoloLinkUtile']") /> 
360					<#list links as linkXML> 
361						<#assign titoloLink = linkXML.elementText("dynamic-content") /> 
362						<#assign link = linkXML.valueOf("//dynamic-element[@name='Link']/dynamic-content/text()") /> 
363						 
364						<#assign subfields = linkXML.elements("dynamic-element")> 
365						<#list subfields as subfield > 
366							<#if subfield.attributeValue("name") == "Link" && titoloLink?? && titoloLink != ""> 
367								<#assign link = subfield.elementText("dynamic-content") /> 
368								<div class="rt-box rt-box--link"> 
369									<div class="rt-box__header"> 
370										<div class="rt-box__wrapper"> 
371											<div class="rt-box__title"> 
372												<#if link?html?starts_with("www")> 
373													<a target="_blank" href="//${link?html}" aria-label="Vedi ${titoloLink?html}" title="Vedi ${titoloLink?html}"> 
374														${titoloLink?html} 
375													</a> 
376												<#else> 
377													<a target="_blank" href="${link?html}" aria-label="Vedi ${titoloLink?html}" title="Vedi ${titoloLink?html}"> 
378														${titoloLink?html} 
379													</a> 
380												</#if> 
381												 
382											</div> 
383										</div> 
384 
385										<div class="rt-box__icon"> 
386											<i aria-hidden="true" class="far fa-link"></i> 
387										</div> 
388									</div> 
389								</div> 
390 
391								 
392							</#if>                             
393						</#list> 
394					</#list> 
395 
396					 
397				</#if> 
398				 
399				 
400				<#if hasLink == "true"> 
401					<#list currentArticleRelatedLinks as related_entry> 
402						<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
403						<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
404						<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
405 
406						<#if relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' > 
407							<#assign relatedArticle = JournalArticleLocalService.getLatestArticle(relatedAssetEntryPrimKey) /> 
408							<#if relatedArticle?? && relatedArticle != ""> 
409								<div class="rt-box rt-box--link"> 
410									<div class="rt-box__header"> 
411										<div class="rt-box__wrapper"> 
412											<div class="rt-box__title"> 
413												<a target="_blank" href="/-/${relatedArticle.getUrlTitle()}" aria-label="Vedi ${relatedArticle.getTitle()}" title="Vedi ${relatedArticle.getTitle()}"> 
414													${relatedArticle.getTitle()} 
415												</a> 
416											</div> 
417										</div> 
418 
419										<div class="rt-box__icon"> 
420											<i aria-hidden="true" class="far fa-link"></i> 
421										</div> 
422									</div> 
423								</div> 
424							</#if> 
425						</#if> 
426					</#list> 
427				</#if> 
428		</div> 
429	</#if> 
430 
431     
432 
433    </div> 
434 
435</#macro> 
436 
437<#macro getEditIcon> 
438	<#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
439        <#if renderResponse?? > 
440            <#assign redirectURL = renderResponse.createRenderURL() /> 
441 
442            ${redirectURL.setParameter("mvcPath", "/add_asset_redirect.jsp")} 
443            ${redirectURL.setWindowState("pop_up")} 
444 
445            <#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" /> 
446 
447            <#if validator.isNotNull(editPortletURL)> 
448                <#assign title = languageUtil.format(locale, "edit-x", entryTitle, false) /> 
449 
450                <@liferay_ui["icon"] 
451                    cssClass="icon-monospaced visible-interaction" 
452                    icon="pencil" 
453                    markupView="lexicon" 
454                    message=title 
455                    url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});" 
456                /> 
457            </#if> 
458        </#if>     
459	</#if> 
460</#macro>