Tenders
Dynamic Breadcrumb
  • relevance
  • newest
  • oldest
An error occurred while processing the template.
The following has evaluated to null or missing:
==> root.selectSingleNode("//dynamic-element[@field-reference='redirectionType']/dynamic-content")  [in template "57581103840604#20120#184292" at line 17, column 44]

----
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 redirectionType = root.select...  [in template "57581103840604#20120#184292" at line 17, column 17]
----
1<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
2<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
3<#assign assetTagLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagLocalService") /> 
4<div id="accordionListing"> 
5<#list entries as entry> 
6  <#assign referenceNumber = "" /> 
7	<#assign viewURL = entry.getViewURL() /> 
8	<#assign className = entry.getClassName() /> 
9	<#assign classPK = entry.getClassPK()?number /> 
10	<#assign assetTags = assetTagLocalService.getTags(className, classPK) /> 
11	 
12	<#if className == "com.liferay.journal.model.JournalArticle"> 
13	   <#assign article = journalArticleLocalService.getLatestArticle(classPK) /> 
14	   <#assign docXml = saxReaderUtil.read(article.getContentByLocale(locale)) /> 
15     <#assign root = docXml.getRootElement() /> 
16    <#assign referenceNumber = root.selectSingleNode("dynamic-element[@field-reference='AccordianItemReferenceNumber']/dynamic-content").getData() /> 
17		<#assign redirectionType = root.selectSingleNode("//dynamic-element[@field-reference='redirectionType']/dynamic-content").getText() /> 
18    <#assign externalLink = root.selectSingleNode("//dynamic-element[@field-reference='ExternalLink']/dynamic-content").getText() /> 
19	<#if redirectionType == "Option86576408"> 
20    <#if redirectionPage?has_content && redirectionPage?is_string && redirectionPage?contains('"id":"')> 
21        <#assign layoutIdKey = '"id":"' /> 
22        <#assign startIndex = redirectionPage?index_of(layoutIdKey) + layoutIdKey?length /> 
23        <#assign endIndex = redirectionPage?index_of('"', startIndex) /> 
24        <#if startIndex < redirectionPage?length && endIndex > startIndex> 
25            <#assign layoutId = redirectionPage?substring(startIndex, endIndex) /> 
26            <#assign layout = layoutLocalService.getLayoutByUuidAndGroupId(layoutId, themeDisplay.getScopeGroupId(), false) /> 
27            <#assign viewURL = portalUtil.getLayoutFriendlyURL(layout, themeDisplay) /> 
28        </#if> 
29    </#if> 
30</#if> 
31 
32<#-- Override viewURL if ExternalLink is present --> 
33<#if externalLink?has_content && externalLink?is_string> 
34    <#assign viewURL = externalLink /> 
35</#if> 
36 
37</#if>	 
38		 
39			 <#assign inputDate  = root.selectSingleNode("dynamic-element[@field-reference='displayDate']/dynamic-content").getData() /> 
40 <#if inputDate?has_content> 
41		<#assign dateObj = dateUtil.parseDate("yyyy-MM-dd", inputDate, locale) /> 
42    <#assign displayDate = dateUtil.getDate(dateObj, "dd-MM-yyyy", locale) /> 
43	 <#else> 
44		 <#assign displayDate = inputDate /> 
45	</#if> 
46		 
47	<div class="accordianCard">	 
48	<a class="text-decoration-none" href="${viewURL}"> 
49        <div class="card-header accordian-header d-flex justify-content-between align-items-center row"> 
50          <div class="col-11"> 
51						<div class="d-flex"> 
52            <h2 class="accordian-title">${entry.getTitle()}</h2>  
53						<div> 
54							   
55							 <#if assetTags?has_content> 
56							      <#list assetTags as tag> 
57                        <span class="tag">${tag.getName()}</span> 
58                    </#list> 
59								 </#if> 
60              </div> 
61							</div> 
62            <div class="accordian-dateReference date-display"> 
63              <div><#if referenceNumber?has_content>Reference Number: ${referenceNumber}<br></#if></div> 
64               
65              <div><#if displayDate?has_content>Issue Date: ${displayDate}</#if></div> 
66            </div> 
67          </div> 
68          <div class="arrow-icon col-1 d-flex justify-content-end"> 
69            <i class="fa-solid fa-circle-chevron-right"></i> 
70          </div> 
71        </div> 
72      </a> 
73      </div> 
74   </#list> 
75  </div> 
76 
77 
78 
79<style> 
80  .tag { 
81    background: #EFE8FD; 
82    color: #3E3E94; 
83    padding: 3px 10px; 
84    font-size: 13px; 
85    /*text-transform: uppercase;*/ 
86    font-weight: 600; 
87    border-radius: 24px; 
88    margin-left: 6px; 
89		white-space:nowrap; 
90
91 
92	.titleHeader{ 
93		font-size: 18px; 
94
95  .date { 
96    font-size: 14px; 
97    color: #666666; 
98
99  .list_object_view { 
100    margin-left: 10px; 
101
102  .no-style-link { 
103    display: inline-block; 
104  color: inherit; 
105  text-decoration: none; 
106  margin-bottom: 8px; 
107
108  .no-style-link:hover { 
109    color: inherit; 
110    text-decoration: none; 
111
112 
113</style>