News
Catalonia Trade & Investment
Discover the latest news from Catalonia Trade & Investment and learn why to invest in Barcelona-Catalonia, southern Europe's hub for business and life.

An error occurred while processing the template.
The following has evaluated to null or missing:
==> imageFirstNewJson.groupId [in template "176139#176179#209043" at line 63, column 52]
----
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: ${imageFirstNewJson.groupId} [in template "176139#176179#209043" at line 63, column 50]
----
1<#setting date_format="dd MMM yyyy">
2
3<#assign
4 journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleService")
5 assetCategoryServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService")
6/>
7
8<#assign currentPage = "1">
9<#if renderRequest.getParameter("cur")?has_content>
10 <#assign currentPage = renderRequest.getParameter("cur")>
11</#if>
12
13<#if entries?has_content>
14 <section class="list_news_1 container">
15 <ul class="list_cards row">
16 <#list entries as curEntry>
17 <#assign
18 journalArticle = journalArticleService.getLatestArticle(curEntry.getClassPK())
19 categories = assetCategoryServiceUtil.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey())
20 categoriesString = ""
21
22 renderer = curEntry.getAssetRenderer()
23 journalArticle = renderer.getArticle()
24
25 document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplay.getLanguageId()))
26 rootElement = document.getRootElement()
27
28 imageFirstNew = saxReaderUtil.createXPath("dynamic-element[@name='imageFirstNew']").selectSingleNode(rootElement).getStringValue()?trim
29 dateNew = saxReaderUtil.createXPath("dynamic-element[@name='dateNew']").selectSingleNode(rootElement).getStringValue()?trim?datetime("yyyy-MM-dd")?date
30 titleNew = saxReaderUtil.createXPath("dynamic-element[@name='titleNew']").selectSingleNode(rootElement).getStringValue()?trim
31 summaryNew = saxReaderUtil.createXPath("dynamic-element[@name='summaryNew']").selectSingleNode(rootElement).getStringValue()?trim
32 textLinkFieldSetNode = saxReaderUtil.createXPath("dynamic-element[@name='textLinkNewFieldSet']").selectSingleNode(rootElement)
33 textLinkNew = saxReaderUtil.createXPath("dynamic-element[@name='textLinkNew']").selectSingleNode(textLinkFieldSetNode).selectSingleNode("dynamic-content").getStringValue()?trim
34 linkDetail = curEntry.getAssetRenderer().getURLViewInContext(renderRequest, renderResponse, "")
35 />
36
37 <#list categories as category>
38 <#if category.getVocabularyId() != 178885><#continue></#if>
39 <#if categoriesString != ""><#assign categoriesString += " · "></#if>
40 <#assign categoriesString += category.getTitle(locale)>
41 </#list>
42
43 <#if imageFirstNew?? && imageFirstNew?has_content>
44 <#assign imageFirstNewJson = imageFirstNew?eval />
45 <#else>
46 <#assign imageFirstNewJson = "" />
47 </#if>
48
49 <#assign itemClass = "">
50
51 <#if currentPage == "1">
52 <#if curEntry?index == 0>
53 <#assign itemClass = "one">
54 </#if>
55 <#if curEntry?index == 1 || curEntry?index == 2>
56 <#assign itemClass = "two">
57 </#if>
58 </#if>
59
60 <li class="item col-12 col-md-6 col-lg-4 ${itemClass}">
61 <div class="image">
62 <#if imageFirstNewJson?has_content>
63 <img src="/documents/${imageFirstNewJson.groupId}/${imageFirstNewJson.uuid}" alt="">
64 <#else>
65 <img src="/documents/176177/179111/news-generic.jpg" alt="">
66 </#if>
67 <p class="fecha">
68 <span class="day">${dateNew}</span>
69 </p>
70 </div>
71 <div class="bloque">
72 <div class="titular">
73 <h2 class="small_title">${titleNew}</h2>
74 <#if categories?has_content>
75 <p class="pre_titulo">${categoriesString}</p>
76 </#if>
77 </div>
78 <#if summaryNew?has_content>
79 <div class="content_text">
80 ${summaryNew}
81 </div>
82 </#if>
83 <a href="${linkDetail}" class="btn_blue" data-senna-off="true">
84 See more
85 <span class="sr-only">${titleNew}</span>
86 </a>
87 </div>
88 </li>
89 </#list>
90 </ul>
91 </section>
92</#if>

Follow our day-to-day on our social networks
There’s a lot going on in Catalonia’s business world and these are the best sources to stay updated daily.




