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#38119" at line 4, 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#38119" at line 4, column 1]
----
1<#if titularBusqueda??>
2 <h2 class="bloque_titulo">${titularBusqueda.getData()}</h2>
3</#if>
4<#assign commonUtilsApi =serviceLocator.findService("com.valencia.liferay.common.utils.api.CommonUtilsApi")/>
5
6<#assign bloquesNew = commonUtilsApi.replaceUrlWithUID(themeDisplay.getURLCurrent(),bloques.getData())/>
7 ${bloquesNew}
8
9
10<#assign AssetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
11<#assign AssetLinkLocalService = serviceLocator.findService("com.liferay.asset.link.service.AssetLinkLocalService") />
12
13
14<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
15<#assign journalId = .vars['reserved-article-id'].data/>
16
17<#attempt>
18 <#assign article = JournalArticleLocalService.fetchArticle( groupId ,journalId) >
19<#recover>
20</#attempt>
21
22<#if article??>
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 articleRelatedEntries?has_content>
28
29 <#assign relatedTemplateKey = "38113" >
30
31 <#list articleRelatedEntries as relatedAsset>
32 <#assign relatedEntry = AssetEntryLocalService.getEntry(relatedAsset.getEntryId2()) >
33 <#assign entryClassPK = relatedEntry.getClassPK() >
34
35 <#assign journalArticleClassname = "com.liferay.journal.model.JournalArticle" >
36 <#if journalArticleClassname==relatedEntry.getClassName()>
37 <#assign relatedArticle = JournalArticleLocalService.fetchLatestArticle(entryClassPK) >
38 <#if relatedArticle.getDDMTemplateKey() == relatedTemplateKey >
39 <#assign portletRequestModel = objectUtil("com.liferay.portal.kernel.portlet.PortletRequestModel", renderRequest, renderResponse) />
40 <#assign relatedArticleContent = JournalArticleLocalService.getArticleContent(relatedArticle, relatedArticle.getDDMTemplateKey(), "view", locale,portletRequestModel, themeDisplay)>
41
42 <div class="bloque-cuadro">
43 <h3 class="titulo-bloque"><@liferay.language key="informacion_adicional" /></h3>
44 <#assign urlNew = commonUtilsApi.replaceUrlWithUID(themeDisplay.getURLCurrent(),relatedArticleContent)/>
45 <div class="col-12 pb-3" >${urlNew}</div>
46 </div>
47
48
49 </#if>
50 </#if>
51 </#list>
52</#if>
53</#if>
54
55
56
57<script type="text/javascript">
58 $( document ).ready(function() {
59 var url = window.location.href;
60
61 if (url.indexOf("?uid=")>=0 && url.indexOf("/-/content/")>=0) {
62 $('.portlet-breadcrumb').siblings().hide();
63 if($('.portlet-breadcrumb').siblings().length == 0){
64 $('.portlet-breadcrumb').parent().siblings().hide();
65 }
66 addTitleBreadCrumb();
67 } else if(url.indexOf("/-/content/")>=0){
68 $('.portlet-breadcrumb').siblings().hide();
69 if($('.portlet-breadcrumb').siblings().length == 0){
70 $('.portlet-breadcrumb').parent().siblings().hide();
71 }
72 addTitleBreadCrumb();
73 }
74
75 });
76</script>