Produciuse un erro ao procesar o modelo.
The following has evaluated to null or missing:
==> articleImageAsJson [in template "20097#20123#46912" at line 54, column 63]
----
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 imageURL = "/c/document_libra... [in template "20097#20123#46912" at line 54, column 4]
----
1<#if entries?has_content>
2
3<#-- Importar taglibs -->
4
5<#-- Importar servicios -->
6
7<#assign portletCustomTitle = themeDisplay.getPortletDisplay().getTitle() />
8
9
10<div class="container">
11<h2><a href="/actualidade">${portletCustomTitle}</a></h2>
12
13
14<section class="listNoticias listado">
15
16
17 <#list entries as entry>
18
19 <#assign
20 assetRenderer = entry.getAssetRenderer()
21 journalArticle = assetRenderer.getAssetObject()
22 />
23
24<#assign className = assetRenderer.getClassName() />
25<#if className == "com.liferay.journal.model.JournalArticle">
26 <#assign fields = assetRenderer.getDDMFormValuesReader().getDDMFormValues().getDDMFormFieldValues() />
27 <#list fields as field>
28 <#if field.getName() == "ImagenSEO" && field.getValue().getString(locale)?has_content>
29 <#assign articleImageAsJson = jsonFactoryUtil.createJSONObject(field.getValue().getString(locale)) />
30 </#if>
31
32 <#-- Si no hay ImagenSEO, tomamos Imagen -->
33 <#if field.getName() == "Imagen"
34 && (!articleImageAsJson?? || !articleImageAsJson.getString("uuid")?has_content)
35 && field.getValue().getString(locale)?has_content>
36 <#assign articleImageAsJson = jsonFactoryUtil.createJSONObject(field.getValue().getString(locale)) />
37 </#if>
38
39 </#list>
40 </#if>
41
42 <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(locale)) />
43 <#assign rootElement = document.getRootElement() />
44
45 <#assign docXml = saxReaderUtil.read(entry.getAssetRenderer().getArticle().getContentByLocale(locale)) />
46
47 <#assign imagen = saxReaderUtil.createXPath("dynamic-element[@name='Imagen']").selectSingleNode(rootElement).getStringValue() />
48 <#assign titulo = saxReaderUtil.createXPath("dynamic-element[@name='Titulo']").selectSingleNode(rootElement).getStringValue() />
49 <#assign entradilla = saxReaderUtil.createXPath("dynamic-element[@name='Entradilla']").selectSingleNode(rootElement).getStringValue() />
50
51<#assign fecha = docXml.valueOf("//dynamic-element[@name='Fecha']/dynamic-content/text()") />
52
53
54 <#assign imageURL = "/c/document_library/get_file?uuid=" + articleImageAsJson.getString("uuid") + "&groupId=" + articleImageAsJson.getString("groupId")>
55
56 <#assign altImage = articleImageAsJson.getString("alt")>
57
58
59<a href="./-/${journalArticle.urlTitle}" title="${entry.getTitle(locale)} ">
60
61
62 <img class="ratio ratio-4x3" loading="lazy" src="${imageURL}" alt="${altImage}" />
63 <h3>
64
65 ${titulo}
66
67 </h3>
68
69
70
71
72 <div class="fecha">
73 <p class="card-text"><i class="far fa-calendar-alt"> </i>
74
75
76 ${fecha?replace('\n|\t', '', 'r')?date("yyyy-MM-dd")?string("dd/MM/yyyy")}
77 </p>
78
79 </div>
80
81</a>
82
83
84
85
86
87 </#list>
88</section></div>
89
90</#if>
Video -Campana a tua meta o teu destino
