Il Consiglio Nazionale Forense è l’organismo apicale istituzionale dell’Avvocatura e rappresenta l’intera classe forense.

Sessioni Esame

Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> document.selectSingleNode("/root/dynamic-element[@name='protocollo']/dynamic-content")  [in template "20155#20195#36430" at line 32, column 36]

----
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: protocollo = document.selectSingleNod...  [in template "20155#20195#36430" at line 32, column 23]
----
1<#-- CNF UTILS --> 
2<#include "${templatesPath}/CNF-UTILS" /> 
3<#setting time_zone=timeZone.ID> 
4<#setting locale=locale.toString()> 
5<#assign portlet_display = portletDisplay /> 
6<#assign portlet_display_name = htmlUtil.escape(portlet_display.getPortletDisplayName()) /> 
7<#assign portlet_title = htmlUtil.escape(portlet_display.getTitle()) /> 
8 
9<#-- Servizi --> 
10<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
11<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService" ) /> 
12 
13<div> 
14  <#if portlet_title!=""> 
15    <article class="article-detail"> 
16      <div class="article-detail__title mb-5"> 
17        <h1> 
18          ${portlet_title} 
19        </h1> 
20        <span class="under-title"></span> 
21      </div> 
22    </article> 
23  </#if> 
24  <div class="row"> 
25    <div class="col-12"> 
26      <#if entries?has_content> 
27        <#list entries as curEntry> 
28          <#assign    renderer = curEntry.getAssetRenderer() 
29                      journalArticle = renderer.getArticle() 
30                      document = saxReaderUtil.read(journalArticle.getContentByLocale(locale.toString())) 
31                      titolo = document.selectSingleNode("/root/dynamic-element[@name='titolo']/dynamic-content").getText() 
32                      protocollo = document.selectSingleNode("/root/dynamic-element[@name='protocollo']/dynamic-content").getText() 
33                      testo = document.selectSingleNode("/root/dynamic-element[@name='testo']/dynamic-content").getText() 
34                      link_esterno = document.selectSingleNode("/root/dynamic-element[@name='link_esterno']/dynamic-content").getText() 
35                      currentURL = themeDisplay.getURLCurrent() 
36                      viewInContextUrl = renderer.getURLViewInContext(renderRequest, renderResponse, currentURL) 
37                      i = curEntry?index 
38                      data_inizio = document.selectSingleNode("/root/dynamic-element[@name='data_inizio']/dynamic-content") 
39                      start_date = "" 
40	                  start_day = "" 
41	                  start_month = "" 
42	                  start_year = "" 
43	                  data_scadenza = document.selectSingleNode("/root/dynamic-element[@name='data_scadenza']/dynamic-content") 
44	                  end_date = "" 
45                      end_date_string = "" 
46          /> 
47           
48          <#if validator.isNotNull(data_inizio) && validator.isNotNull(data_inizio.getText())> 
49		  	<#assign 	start_date = data_inizio.getText()?date("yyyy-MM-dd") 
50						start_day = start_date?string["dd"] 
51						start_month = start_date?string["MMMM"] 
52						start_year = start_date?string["yyy"] 
53		    /> 
54	      </#if> 
55	       
56	      <#if validator.isNotNull(data_scadenza) && validator.isNotNull(data_scadenza.getText())> 
57			<#assign end_date = data_scadenza.getText()?date("yyyy-MM-dd") 
58					 end_date_string = end_date?string["dd/MMM/yyyy"] 
59			/> 
60          </#if> 
61 
62          <div class="card-document"> 
63            <div class="row"> 
64              <div class="col-md-3"> 
65                <div class="card-document__date"> 
66                  <div class="d-md-flex"> 
67                    <svg class="ico-svg"> 
68                      <use xlink:href="${icons}#file-alt"></use> 
69                    </svg> 
70                    <div> 
71                      <div class="card-document__day"> 
72                        ${start_day} 
73                      </div> 
74                      <div> 
75                        ${start_month} 
76                      </div> 
77                      <div> 
78                        ${start_year} 
79                      </div> 
80                    </div> 
81                  </div> 
82                </div> 
83              </div> 
84              <div class="col-md-8"> 
85                <div class="d-flex justify-content-between"> 
86                  <div class="card-document__info"> 
87                    <#if data_scadenza.getText() != "" > 
88                      Scadenza  
89                      <span>${end_date_string}</span> 
90                    </#if> 
91                  </div> 
92                  <div class="card-document__info"> 
93                    <#if protocollo != "" > 
94                      Protocollo  
95                      <span>${protocollo}</span> 
96                    </#if> 
97                  </div> 
98                </div> 
99                <a href="${viewInContextUrl}" title="${titolo}" class="card-document__title"> 
100                  ${titolo} 
101                  <@getEditIcon "Contenuto" /> 
102                </a> 
103                <div> 
104                    <#assign 
105                        assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") 
106                        assetLinks = assetLinkLocalService.getDirectLinks(curEntry.getEntryId()) 
107                        AssetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryService") 
108                        counter = 0 
109                    /> 
110                     
111                    <#list assetLinks as item> 
112                        <#assign linkedAssetEntryId = item.getEntryId2() /> 
113                        <#assign linkedAssetEntry = assetEntryLocalService.getEntry(linkedAssetEntryId) />         
114                        <#assign linkedAssetEntryClassName = linkedAssetEntry.getClassName() /> 
115                        <#if (linkedAssetEntryClassName == "com.liferay.document.library.kernel.model.DLFileEntry") > 
116                            <#assign counter = counter + 1 /> 
117                        </#if> 
118                    </#list> 
119                 
120                  <#if counter != 0> 
121                    <a href="${viewInContextUrl}" title="${titolo}" class="btn-link btn-link--blue"> 
122                      ${counter} Allegati 
123                    </a> 
124                  </#if> 
125                  <#if link_esterno != ""> 
126                    <a href="${viewInContextUrl}" title="${titolo}" class="btn-link btn-link--green"> 
127                      Link Utile 
128                    </a> 
129                  </#if> 
130                </div> 
131              </div> 
132            </div> 
133          </div> 
134        </#list> 
135      </#if> 
136    <#attempt> 
137        <#assign bandi_page = getterUtil.getString(themeDisplay.getThemeSetting('bandi-page'), "") /> 
138    <#recover> 
139        <#assign bandi_page = "" /> 
140    </#attempt> 
141    <#if bandi_page!="">  
142      <a href="${bandi_page}" title="vedi tutti >" class="btn-link"> 
143        vedi tutti > 
144      </a> 
145    </#if> 
146    </div> 
147  </div> 
148</div> 
Per ricevere aggiornamenti sulle attività formative, gli eventi istituzionali del CNF, dalla FAI e della SSA, le iniziative parlamentari e ministeriali in tema di giustizia e professione forense compili il presente modulo impostando le sue preferenze.