Panel

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> tab.Publicador  [in template "34007#34042#532608" at line 80, column 62]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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 end = getterUtil.getInteger(t...  [in template "34007#34042#532608" at line 80, column 25]
----
1<#-- LLamadas a servicios --> 
2<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")> 
3<#assign portletId = themeDisplay.getPortletDisplay().getId()/> 
4 
5<div class="template template-panel"> 
6    <div class="home-tabs"> 
7 
8        <div class="tabs"> 
9            <ul> 
10 
11                <#assign count = 1> 
12 
13                <#list TabsFieldSet.getSiblings() as tab> 
14 
15                    <#if count == 1> 
16                        <#assign state = "active"> 
17                    <#else> 
18                        <#assign state = "normal"> 
19                    </#if> 
20                	  <#assign enlaceJson = jsonFactoryUtil.createJSONObject(tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getData())> 
21					          <#assign layoutTitle = enlaceJson.getString("title")> 
22					          <#assign layoutFriendlyUrl = tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getFriendlyUrl()> 
23                    <#assign link = tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getFriendlyUrl()> 
24 
25                    <li class="${state}"> 
26                        <a id="tab-${count}" class="tab" href="${htmlUtil.escape(link)}" title="${link}"> 
27                            <span>${layoutTitle}</span> 
28                        </a> 
29                    </li> 
30 
31                    <#assign count = count + 1> 
32 
33                </#list> 
34 
35            </ul> 
36        </div> 
37 
38        <div class="rss"> 
39 
40            <#assign count = 1> 
41 
42            <#list TabsFieldSet.getSiblings() as tab> 
43 
44                <div id="rss-${count}" class="tab-rss"> 
45 
46                    <#if validator.isNotNull(tab.TabsFieldSetFieldSet.RssFieldSet.Rss.getData())> 
47 
48                        <#if count == 1> 
49                            <#assign textRss = tab.TabsFieldSetFieldSet.RssFieldSet.RssFieldSetFieldSet.NombreRss.getData()> 
50                        <#else> 
51                            <#assign textRss = languageUtil.get(locale, 'suscribe')> 
52                        </#if> 
53 
54                        <a href="${htmlUtil.escape(tab.TabsFieldSetFieldSet.RssFieldSet.Rss.getData())}" title="${textRss}">RSS</a> 
55 
56                    </#if> 
57 
58                </div> 
59 
60                <#assign count = count + 1> 
61 
62            </#list> 
63 
64        </div> 
65 
66        <div class="portlets"> 
67 
68            <#assign count = 100> 
69 
70            <#list TabsFieldSet.getSiblings() as tab> 
71 
72                <div id="tab-${count}" class="tab-portlet"> 
73 
74                    <#-- Portlet publicador de contenidos estructurados --> 
75 
76                    <#assign instance = count + 4410> 
77                    <#assign start = 1> 
78 
79                    <#if validator.isNotNull(tab.TabsFieldSetFieldSet.Publicador.getData())> 
80                        <#assign end = getterUtil.getInteger(tab.Publicador.getData())> 
81                    <#else> 
82                        <#assign end = 2> 
83                    </#if> 
84 
85                    <#assign range = start..end> 
86 
87					          <#assign size = getterUtil.getInteger(tab.TabsFieldSetFieldSet.Publicador.getData())> 
88                     
89					          <#list range as i> 
90 
91                        <#assign portlet_id = "webcontentportlet_WAR_webcontentsportlet"> 
92                        <#assign instance_id = instance + i> 
93 
94                        <#if i == size> 
95                            <#assign iterator = "item-panel-portlet item-panel-portlet-last"> 
96                        <#else> 
97                            <#assign iterator = "item-panel-portlet"> 
98                        </#if> 
99 
100                        <div class="${iterator}"> 
101                            <runtime-portlet name="${portlet_id}" instance="${instance_id}" queryString="" /> 
102                        </div> 
103 
104                    </#list> 
105 
106                </div> 
107 
108                <#assign count = count + 100> 
109 
110            </#list> 
111 
112        </div> 
113 
114        <div class="more"> 
115 
116            <#assign count = 1> 
117 
118            <#list TabsFieldSet.getSiblings() as tab> 
119 
120                <div id="more-${count}" class="tab-more"> 
121 
122                    <#if validator.isNotNull(tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getData())> 
123                        <#assign linkDirection = tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getFriendlyUrl()/> 
124						            <#assign enlaceJson = jsonFactoryUtil.createJSONObject(tab.TabsFieldSetFieldSet.EnlaceFieldSet.Enlace.getData())> 
125						            <#assign layoutTitle = enlaceJson.getString("title")> 
126                       
127					              <#if validator.isNotNull(tab.TabsFieldSetFieldSet.EnlaceFieldSet.EnlaceFieldSetFieldSet.Nombreenlace.getData())> 
128                            <#assign link = tab.TabsFieldSetFieldSet.EnlaceFieldSet.EnlaceFieldSetFieldSet.Nombreenlace.getData()> 
129                        <#else> 
130                            <#assign link = "leer más"> 
131                        </#if> 
132 
133                        <#assign nombreLink = linkDirection?split("/")> 
134 
135                        <a href="${htmlUtil.escape(linkDirection)}" title="languageUtil.get(locale, 'go-to') ${nombreLink[1]}"> 
136                            ${link} 
137                        </a> 
138                    </#if> 
139                </div> 
140 
141                <#assign count = count + 1> 
142 
143            </#list> 
144 
145        </div> 
146 
147    </div> 
148</div> 
149 
150<script type="text/javascript"> 
151	AUI().ready('aui-node',  
152        function(A){ 
153			var tabs = A.all('${portletId} .home-tabs .tabs li'); 
154			if(tabs != null){ 
155				tabs.each(function(obj, index){ 
156					var e= this; 
157					e.on('click', function(event){ 
158						event.preventDefault(); 
159						 
160						//Portlets 
161						var portlets = A.all('${portletId} .home-tabs .portlets .tab-portlet'); 
162						portlets.each(function(pobj, pindex){ 
163							var pe= this; 
164							 
165							if(index != pindex) 
166								pe.addClass('hide'); 
167							else 
168								pe.removeClass('hide'); 
169						}); 
170						 
171						//Read more 
172						var links = A.all('${portletId} .home-tabs .more .tab-more'); 
173						links.each(function(pobj, pindex){ 
174							var pe= this; 
175							 
176							if(index != pindex) 
177								pe.addClass('hide'); 
178							else 
179								pe.removeClass('hide'); 
180						}); 
181						 
182						//RSS 
183						var rss = A.all('${portletId} .home-tabs .rss .tab-rss'); 
184						rss.each(function(pobj, pindex){ 
185							var pe= this; 
186							 
187							if(index != pindex) 
188								pe.addClass('hide'); 
189							else 
190								pe.removeClass('hide'); 
191						}); 
192						 
193						A.all('${portletId} .home-tabs .tabs li').removeClass('active'); 
194						e.addClass('active'); 
195					}); 
196				}); 
197
198			 
199			//Portlets 
200			var portlets = A.all('${portletId} .home-tabs .portlets .tab-portlet'); 
201				portlets.each(function(obj, index){ 
202				var e= this; 
203				if(index!=0) 
204					e.addClass('hide'); 
205			}); 
206			 
207			//links 
208			var links = A.all('${portletId} .home-tabs .more .tab-more'); 
209				links.each(function(obj, index){ 
210				var e= this; 
211				if(index!=0) 
212					e.addClass('hide'); 
213			}); 
214			 
215			//rss 
216			var rss = A.all('${portletId} .home-tabs .rss .tab-rss'); 
217				rss.each(function(obj, index){ 
218				var e= this; 
219				if(index!=0) 
220					e.addClass('hide'); 
221			}); 
222		}); 
223</script>