Relación de Oposiciones del Ayuntamiento de Valencia

 

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> serviceLocator.findService("com.valencia.liferay.common.utils.api.CommonUtilsApi")  [in template "20115#20151#12163405" at line 13, 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 commonUtilsApi = serviceLocat...  [in template "20115#20151#12163405" at line 13, column 1]
----
1<#assign portletRequestModel = objectUtil("com.liferay.portal.kernel.portlet.PortletRequestModel", renderRequest, renderResponse) /> 
2 
3<div class="row"> 
4    <div class="col-12"> 
5		  <#if (bloques.getData())??> 
6	       ${bloques.getData()} 
7      </#if> 
8    </div> 
9</div> 
10 
11<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
12<#assign AssetLinkLocalService = serviceLocator.findService("com.liferay.asset.link.service.AssetLinkLocalService") /> 
13<#assign commonUtilsApi =serviceLocator.findService("com.valencia.liferay.common.utils.api.CommonUtilsApi")/> 
14 
15<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
16<#assign journalId = .vars['reserved-article-id'].data/> 
17 
18<#attempt> 
19    <#assign article = JournalArticleLocalService.fetchArticle( groupId ,journalId) > 
20<#recover> 
21</#attempt> 
22 
23<#assign journalArticleClassname = "com.liferay.journal.model.JournalArticle" > 
24<#assign articleEntry = AssetEntryLocalService.getEntry(journalArticleClassname, article.getResourcePrimKey())> 
25<#assign articleRelatedEntries = AssetLinkLocalService.getDirectLinks(articleEntry.getEntryId()) > 
26 
27<#if article??> 
28<#if articleRelatedEntries?has_content> 
29 
30	<#assign relatedTemplateKey = "38113" > 
31 
32	<#list articleRelatedEntries as relatedAsset> 
33		<#assign relatedEntry = AssetEntryLocalService.getEntry(relatedAsset.getEntryId2()) > 
34		<#assign entryClassPK = relatedEntry.getClassPK() > 
35 
36		<#assign journalArticleClassname = "com.liferay.journal.model.JournalArticle" > 
37		<#if journalArticleClassname==relatedEntry.getClassName()> 
38			<#assign relatedArticle = JournalArticleLocalService.fetchLatestArticle(entryClassPK) > 
39			<#if relatedArticle.getDDMTemplateKey() == relatedTemplateKey > 
40				<#assign relatedArticleContent = JournalArticleLocalService.getArticleContent(relatedArticle, relatedArticle.getDDMTemplateKey(), "view", locale,portletRequestModel, themeDisplay)> 
41					 <div class="bloque-cuadro"> 
42				        <h3 class="titulo-bloque"><@liferay.language key="informacion_adicional" /></h3> 
43					     <#assign urlNew = commonUtilsApi.replaceUrlWithUID("${themeDisplay.getURLCurrent()}",relatedArticleContent)/> 
44					    <div class="col-12 pb-3" >${urlNew}</div> 
45				    </div> 
46 
47			</#if> 
48		</#if> 
49	</#list> 
50</#if> 
51</#if> 
52 
53<style type="text/css"> 
54 
55    .bloque-cuadro{ 
56      border:3px solid; 
57      border-color:#dadada; 
58      padding-left:15px; 
59      padding-right:15px; 
60      margin-top:15px; 
61     } 
62 
63    .titulo-bloque{ 
64      margin-top: 3%; 
65      margin-bottom: 3%; 
66      color:4C4C4C; 
67    } 
68 
69</style>