Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryPropertyLocalService")  [in template "33201#33237#1354859" at line 8, column 46]

----
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 AssetCategoryPropertyLocalSer...  [in template "33201#33237#1354859" at line 8, column 1]
----
1<#-- Chiave del template globale "Utils" --> 
2<#assign pathNewsList = "elenco-bandi"> 
3<#include "${templatesPath}/33878" /> 
4 
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
6<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
7<#assign vocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")> 
8<#assign AssetCategoryPropertyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryPropertyLocalService")> 
9<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) /> 
10<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey()) /> 
11 
12<!-- VERIFICATE --> 
13<#assign title = .vars['reserved-article-title'].data /> 
14<#assign date = .vars['reserved-article-display-date'].data> 
15<#assign abstract = .vars['reserved-article-description'].data> 
16 
17<#assign dateTimeFormat = "dd MMMM yyyy"> 
18<#assign articleURL = themeDisplay.getURLPortal() + themeDisplay.getScopeGroup().getPathFriendlyURL(false, themeDisplay) + themeDisplay.getScopeGroup().getFriendlyURL() + "/-/" + title /> 
19 
20<!-- DA VERIFICARE --> 
21<#setting locale = localeUtil.getDefault()> 
22<#assign notizieLandingPage = "#"> 
23<#if themeDisplay.getThemeSetting("notizie-landing-page")?has_content> 
24    <#assign notizieLandingPage = themeDisplay.getThemeSetting("notizie-landing-page")> 
25</#if> 
26 
27        	 
28<div class="container generic-content"> 
29	<div class="row"> 
30		<div class="col-md-8 generic-content-full-column"> 
31			<h3 class="h1">${title}</h3> 
32			<div class="content"> 
33			<#if ImmaginePrincipale.getData()?? && ImmaginePrincipale.getData() != "">  
34				<img class="float-img" alt="${ImmaginePrincipale.getAttribute("alt")}" data-fileentryid="${ImmaginePrincipale.getAttribute("fileEntryId")}" src="${ImmaginePrincipale.getData()}" />  
35				</#if> 
36				<div class="content-description"> 
37				${Descrizione.getData()} 
38				</div> 
39			</div> 
40			 
41			 
42			<div class="sub-content-list accordion" id="contentList_iamm_"> 
43				<#if	(RiferimentiDelProgetto.Partner.getData()?has_content && RiferimentiDelProgetto.Partner.getData() != "") ||  
44                    (RiferimentiDelProgetto.Acronimo.getData()?has_content && RiferimentiDelProgetto.Acronimo.getData() != "" )  ||   
45					(RiferimentiDelProgetto.AreaGeograficaDiIntervento?has_content && RiferimentiDelProgetto.AreaGeograficaDiIntervento.getData() != "") ||  
46                    (RiferimentiDelProgetto.BandoDiRiferimento.getData()?has_content && RiferimentiDelProgetto.BandoDiRiferimento.getData() != "" )  || 
47					(RiferimentiDelProgetto.Capofila.getData()?has_content && RiferimentiDelProgetto.Capofila.getData() != "")  
48				>	 
49				<div class="sub-content accordion-item"> 
50					<div class="accordion-item-header" id="heading1_iamm__header"> 
51						<h3> 
52							<a class="accordion-item-header-link collapsed" aria-controls="collapseInfo" aria-expanded="false" data-parent="#heading1_iamm_" data-target="#collapse1_iamm_" data-toggle="collapse" id="heading1_iamm_" role="tab"> 
53								<span class="accordion-arrow">Riferimenti del progetto</span> 
54								<em class="fas fa-chevron-up fa-xs pull-right"></em> 
55								<em class="fas fa-chevron-down fa-xs pull-right"></em> 
56							</a> 
57						</h3> 
58					</div> 
59					<div id="collapse1_iamm_" class="collapse" aria-labelledby="heading1_iamm_" data-parent="#contentList_iamm_"> 
60						<div class="accordion-item-content"> 
61							<div class="content-accordion"> 
62							<table border="1" cellpadding="0" cellspacing="0" style="width: 100%"> 
63								<tbody> 
64									<#if	RiferimentiDelProgetto.Acronimo.getData()?has_content && RiferimentiDelProgetto.Acronimo.getData() != "" > 
65									<tr> 
66										<td style="width: 295px;"><strong>Acronimo</strong></td> 
67										<td style="width: 345px;">${RiferimentiDelProgetto.Acronimo.getData()}</td> 
68									</tr> 
69									</#if> 
70								   <#if	RiferimentiDelProgetto.AreaGeograficaDiIntervento?has_content && RiferimentiDelProgetto.AreaGeograficaDiIntervento.getData() != "" > 
71									<tr> 
72										<td style="width: 295px;"><strong>Area geografica di intervento</strong></td> 
73										<td style="width: 345px;">${RiferimentiDelProgetto.AreaGeograficaDiIntervento.getData()}</td> 
74									</tr> 
75									</#if> 
76					 
77									 
78									<#if RiferimentiDelProgetto.Capofila.getData()?has_content && RiferimentiDelProgetto.Capofila.getData() != "" > 
79									<tr> 
80										<td style="width: 295px;"><strong>Capofila</strong></td> 
81										<td style="width: 345px;">${RiferimentiDelProgetto.Capofila.getData()}</td> 
82									</tr> 
83									</#if> 
84									<#if RiferimentiDelProgetto.Partner.getData()?has_content && RiferimentiDelProgetto.Partner.getData() != "" > 
85									<tr> 
86										<td style="width: 295px;"><strong>Partner</strong></td> 
87										<td style="width: 345px;">${RiferimentiDelProgetto.Partner.getData()}</td> 
88									</tr> 
89									</#if> 
90									<#if	RiferimentiDelProgetto.AssePrioritario.getData()?has_content && RiferimentiDelProgetto.AssePrioritario.getData() != "" >	 
91									<tr> 
92										<td style="width: 295px;"><strong>Asse Prioritario</strong></td> 
93										<td style="width: 345px;">${RiferimentiDelProgetto.AssePrioritario.getData()}</td> 
94									</tr> 
95									</#if> 
96								</tbody> 
97							</table> 
98									<p>&nbsp;</p> 
99							</div> 
100						</div> 
101					</div> 
102				</div> 
103				</#if> 
104				 
105				<#if	(DotazioneFinanziaria.BudgetRegionePuglia.getData()?has_content && DotazioneFinanziaria.BudgetRegionePuglia.getData() != "") ||  
106                    (DotazioneFinanziaria.Budget.getData()?has_content && DotazioneFinanziaria.Budget.getData() != "")   
107				>	 
108				<div class="sub-content accordion-item"> 
109					<div class="accordion-item-header" id="heading2_iamm__header"> 
110						<h3> 
111							<a class="accordion-item-header-link collapsed" aria-controls="collapseInfo" aria-expanded="false" data-parent="#heading2_iamm_" data-target="#collapse2_iamm_" data-toggle="collapse" id="heading2_iamm_" role="tab"> 
112								<span class="accordion-arrow">Dotazione finanziaria</span> 
113								<em class="fas fa-chevron-up fa-xs pull-right"></em> 
114								<em class="fas fa-chevron-down fa-xs pull-right"></em> 
115							</a> 
116						</h3> 
117					</div> 
118					<div id="collapse2_iamm_" class="collapse" aria-labelledby="heading2_iamm_" data-parent="#contentList_iamm_"> 
119						<div class="accordion-item-content"> 
120							<div class="content-accordion"> 
121							<table border="1" cellpadding="0" cellspacing="0" style="width: 100%"> 
122								<tbody> 
123									<#if	DotazioneFinanziaria.Budget.getData()?has_content && DotazioneFinanziaria.Budget.getData() != "" > 
124									<tr> 
125										<td style="width: 295px;"><strong>Budget</strong></td> 
126										<td class="budget-scheda" style="width: 345px;">${DotazioneFinanziaria.Budget.getData()}</td> 
127									</tr> 
128									</#if> 
129									<#if	DotazioneFinanziaria.BudgetRegionePuglia.getData()?has_content && DotazioneFinanziaria.BudgetRegionePuglia.getData() != "" > 
130									<tr> 
131										<td style="width: 295px;"><strong>Budget Regione Puglia</strong></td> 
132										<td class="budget-puglia-scheda"style="width: 345px;">${DotazioneFinanziaria.BudgetRegionePuglia.getData()}</td> 
133									</tr>  
134									</#if> 
135								</tbody> 
136							</table> 
137									<p>&nbsp;</p> 
138							</div> 
139						</div> 
140					</div> 
141				</div> 
142				</#if> 
143			 
144				<#if	Cronoprogramma.DurataDelProgetto.getData()?has_content && Cronoprogramma.DurataDelProgetto.getData() != "" >	 
145				<div class="sub-content accordion-item"> 
146					<div class="accordion-item-header" id="heading4_iamm__header"> 
147						<h3> 
148							<a class="accordion-item-header-link collapsed" aria-controls="collapseInfo" aria-expanded="false" data-parent="#heading4_iamm_" data-target="#collapse4_iamm_" data-toggle="collapse" id="heading4_iamm_" role="tab"> 
149								<span class="accordion-arrow">Cronoprogramma</span> 
150								<em class="fas fa-chevron-up fa-xs pull-right"></em> 
151								<em class="fas fa-chevron-down fa-xs pull-right"></em> 
152							</a> 
153						</h3> 
154					</div> 
155					<div id="collapse4_iamm_" class="collapse" aria-labelledby="heading4_iamm_" data-parent="#contentList_iamm_"> 
156						<div class="accordion-item-content"> 
157							<div class="content-accordion"> 
158							<table border="1" cellpadding="0" cellspacing="0" style="width: 100%"> 
159								<tbody> 
160								<#if	Cronoprogramma.DurataDelProgetto.getData()?has_content && Cronoprogramma.DurataDelProgetto.getData() != "" >	 
161									<tr> 
162										<td style="width: 295px;"><strong>Durata del progetto</strong></td> 
163										<td style="width: 345px;">${Cronoprogramma.DurataDelProgetto.getData()}</td> 
164									</tr> 
165									</#if> 
166								</tbody> 
167							</table> 
168									<p>&nbsp;</p> 
169							</div> 
170						</div> 
171					</div> 
172				</div> 
173				</#if> 
174				 
175				<#if	(Contatti.Contatti1.getData()?has_content && Contatti.Contatti1.getData() != "") ||   
176											(Contatti.SitoWeb.getData()?has_content && Contatti.SitoWeb.getData() != "") ||  
177											(Contatti.SitoWeb.ProfiliSocial2.UrlProfiloSocial.getData()?has_content && Contatti.SitoWeb.ProfiliSocial2.UrlProfiloSocial.getData() != "") 
178
179				<div class="sub-content accordion-item"> 
180					<div class="accordion-item-header" id="heading6_iamm__header"> 
181						<h3> 
182							<a class="accordion-item-header-link collapsed" aria-controls="collapseInfo" aria-expanded="false" data-parent="#heading6_iamm_" data-target="#collapse6_iamm_" data-toggle="collapse" id="heading6_iamm_" role="tab"> 
183								<span class="accordion-arrow">Contatti</span> 
184								<em class="fas fa-chevron-up fa-xs pull-right"></em> 
185								<em class="fas fa-chevron-down fa-xs pull-right"></em> 
186							</a> 
187						</h3> 
188					</div> 
189					<div id="collapse6_iamm_" class="collapse" aria-labelledby="heading6_iamm_" data-parent="#contentList_iamm_"> 
190						<div class="accordion-item-content"> 
191							<div class="content-accordion"> 
192							<table border="1" cellpadding="0" cellspacing="0" style="width: 100%"> 
193								<tbody> 
194								 
195								  <#if	Contatti.ResponsabilePerLaPuglia.getData()?has_content && Contatti.ResponsabilePerLaPuglia.getData() != "" > 
196									<tr> 
197										<td style="width: 295px;"><strong>Responsabile per la Puglia</strong></td> 
198										<td style="width: 345px;">${Contatti.ResponsabilePerLaPuglia.getData()}</td> 
199									</tr> 
200									</#if> 
201									<#if	Contatti.Contatti1.getData()?has_content && Contatti.Contatti1.getData() != "" > 
202									<tr> 
203										<td style="width: 295px;"><strong>Contatti</strong></td> 
204										<td style="width: 345px;">${Contatti.Contatti1.getData()}</td> 
205									</tr> 
206									</#if> 
207									<#if	Contatti.SitoWeb.getData()?has_content && Contatti.SitoWeb.getData() != "" >	 
208									<tr> 
209										<td style="width: 295px;"><strong>Sito Web</strong></td> 
210										<td style="width: 345px;">${Contatti.SitoWeb.getData()}</td> 
211									</tr> 
212									</#if> 
213									<#if Contatti.SitoWeb.ProfiliSocial2.getSiblings()?has_content>  
214									<#list Contatti.SitoWeb.ProfiliSocial2.getSiblings() as cur_ProfiloSocial> 
215									<#if	cur_ProfiloSocial.UrlProfiloSocial.getData()?has_content && cur_ProfiloSocial.UrlProfiloSocial.getData() != "" > 
216									<tr> 
217										<td style="width: 295px;"><strong>Profilo Social</strong></td> 
218										<td style="width: 345px;">${cur_ProfiloSocial.UrlProfiloSocial.getData()} </td> 
219									</tr> 
220									</#if> 
221									</#list>  
222									</#if> 
223									 
224									 
225								</tbody> 
226							</table> 
227							 
228				 
229									<p>&nbsp;</p> 
230							</div> 
231						</div> 
232					</div> 
233				</div> 
234				</#if> 
235					 
236			</div> 
237		</div> 
238 
239	 
240 
241					 
242					 
243            		 
244   
245 
246		<div class="col-md-4"> 
247			<div class="row"> 
248			    <!-- div class="d-none d-md-block"> 
249                    <@printSocialBlock title=title url=articleURL /> 
250                </div --> 
251			</div> 
252            <#if groupItemHasContent(Contatti.Documenti.newsAttachment)> 
253    			<div class="row"> 
254    			    <div class="col-12 documents-news"> 
255                        <div class="news-document-block"> 
256                            <h3 class="d-none d-md-block">Documenti</h3> 
257                            <@printDocumentList 
258                                documentList=Contatti.Documenti.newsAttachment 
259                                documentTitleChildrenName="newsAttachmentTitle" 
260                                documentDescriptionChildrenName="newsAttachmentDescription" 
261                                printIcons = true /> 
262                        </div> 
263        			</div> 
264    			</div> 
265            </#if> 
266		 
267 
268 
269	 
270		<div class="row"> 
271			<div class="col-8"> 
272				<#list currentArticleAssetEntry.getCategories() as category> 
273					<#assign badgeClass = "grigio"> 
274					<#assign categoryVocabulary =  vocabularyService.getVocabulary(category['vocabularyId']?number)['name']> 
275				<#if categoryVocabulary=="Aree Tematiche"> 
276								<#assign badgeClass = AssetCategoryPropertyLocalService.getCategoryProperty(category['categoryId']?number, 'css_class')['value'] > 
277							</#if> 
278							 
279						<a class="link-badge" href="/${themeDisplay.getLocale()?substring(0, 2)}/web${themeDisplay.getScopeGroup()['friendlyURL']}/${pathNewsList}?p_r_p_categoryId=${category['categoryId']}"> 
280							<span class="badge badge-${badgeClass}"> 
281								${category.getTitle(locale)} 
282							</span> 
283						</a> 
284				</#list> 
285			</div> 
286		</div> 
287		 
288		<!-- div class="row"> 
289			<div class="col-12 data-news"> 
290				<p>Pubblicato il ${date?datetime("EEE, d MMM yyyy HH:mm:ss Z")?string(dateTimeFormat)}</p> 
291			</div> 
292		</div --> 
293</div> 
294</div>