An error occurred while processing the template.
The following has evaluated to null or missing: ==> serviceLocator.findService("com.liferay.portal.service.GroupLocalService") [in template "20155#20195#104688" at line 215, column 26] ---- 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 group = serviceLocator.findSe... [in template "20155#20195#104688" at line 215, column 9] ----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
2<#assign curArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].getData())>
3<#if locale.getLanguage() == "es" || locale.getLanguage() == "ca">
4 <#if getterUtil.getBoolean(Reservada.getData())>
5 <#assign url = "/" + locale.getLanguage() + "/sobre-tmb/treballa-amb-nosaltres/formulari-candidats?id=" + reference_number.getData() + "&reserved=true">
6 <#else>
7 <#assign url = "/" + locale.getLanguage() + "/sobre-tmb/treballa-amb-nosaltres/formulari-candidats?id=" + reference_number.getData()>
8 </#if>
9
10 <#assign target = "">
11 <#if URL_formulari_extern.getData()?has_content && URL_formulari_extern.getData()?has_content>
12 <#assign url = URL_formulari_extern.getData()>
13 <#assign target = "_blank">
14 </#if>
15
16 <#assign knownFormats = ["pdf", "doc", "jpg", "mov", "zip"]>
17 <#assign DLAppServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
18
19 <div class="sidebar-body">
20 <div class="sidebar-body__container">
21 <div class="secondary grid__col-4">
22 <div class="page-preheader">
23 <h1 class="title title--1 page-header__title">
24 ${position.getData()}</h1>
25 <div class="page-header__intro truncate js-truncate-expand" data-expand-text="<@liferay.language key="view.more"/>
26 ">
27 <div class="truncate__content">
28 <p>
29 </p>
30 </div>
31 </div>
32 </div>
33 </div>
34 <div class="primary grid__col-8">
35 <div class="content intro">
36 <p>
37 <@liferay.language key="offer.reference.text"/>
38 ${reference_number.getData()}</p>
39 <p>
40 <@liferay.language key="offer.receipt.text"/>
41 : <#if request_date?has_content && request_date.getData()?has_content>
42 ${request_date.getData()} </#if>
43 </p>
44 <#if functions?has_content && functions.getData()?has_content>
45 <p>
46 ${functions.getData()}</p>
47 </#if>
48 </div>
49 <#if responsabilities?has_content && responsabilities.getData()?has_content>
50 <h2 class="title title--2">
51 ${responsabilities.getData()}</h2>
52 <#if responsabilities.list_resp.getSiblings()?has_content>
53 <div class="content">
54 <ul class="list list--standard">
55 <#foreach cur_resp in responsabilities.list_resp.getSiblings()>
56 <li class="list__item">
57 ${cur_resp.getData()}</li>
58 </#foreach>
59 </ul>
60 </div>
61 </#if>
62 </#if>
63
64 <h2 class="title title--2">
65 <@liferay.language key="offer.requirements.text"/>
66 </h2>
67 <#if list_requ.getSiblings()?has_content>
68 <div class="content">
69 <ul class="list list--standard">
70 <#foreach cur_reque in list_requ.getSiblings()>
71 <li class="list__item">
72 ${cur_reque.getData()}</li>
73 </#foreach>
74 </ul>
75 </div>
76 </#if>
77
78 <#if salary?has_content && salary.getData()?has_content>
79 <h2 class="title title--2">
80 ${salary.getData()}</h2>
81 <#if salary.list_salary.getSiblings()?has_content>
82 <div class="content">
83 <ul class="list list--standard">
84 <#foreach cur_sal in salary.list_salary.getSiblings()>
85 <li class="list__item">
86 ${cur_sal.getData()}</li>
87 </#foreach>
88 </ul>
89 </div>
90 </#if>
91 </#if>
92 <#if more_info?has_content && more_info.getData()?has_content>
93 <h2 class="title title--2">
94 ${more_info.getData()}</h2>
95 <#if more_info.list_more_info.getSiblings()?has_content>
96 <div class="content">
97 <ul class="list list--standard">
98 <#foreach cur_info in more_info.list_more_info.getSiblings()>
99 <li class="list__item">
100 ${cur_info.getData()}</li>
101 </#foreach>
102 </ul>
103 </div>
104 </#if>
105 </#if>
106 <#if more_info2?has_content && more_info2.getData()?has_content>
107 <h2 class="title title--2">
108 ${more_info2.getData()}</h2>
109 <#if more_info2.list_more_info2.getSiblings()?has_content>
110 <div class="content">
111 <ul class="list list--standard">
112 <#foreach cur_info2 in more_info2.list_more_info2.getSiblings()>
113 <li class="list__item">
114 ${cur_info2.getData()}</li>
115 </#foreach>
116 </ul>
117 </div>
118 </#if>
119 </#if>
120 <#if final_text?has_content && final_text.getData()?has_content>
121 <div class="content">
122 ${final_text.getData()}
123 </div>
124 </#if>
125
126 <#-- Documents
127 -->
128 <#if Document.getSiblings()?has_content>
129 <ul class="list list--files">
130 <#foreach cur_docfile in Document.getSiblings()>
131 <#if cur_docfile.Document_URL?has_content && cur_docfile.Document_URL.getData()?has_content>
132 <#assign docUrlList = cur_docfile.Document_URL.getData()?split("/")>
133 <#assign docUrlUuidNum = getterUtil.getInteger(docUrlList?size)-1>
134 <#assign docUrlNameNum = getterUtil.getInteger(docUrlList?size)-2>
135 <#assign docClassUuid = docUrlList[docUrlUuidNum]>
136 <#assign docClassUuidData = docClassUuid?split("?")>
137
138 <#if (getterUtil.getInteger(docClassUuidData?size)>0)>
139 <#assign docClassUuid = docClassUuidData[0]>
140 </#if>
141
142 <#assign fileExtension = "">
143 <#assign fileSize = "">
144 <#assign fileEntry = "">
145
146 <#if cur_docfile.Visible_Name.getData()?has_content>
147 <#assign docName = cur_docfile.Visible_Name.getData()>
148 <#else>
149 <#assign docName = docUrlList[docUrlNameNum]>
150 <#assign docName = docName?replace("+", " ")>
151 </#if>
152
153 <#assign fileEntry = DLAppServiceUtil.getFileEntryByUuidAndGroupId(docClassUuid, groupId)>
154 <#assign fileSize = fileEntry.getSize()/1024>
155 <#assign fileVersion = fileEntry.getFileVersion()>
156 <#assign fileExtension = fileEntry.getExtension()?lower_case>
157
158 <#if knownFormats?seq_contains(fileExtension) && codeHTML?has_content && codeHTML != "true">
159 <#assign iconClass = "icon--file-" + fileExtension>
160 <#else>
161 <#assign iconClass = "icon--file-generic">
162 </#if>
163
164 <#assign accessibleDocName = "">
165
166 <#if cur_docfile.Accessible_Name.getData()?has_content>
167 <#assign accessibleDocName = cur_docfile.Accessible_Name.getData()>
168 </#if>
169
170 <li class="list__item">
171 <a class="file" href="${cur_docfile.Document_URL.getData()}" title="${accessibleDocName}" rel="external" target="_blank">
172 <span class="icon ${iconClass}">
173 </span>
174 <span class="file__name">
175 ${docName}</span>
176 <#if fileExtension?has_content && fileSize?has_content>
177 <span class="file__data">
178 [${fileExtension?upper_case}: ${fileSize?round} KB]</span>
179 </#if>
180 </a>
181 </li>
182 </#if>
183 </#foreach>
184 </ul>
185 </#if>
186 <#assign isActiveAccessForm = tmbPortalUtil.isActiveAccessForm(curArticle, locale)>
187 <#if !tmbPortalUtil.isExpiredContent(curArticle, locale) && !getterUtil.getBoolean(disableBtn.getData()) && isActiveAccessForm>
188 <div class="cta">
189 <div class="cta__text">
190 <#if getterUtil.getBoolean(Reservada.getData())>
191 <p>
192 <@liferay.language key="label.formWorkWithUs.inputdata"/>
193 </p>
194
195 <#else>
196 <p>
197 <@liferay.language key="label.formWorkWithUs.inputdata.laboral"/>
198 </p>
199
200 </#if>
201 </div>
202 <div class="cta__actions">
203 <a href="${url}" target="${target}" class="button button--a">
204 <@liferay.language key="label.formWorkWithUs.button"/>
205 </a>
206 </div>
207 </div>
208 </#if>
209 </div>
210
211 </div>
212
213 </div>
214<#else>
215 <#assign group = serviceLocator.findService("com.liferay.portal.service.GroupLocalService").getGroup(groupId)>
216 <#assign articleId = group.getExpandoBridge().getAttribute("CONTENT_JOB_OFFERS")>
217 <#assign webContent = journalContentUtil.getContent(groupId, articleId, "", "view", "en_US", xmlRequest)>
218 <#if webContent?has_content>
219 <div class="sidebar-body">
220 <div class="sidebar-body__container">
221 ${webContent} ?
222 </div>
223 </div>
224
225 </#if>
226</#if>