Back Open Cities

An error occurred while processing the template.
Multiple compatible overloaded variations were found with the same priority.
The FTL type of the argument values were: Null.
The Java type of the argument values were: Null.
The matching overload was searched among these members:
    com.liferay.portal.kernel.util.Validator_IW.isNotNull(String),
    com.liferay.portal.kernel.util.Validator_IW.isNotNull(Long),
    com.liferay.portal.kernel.util.Validator_IW.isNotNull(Object)

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if (validator.isNotNull(.vars["Resum...  [in template "10155#10193#PROJECTE_RECERCA" at line 161, column 21]
----
1<#-- Carreguem la macro getPathForPlugins per obtenir les rutes a les carpetes dels plugins que necessitem--> 
2<#include "${fullTemplatesPath}/util/getPathForPlugins.ftl" /> 
3 
4<#assign jsBootstrapPath = getPathForPlugins('bootstrap','js','')?trim /> 
5<#assign imgUpfPath = getPathForPlugins('upf','images','')?trim/> 
6 
7<style type="text/css"> 
8 
9    .row, .form-horizontal>.form-group, .row-fluid { 
10        margin-right: 0px; 
11        margin-left: 0px; 
12
13    /* fix linea */ 
14    .nav { 
15        border-bottom: 1px solid #ddd; 
16
17    .nav-tabs > li > a { 
18        border-bottom: 0px solid !important; 
19
20    /* end fix linea */ 
21 
22    .nav-tabs>li>a, .nav-pills>li>a { 
23        padding-right: 12px; 
24        padding-left: 12px; 
25        line-height: 24px; 
26        padding: 0.425rem 0.6rem; 
27
28 
29    .nav-tabs>.active>a, .nav-tabs>.active>a:hover, .nav-tabs>.active>a:focus { 
30        color: #555; 
31        background-color: #fff; 
32        border: 1px solid #ddd; 
33        border-bottom-color: transparent!important; 
34        cursor: default; 
35        border-radius: 4px 4px 0 0; 
36        line-height: 23px; 
37
38     
39    .nav-tabs>li>a:hover, .nav-tabs>li>a:focus { 
40        border-color: #eee #eee #ddd; 
41        text-decoration: none; 
42        background-color: #eee; 
43        color: #c8102e; 
44        border-radius: 4px 4px 0 0; 
45
46 
47    #nom_page { 
48        display: none; 
49
50    .fitxa_projecte_item .row-fluid { 
51        display: flex !important; 
52        flex-wrap: wrap !important; 
53        align-items: stretch !important; 
54
55    .fitxa_projecte_item { 
56        width: 100%; 
57        margin: 0 0 10px 0; 
58        box-sizing: content-box; 
59        background-color: #eee; 
60        z-index: 0; 
61        border: 1px solid #eee !important; 
62        box-sizing: border-box; 
63
64    span.nom { 
65        font-weight: bold; 
66        text-transform: uppercase; 
67
68    .fitxa_projecte_item .row-fluid [class*="span"] { 
69        padding: 10px; 
70
71    .fitxa_projecte_item .span3 { 
72        background-color: #fff; 
73
74    .fitxa_projecte_logo { 
75        background-position: center center; 
76        background-image: url(${imgUpfPath}/fitxa-projecte.png); 
77        background-repeat: no-repeat; 
78        background-size: contain; 
79        min-width: 80px; 
80        min-height: 80px; 
81        display: block; 
82        margin: auto; 
83        position: relative; 
84        line-height: initial; 
85        width: 100%; 
86        height: 100%; 
87
88    @media (max-width: 767px) { 
89        #nom_page { 
90            display: block; 
91
92
93 
94    .header-back-to{ 
95        display:none; 
96
97    .header-title{ 
98        display:none; 
99
100    .taglib-header 	{ 
101        border:none; 
102
103 
104    .portlet-asset-publisher .asset-content{ 
105        margin-left:0px; 
106
107 
108    /*estil pròpi de les pestanyes responsive*/ 
109    .tabbable .nav-tabs::after, .tabbable .nav-pills::after { 
110        clear: both!important; 
111
112    a.accordion-link { 
113        display: none !important; 
114
115    @media (max-width:979px) { 
116 
117        ul.nav.nav-tabs.responsive-tabs { 
118            display: none; 
119
120        a.accordion-link { 
121            display: block !important; 
122            border: 1px solid #fff; 
123            background-color: #ddd; 
124            padding-top: 8px; 
125            padding-bottom: 8px; 
126            padding-left: 12px; 
127            padding-right: 12px line-height: 20px; 
128            text-decoration: none; 
129
130        .tab-pane { 
131            padding-top: 8px; 
132            padding-bottom: 8px; 
133            padding-left:12px; 
134            padding-right:12px; 
135
136        a.accordion-link:hover, a.accordion-link:focus { 
137            text-decoration: none; 
138
139
140    /*FI estil pestanyes responsive*/ 
141</style> 
142 
143<div id="nom_page"> 
144    <h1>${.vars['Nombre'].getData()}</h1> 
145</div> 
146 
147<div class="fitxa_projecte"> 
148    <div class="fitxa_projecte_item"> 
149        <div class="row-fluid"> 
150            <div class="span3"> 
151                <#if (.vars['Imagen'].getData()?has_content) > 
152                    <div style='background-image:url("${.vars['Imagen'].getData()}")' class="fitxa_projecte_logo"></div> 
153                <#else> 
154                    <div class="fitxa_projecte_logo"></div> 
155                </#if> 
156            </div> 
157            <div class="span9 "> 
158                <div class="lfr-meta-actions asset-actions"></div> 
159                <p class="fitxa_projecte_dato"> 
160                    <span class="nom">${.vars['Nombre'].getData()}</span><br> 
161                    <#if (validator.isNotNull(.vars['Resumen'])) > 
162                        <#assign resum = .vars['Resumen'].getData() /> 
163                        <#if (validator.isNotNull(resum?length)) > 
164                            <#assign resum = stringUtil.shorten(resum, 250) /> 
165                            <#if (resum?length == 250) > 
166                                <#assign resum = resum + "..." /> 
167                            </#if> 
168                        </#if> 
169                        ${resum} 
170                    </#if> 
171                </p> 
172            </div> 
173        </div> 
174    </div> 
175    <#assign dateMark = randomizer.nextInt()*(-1) /> 
176    <div class="tabbable"> 
177        <ul class="nav nav-tabs responsive-tabs tabs${dateMark}"> 
178            <#if (validator.isNotNull(.vars['Descripcion']) && .vars['Descripcion'].getData()?has_content) > 
179                <li class="active"><a href="#descripcio"><@liferay.language key="descripcio-tab" /></a></li> 
180            </#if> 
181            <#if ( (validator.isNotNull(.vars['InvestigadorPrincipal']) && .vars['InvestigadorPrincipal'].getData()?has_content) || 
182            (validator.isNotNull(.vars['Investigadores']) && .vars['Investigadores'].getData()?has_content) ) > 
183                <li><a href="#investigadors"><@liferay.language key="investigadors-tab" /></a></li> 
184            </#if> 
185            <#if (validator.isNotNull(.vars['Colaboradores']) && .vars['Colaboradores'].getData()?has_content) > 
186                <li><a href="#collabora"><@liferay.language key="collaboradors-tab" /></a></li> 
187            </#if> 
188            <#if (validator.isNotNull(.vars['Financiamiento']) && .vars['Financiamiento'].getData()?has_content) > 
189                <li><a href="#financament"><@liferay.language key="financament-tab" /></a></li> 
190            </#if> 
191        </ul> 
192 
193        <div class="tab-content"> 
194            <#if (validator.isNotNull(.vars['Descripcion']) && .vars['Descripcion'].getData()?has_content) > 
195                <div class="tab-pane active" id="descripcio"> 
196                    ${.vars['Descripcion'].getData()} 
197                </div> 
198            </#if> 
199            <#if ((validator.isNotNull(.vars['InvestigadorPrincipal']) && .vars['InvestigadorPrincipal'].getData()?has_content)|| 
200            (validator.isNotNull(.vars['Investigadores']) && .vars['Investigadores'].getData()?has_content)) > 
201                <div class="tab-pane" id="investigadors"> 
202                    <#if (validator.isNotNull(.vars['InvestigadorPrincipal']) && .vars['InvestigadorPrincipal'].getData()?has_content) > 
203                        <h2> <@liferay.language key="investigadors-principals" /></h2> 
204                        <#list .vars['InvestigadorPrincipal'].getSiblings() as cur_InvestigadorPrincipal > 
205                            <#if (validator.isNotNull(cur_InvestigadorPrincipal.LinkInvestigadorPrincipal) && 
206                            cur_InvestigadorPrincipal.LinkInvestigadorPrincipal.getData()?has_content)> 
207                                <a href="${cur_InvestigadorPrincipal.LinkInvestigadorPrincipal.getData()}">${cur_InvestigadorPrincipal.getData()}</a> 
208                            <#else> 
209                                ${cur_InvestigadorPrincipal.getData()} 
210                            </#if> 
211                            </br> 
212                        </#list> 
213                    </#if> 
214 
215 
216                    <#if (validator.isNotNull(.vars['Investigadores'])) > 
217                        <#if (.vars['Investigadores'].getData()?has_content) > 
218                        <#-- Només posem el títol si també hi han investigadors principals, per no repetir el nom de la pestanya. --> 
219                            <#if (validator.isNotNull(.vars['InvestigadorPrincipal']) && .vars['InvestigadorPrincipal'].getData()?has_content) > 
220                                <h3> <@liferay.language key="investigadors" /></h3> 
221                            </#if> 
222 
223 
224                            <#list .vars['Investigadores'].getSiblings() as cur_Investigadores > 
225                                <#if (validator.isNotNull(cur_Investigadores.LinkInvestigador) 
226                                && cur_Investigadores.LinkInvestigador.getData()?has_content) > 
227                                    <a href="${cur_Investigadores.LinkInvestigador.getData()}">${cur_Investigadores.getData()}</a> 
228                                <#else> 
229                                    ${cur_Investigadores.getData()} 
230                                </#if> 
231 
232                                </br> 
233                            </#list> 
234                        </#if> 
235                    </#if> 
236                </div> 
237            </#if> 
238            <#if (validator.isNotNull(.vars['Colaboradores']) && .vars['Colaboradores'].getData()?has_content) > 
239                <div class="tab-pane" id="collabora"> 
240                    ${.vars['Colaboradores'].getData()} 
241                </div> 
242            </#if> 
243 
244            <#if (validator.isNotNull(.vars['Financiamiento']) && .vars['Financiamiento'].getData()?has_content) > 
245                <div class="tab-pane" id="financament"> 
246                    ${.vars['Financiamiento'].getData()} 
247                </div> 
248            </#if> 
249        </div> 
250    </div> 
251</div> 
252 
253<script src="${jsBootstrapPath}/bootstrap_tab.js"></script> 
254<script src="${jsBootstrapPath}/jquery_bootstrap_responsive_tabs.js"></script> 
255 
256<script type="text/javascript"> 
257 
258/*Treure el títol de la pàgina 7.2*/ 
259document.querySelector(".upf__titol-pagina")?.remove() 
260 
261    $('.responsive-tabs.tabs${dateMark}').responsiveTabs({ 
262        accordionOn: ['xs', 'sm'] // xs, sm, md, lg 
263    }); 
264 
265    // Si la pàgina que llista els projectes és de primer nivell, llavors no es posa el divider del breadcrumb 
266    // i l'hem d'introduir nosaltres. 
267    if($(".breadcrumb li").length==2){ 
268        $(".breadcrumb .first").append("<span class='divider'>/</span>"); 
269
270 
271 
272</script>