Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> dlFileEntryService  [in template "20096#20121#537827" at line 117, column 41]

----
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: #assign fileEntryImg = dlFileEntrySer...  [in template "20096#20121#537827" at line 117, column 17]
----
1<#assign structureService=serviceLocator.findService("it.inera.structure.service.StructureService")> 
2<#assign journalArticleLocalService=serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
3<#assign siteBaseUrl = structureService.getSiteBaseUrl(themeDisplay)> 
4 
5<#assign jac = serviceLocator.findService("it.inera.journalarticleconverter.service.JournalArticleConverter")> 
6<#assign journalArticleId = .vars['reserved-article-id'].data> 
7<#assign ja = journalArticleLocalService.getArticle(groupId, journalArticleId)> 
8<#assign pagina = jac.getPagina(ja) /> 
9 
10<#assign modifieddate = pagina.getModifiedDate()?string["dd/MM/yyyy, HH:mm"]> 
11<#assign tipiDocumentopubblicoVocabularyId = structureService.getVocabularyTipidocumentopubblicoId()> 
12 
13<div class="container"> 
14	<div class="row"> 
15		<div class="col-lg-8 px-lg-4 py-lg-2"> 
16			<h1 data-audio> 
17				${pagina.getTitolo()} 
18			</h1> 
19			 
20			<#if pagina.getSottotitolo()?? && pagina.getSottotitolo()?has_content> 
21				<div data-audio> 
22					${pagina.getSottotitolo()} 
23				</div> 
24			</#if> 
25		</div> 
26		 
27		<div class="col-lg-3 offset-lg-1"> 
28			<div class="dropdown d-inline"> 
29				<button aria-label="<@liferay.language key="social.condivididesc" />" class="btn btn-dropdown dropdown-toggle text-decoration-underline d-inline-flex align-items-center fs-0" type="button" id="shareActions" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 
30					<svg class="icon" aria-hidden="true"> 
31						<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-share"></use> 
32					</svg> 
33					<small><@liferay.language key="social.condividi" /></small> 
34				</button> 
35				<div class="dropdown-menu shadow-lg" aria-labelledby="shareActions"> 
36					<div class="link-list-wrapper"> 
37						<ul class="link-list share-btn" role="menu"> 
38							<li role="none"> 
39								<a data-id="fb" class="list-item" href="#" role="menuitem"> 
40									<svg class="icon" aria-hidden="true"> 
41										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-facebook"></use> 
42									</svg> 
43									<span><@liferay.language key="social.facebook" /></span> 
44								</a> 
45							</li> 
46							<li role="none"> 
47								<a data-id="tw" class="list-item" href="#" role="menuitem"> 
48									<svg class="icon" aria-hidden="true"> 
49										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-twitter"></use> 
50									</svg> 
51									<span><@liferay.language key="social.twitter" /></span> 
52								</a> 
53							</li> 
54							<li role="none"> 
55								<a data-id="in" class="list-item" href="#" role="menuitem"> 
56									<svg class="icon" aria-hidden="true"> 
57										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-linkedin"></use> 
58									</svg> 
59									<span><@liferay.language key="social.linkedin" /></span> 
60								</a> 
61							</li> 
62							<li role="none"> 
63								<a data-id="wa" class="list-item" href="#" role="menuitem"> 
64									<svg class="icon" aria-hidden="true"> 
65										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-whatsapp"></use> 
66									</svg> 
67									<span><@liferay.language key="social.whatsapp" /></span> 
68								</a> 
69							</li> 
70						</ul> 
71					</div> 
72				</div> 
73			</div> 
74			<div class="dropdown d-inline"> 
75				<button aria-label="<@liferay.language key="azioni.vedidesc" />" class="btn btn-dropdown dropdown-toggle text-decoration-underline d-inline-flex align-items-center fs-0" type="button" id="viewActions" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 
76					<svg class="icon" aria-hidden="true"> 
77						<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-more-items"></use> 
78					</svg> 
79					<small><@liferay.language key="azioni.vedi" /></small> 
80				</button> 
81				<div class="dropdown-menu shadow-lg" aria-labelledby="viewActions"> 
82					<div class="link-list-wrapper"> 
83						<ul class="link-list share-btn" role="menu"> 
84							<li role="none"> 
85								<a data-id="print" class="list-item" href="#" role="menuitem"> 
86									<svg class="icon" aria-hidden="true"> 
87										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-print"></use> 
88									</svg> 
89									<span><@liferay.language key="azioni.stampa" /></span> 
90								</a> 
91							</li> 
92							<li role="none"> 
93								<a class="list-item" href="#" role="menuitem" onclick="listenElements(this, '[data-audio]')"> 
94									<svg class="icon" aria-hidden="true"> 
95										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-hearing"></use> 
96									</svg> 
97									<span><@liferay.language key="azioni.ascolta" /></span> 
98								</a> 
99							</li> 
100							<li role="none"> 
101								<a data-id="mail" class="list-item" href="#" role="menuitem"> 
102									<svg class="icon" aria-hidden="true"> 
103										<use xlink:href="${themeDisplay.getPathThemeImages()}/bootstrap-italia/svg/sprites.svg#it-mail"></use> 
104									</svg> 
105									<span><@liferay.language key="azioni.invia" /></span> 
106								</a> 
107							</li> 
108						</ul> 
109					</div> 
110				</div> 
111			</div> 
112		</div> 
113	</div> 
114 
115	<#if pagina.getImmagineprincipale()?? &&  pagina.getImmagineprincipale().getImmagine()?? && pagina.getImmagineprincipale().getImmagine().getUrl()?? && pagina.getImmagineprincipale().getImmagine().getUrl()?has_content> 
116		<#assign immagineprincipale = pagina.getImmagineprincipale() > 
117		<#assign fileEntryImg = dlFileEntryService.getDLFileEntry(immagineprincipale.getImmagine().getFileEntryId()?number) /> 
118		<#assign fileVersionImg = dlAppLocalService.getFileVersion(fileEntryImg.getFileVersion().getFileVersionId()) /> 
119	 
120		<div class="row" style="margin-top:20px"> 
121			<figure class="figure px-0 img-full"> 
122				<@adaptive_media_image.img fileVersion=fileVersionImg title="${immagineprincipale.getTitolo()}" alt="${immagineprincipale.getImmagine().getAlt()}" class="figure-img img-fluid" /> 
123				<figcaption class="figure-caption text-center pt-3">${immagineprincipale.getTitolo()}</figcaption> 
124			</figure> 
125		</div> 
126	</#if> 
127	 
128</div> 
129 
130<section class="section"> 
131	<div class="container"> 
132		<div class="row"> 
133			<div class="col-12 col-lg-4"> 
134				<div class="sidebar-1 mb-5" data-bs-toggle="sticky" data-bs-stackable="true"> 
135					<nav class="navbar it-navscroll-wrapper navbar-expand-lg" data-bs-navscroll=""> 
136						<div id="navbarNavProgress"> 
137							<div class="overlay"></div> 
138							<div class="menu-wrapper"> 
139								<div class="link-list-wrapper dropdown"> 
140									<button class="btn btn-dropdown dropdown-toggle" type="button" id="dropdownMenuButton" data-bs-toggle="dropdown" aria-expanded="true"> 
141                          				<h3><@liferay.language key="museo.pagina.indice" /></h3> 
142										<svg class="icon ms-1" role="img"> 
143											<use href="${themeDisplay.getPathThemeImages()}/sprites.svg#it-expand"></use> 
144										</svg> 
145									</button> 
146									<div class="progress"> 
147										<div class="progress-bar it-navscroll-progressbar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div> 
148									</div> 
149									<ul class="link-list dropdown-menu show" aria-labelledby="dropdownMenuButton"> 
150										<#if pagina.getParagrafi()?has_content> 
151											<#list pagina.getParagrafi() as paragrafo> 
152												<#if (paragrafo.getTitoloParagrafo())?? && (paragrafo.getTitoloParagrafo())?has_content > 
153													<li class="nav-item"><a class="nav-link" href="#sec-${paragrafo?index}"><span>${paragrafo.getTitoloParagrafo()}</span></a></li> 
154												</#if> 
155											</#list> 
156										</#if> 
157                                        <#if pagina.getCollegamenti()?? && pagina.getCollegamenti()?has_content && pagina.getCollegamenti()[0]?has_content && pagina.getCollegamenti()[0].getClassPKLong()??> 
158                                            <li class="nav-item"> 
159                                                <a class="nav-link" href="#contenuti_collegati"> 
160                                                    <span class="title-medium"><@liferay.language key="Contenuti collegati" /></span> 
161                                                </a> 
162                                            </li> 
163                                        </#if> 
164                                        <#if pagina.getDocumenti()?? && pagina.getDocumenti()?has_content && pagina.getDocumenti()[0]?? && pagina.getDocumenti()[0]?has_content && pagina.getDocumenti()[0].getClassPKLong()?? > 
165                                            <li class="nav-item"> 
166                                                <a class="nav-link" href="#documenti"> 
167                                                    <span class="title-medium"><@liferay.language key="Documenti collegati" /></span> 
168                                                </a> 
169                                            </li> 
170                                        </#if> 
171									</ul> 
172								</div> 
173							</div> 
174						</div> 
175					</nav> 
176				</div> 
177			</div> 
178			<div class="col-12 col-lg-8 it-page-sections-container"> 
179				<#if pagina.getParagrafi()?has_content> 
180					<#list pagina.getParagrafi() as paragrafo> 
181						<div <#if (paragrafo.getTitoloParagrafo())?? && (paragrafo.getTitoloParagrafo())?has_content >class="it-page-section" id="sec-${paragrafo?index}"</#if>> 
182							<#if (paragrafo.getTitoloParagrafo())?? && (paragrafo.getTitoloParagrafo())?has_content > 
183								<div class="infos-intro"> 
184									<h2 class="infos-title">${paragrafo.getTitoloParagrafo()}</h2> 
185								</div> 
186							</#if> 
187							<#if (paragrafo.getTestoParagrafo())?? && (paragrafo.getTestoParagrafo())?has_content > 
188								<div class="infos-container"> 
189									<div class="row richtext-wrapper"> 
190										${paragrafo.getTestoParagrafo()} 
191									</div> 
192								</div> 
193							</#if> 
194							 
195						</div> 
196					</#list> 
197				</#if> 
198				 
199                <#if pagina.getCollegamenti()?? && pagina.getCollegamenti()?has_content && pagina.getCollegamenti()[0]?has_content && pagina.getCollegamenti()[0].getClassPKLong()??> 
200				<article id="contenuti_collegati" class="it-page-section  anchor-offset mt-5 mb-5"> 
201	              <h2 class="mb-3"><@liferay.language key="Contenuti collegati" /></h2> 
202	              	<#assign allegati = pagina.getCollegamenti() /> 
203					<div class="mb-3" style="font-style:italic">Notizie, servizi e pagine collegati a questa notizia.</div> 
204					<div class="row g-4"> 
205						<#list allegati as allegato> 
206							<#assign assetType = "unknown" /> 
207							<#assign urlTitle = "#" /> 
208							<#assign titolo = "" /> 
209							<#assign sottotitolo = "" /> 
210							<#assign immaginePrincipaleCollegamento = "" /> 
211							<#if allegato?? && allegato?has_content && allegato.getClassPKLong()?? > 
212								<#assign allegatoId = allegato.getClassPKLong() /> 
213											 
214								<#if allegatoId?? && allegatoId?has_content > 
215									<#assign allegatoJA = journalArticleLocalService.getLatestArticle(allegatoId)> 
216									 
217									<#if allegatoJA.getDDMStructureKey() = structureService.getStructurePaginaKey()> 
218										<#assign allegatoObj = jac.getPagina(allegatoJA) /> 
219										<#assign assetType = "Pagina" /> 
220										<#assign urlTitle = allegatoObj.getUrlTitle() /> 
221										<#assign titolo = allegatoObj.getTitolo() /> 
222										<#assign sottotitolo = "" /> 
223										<#if allegatoObj.getSottotitolo()??> 
224											<#assign sottotitolo = allegatoObj.getSottotitolo() /> 
225										</#if> 
226										<#if allegatoObj.getImmagineprincipale()?? &&  allegatoObj.getImmagineprincipale().getImmagine()?? && allegatoObj.getImmagineprincipale().getImmagine().getUrl()?? && allegatoObj.getImmagineprincipale().getImmagine().getUrl()?has_content> 
227											<#assign immaginePrincipaleCollegamento = allegatoObj.getImmagineprincipale().getImmagine().getUrl() > 
228										</#if> 
229									</#if> 
230									<#if allegatoJA.getDDMStructureKey() =  structureService.getStructureServizioKey()> 
231										<#assign allegatoObj = jac.getServizio(allegatoJA) /> 
232										<#assign assetType = "Servizio" /> 
233										<#assign urlTitle = allegatoObj.getUrlTitle() /> 
234										<#assign titolo = allegatoObj.getTitolo() /> 
235										<#if allegatoObj.getSottotitolo()??> 
236											<#assign sottotitolo = allegatoObj.getSottotitolo() /> 
237										</#if> 
238										<#if allegatoObj.immagineprincipale?? && allegatoObj.immagineprincipale.immagine.getUrl()?? && allegatoObj.immagineprincipale.immagine.getUrl()?has_content > 
239											<#assign immaginePrincipaleCollegamento = allegatoObj.getImmagineprincipale().getImmagine().getUrl() > 
240										</#if> 
241									</#if> 
242									<#if allegatoJA.getDDMStructureKey() = structureService.getStructureNotiziaKey()> 
243										<#assign allegatoObj = jac.getNotizia(allegatoJA) /> 
244										<#assign assetType = "Notizia" /> 
245										<#assign urlTitle = allegatoObj.getUrlTitle() /> 
246										<#assign titolo = allegatoObj.getTitolo() /> 
247										<#if allegatoObj.getAbstract_()??> 
248											<#assign sottotitolo = allegatoObj.getAbstract_() /> 
249										</#if> 
250										<#if allegatoObj.immagineprincipale?? && allegatoObj.immagineprincipale.immagine.getUrl()?? && allegatoObj.immagineprincipale.immagine.getUrl()?has_content > 
251											<#assign immaginePrincipaleCollegamento = allegatoObj.getImmagineprincipale().getImmagine().getUrl() > 
252										</#if> 
253									</#if> 
254										<div class="col-md-6 col-xl-4"> 
255											<div class="card-wrapper border border-light rounded shadow-sm"> 
256												<div class="card no-after rounded"> 
257													<#if immaginePrincipaleCollegamento?? && immaginePrincipaleCollegamento != ""> 
258														<#assign altImg = "Immagine principale"/> 
259														<#assign titoloImg = "Immagine principale"/> 
260														<div class="img-responsive-wrapper"> 
261															<div class="img-responsive img-responsive-panoramic"> 
262																<figure class="img-wrapper"> 
263																	<img src="${immaginePrincipaleCollegamento}?width=450" title="${titoloImg}" alt="${altImg}"> 
264																</figure> 
265															</div> 
266														</div> 
267													</#if> 
268													 
269													<div class="card-body"> 
270														<div class="category-top"> 
271															<a title="${assetType}" class="category text-decoration-none" href="#" data-element="news-category-link" >${assetType}</a> 
272														</div> 
273														<a href="${siteBaseUrl}/w/${urlTitle}" class="text-decoration-none" data-element="news-link"> 
274															<h3 class="card-title">${titolo}</h3> 
275														</a> 
276														<p class="card-text text-secondary">${sottotitolo}</p> 
277													</div> 
278												</div> 
279											</div> 
280										</div> 
281								</#if> 
282							</#if> 
283						</#list> 
284 
285					</div> 
286	            </article> 
287			</#if> 
288			<#if pagina.getDocumenti()?? && pagina.getDocumenti()?has_content && pagina.getDocumenti()[0]?? && pagina.getDocumenti()[0]?has_content && pagina.getDocumenti()[0].getClassPKLong()?? > 
289				<section id="documenti"> 
290					<div class="pb-5"> 
291						<div class="container"> 
292							<div class="row row-title pt-md-5"> 
293								<div class="col-12"> 
294									<h3 class="text-secondary border-bottom pb-2 pb-lg-3">Documenti collegati</h3> 
295								</div> 
296							</div> 
297							<div class="row mx-0"> 
298								<div class="card-wrapper px-0 card-teaser-wrapper card-teaser-wrapper-equal card-teaser-block-3 g-4"> 
299								 
300								<#list pagina.getDocumenti() as doc> 
301									<#if doc?? && doc?has_content && doc.getClassPKLong()?? > 
302										<#assign docId = doc.getClassPKLong() /> 
303										<#if docId?? && docId?has_content > 
304											<#assign docJA = journalArticleLocalService.getLatestArticle(docId)> 
305											<#if docJA.getDDMStructureKey() = structureService.getStructureDocumentoPubblicoKey()> 
306												<#assign documentoPubblico = jac.getDocumentoPubblico(docJA) /> 
307 
308												<#assign vocabularies = documentoPubblico.getCategories() /> 
309					 
310												<#assign urlTitle = documentoPubblico.getUrlTitle() /> 
311												<#assign titolo = documentoPubblico.getTitolo() /> 
312												<#assign sottotitolo = documentoPubblico.getAbstract_() /> 
313						 
314												<#if vocabularies?? && vocabularies?has_content > 
315													<#list vocabularies as vocabularyId, categories> 
316														<#if categories?? && categories?has_content && vocabularyId == tipiDocumentopubblicoVocabularyId > 
317															<#list categories as category> 
318																<#assign tipoDocumentoPubblico = category.getTitle(locale) > 
319																<#assign paginaCategoriaDocumentoPubblico = "/documenti/-/category_documenti/" + category.getCategoryId() > 
320															</#list> 
321														</#if> 
322													</#list> 
323												</#if> 
324					 
325												<div class="card card-teaser card-teaser-image card-flex no-after rounded shadow-sm border border-light mb-0"> 
326													<div class="card-image-wrapper with-read-more"> 
327														<div class="card-body p-3"> 
328															<div class="category-top"> 
329																<a href="${siteBaseUrl}${paginaCategoriaDocumentoPubblico}" class="title-xsmall-semi-bold fw-semibold text-decoration-none">${tipoDocumentoPubblico}</a> 
330															</div> 
331															<h4 class="card-title"> 
332																<a href="${siteBaseUrl}/-/${urlTitle}" class="text-decoration-none">${titolo}</a> 
333															</h4> 
334															<#if sottotitolo?? &&  sottotitolo?has_content > 
335																<p class="text-paragraph-card m-0">${sottotitolo}</p> 
336															</#if> 
337														</div> 
338													</div> 
339												</div> 
340						 
341											</#if> 
342										</#if> 
343					     			</#if> 
344	    						</#list> 
345 
346								</div> 
347							</div> 
348						</div> 
349					</div> 
350				</section> 
351     		</#if> 
352 
353				<div class="description mb-5"> 
354					<div class="d-flex justify-content-between footer-text mt-5"> 
355						<div class="text-update"><strong><@liferay.language key="museo.pagina.ultimoaggiornamento" />:&nbsp;&nbsp;</strong>${modifieddate}</div> 
356					</div> 
357				</div> 
358					 
359			</div> 
360		</div> 
361	</div> 
362</section> 

Rating pagina

Quanto sono chiare le informazioni su questa pagina?

Valuta da 1 a 5 stelle la pagina

Quali sono stati gli aspetti che hai preferito? 1/2

Dove hai incontrato le maggiori difficoltà? 1/2

Vuoi aggiungere altri dettagli? 2/2

Inserire massimo 200 caratteri