An error occurred while processing the template.
The following has evaluated to null or missing:
==> Article_Title  [in template "20302#20342#PUB_GOOD_NEWS" at line 145, column 52]

----
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: ${Article_Title.getData()}  [in template "20302#20342#PUB_GOOD_NEWS" at line 145, column 50]
----
1<#-- @ftlvariable name="JournalArticleTemplateHelper" type="com.neptune.ui.templates.helpers.JournalArticleTemplateHelperUtil" --> 
2<#-- @ftlvariable name="JournalArticleLocalService" type="com.liferay.journal.service.JournalArticleLocalService" --> 
3<#-- @ftlvariable name="PortalUtil" type="com.liferay.portal.kernel.util.PortalUtil" --> 
4 
5<style> 
6  #aoc .aoc-pub-article__header--author { 
7    text-transform: capitalize; 
8
9 
10  /*Social Media*/ 
11  #aoc #aoc-pub-social-media-sticky-sticky-wrapper, #aoc #aoc-pub-social-media-books-sticky-sticky-wrapper { 
12    margin-left: -45px; 
13    position: fixed; 
14    top: 240px; 
15
16 
17  @media screen and (max-width: 1023px) { 
18    #aoc-pub-social-media-sticky { 
19      display: none; 
20
21 
22    #aoc .aoc-pub-article__social-media-mobile { 
23      display: inline-flex; 
24      list-style: none; 
25      margin: 0; 
26
27 
28    #aoc .aoc-pub-article__header--author { 
29      display: block; 
30      padding: 0; 
31
32 
33    #aoc .aoc-pub-article__fb-share, 
34    #aoc #aoc-mobile-facebook { 
35      margin-right: 10px; 
36
37
38 
39  /*Stamps when injected*/ 
40  @media screen and (max-width: 1023px) { 
41    #aoc .aoc-pub-article__content .aoc-pub-thumbnails-vertical__thumbnail { 
42      max-width: 48%; 
43      flex: 1 0 auto; 
44      display: inline-flex; 
45      margin: 0 auto; 
46      justify-content: center; 
47
48
49 
50  @media screen and (max-width: 799px) { 
51    #aoc .aoc-pub-article__content .aoc-pub-thumbnails-vertical__thumbnail { 
52      flex: 1 0 100%; 
53      margin: 0 1%; 
54
55
56</style> 
57 
58<!-- sticky element --> 
59<div id="aoc-pub-social-media-sticky"> 
60  <ul class="aoc-pub-article__social-media"> 
61    <li> 
62      <a id="aoc-sticky-facebook" class="aoc-pub-article__social-media--link" href="#" target="_blank"> 
63        <svg class="aoc-pub-article__social-media--icon"> 
64          <use xlink:href="/o/aoc-publication-theme/resources/svg-sprite.svg#icon-fb"/> 
65        </svg> 
66      </a> 
67    </li> 
68    <li> 
69      <a id="aoc-sticky-twitter" href="#" target="_blank" class="aoc-pub-article__social-media--link"> 
70        <svg 
71          xmlns="http://www.w3.org/2000/svg" 
72          xmlns:svg="http://www.w3.org/2000/svg" 
73          xmlns:xlink="http://www.w3.org/1999/xlink" 
74          xml:space="preserve" 
75          x="0px" 
76          y="0px" 
77          viewBox="0 0 1668.56 1221.19" 
78          class="aoc-pub-article__social-media--icon" 
79          style="transform: scale(1.7); enable-background:new 0 0 1668.56 1221.19;" 
80
81          <style type="text/css"> 
82            .st0 { 
83              stroke: #FFFFFF; 
84              stroke-miterlimit: 10; 
85
86            .st1 { 
87              fill: #FFFFFF; 
88
89          </style> 
90          <g> 
91            <circle 
92              class="st0" 
93              cx="834.28" 
94              cy="610.6" 
95              r="481.33" 
96              fill="#808285" 
97              style="display: flex; align-items: center; justify-content: center;" 
98            /> 
99            <g 
100              id="layer1" 
101              transform="translate(52.390088,-25.058597)" 
102             style="scale: .80;  display: block; transform: translate(16%, 9%);" 
103
104              <path 
105                id="path1009" 
106                class="st1" 
107                d="M485.39,356.79l230.07,307.62L483.94,914.52h52.11l202.7-218.98l163.77,218.98h177.32L836.82,589.6l215.5-232.81h-52.11L813.54,558.46L662.71,356.79H485.39z M562.02,395.17h81.46l359.72,480.97h-81.46L562.02,395.17z" 
108              /> 
109            </g> 
110          </g> 
111        </svg> 
112      </a> 
113    </li> 
114  </ul> 
115</div> 
116 
117<#assign GroupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") /> 
118<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
119<#assign group = GroupLocalService.getGroup(groupId) /> 
120<#assign articleInfoLocalService = serviceLocator.findService("org.archdioceseofchicago.portal.service.service.ArticleInfoLocalService") /> 
121<#assign articleId = .vars['reserved-article-id'].data /> 
122 
123<#assign languageId = themeDisplay.getLanguageId()> 
124<#assign sectionName = articleInfoLocalService.getArticleSection(articleId, groupId, companyId, locale)> 
125 
126<#-- create edit URL--> 
127<#assign editURL = ""/> 
128<#assign journalArticle = JournalArticleLocalService.fetchLatestArticle(groupId, articleId, 0)!{} /> 
129<#if journalArticle?has_content> 
130  <#assign assetEntry = JournalArticleTemplateHelper.getAssetEntry(journalArticle)!{} /> 
131  <#if assetEntry?has_content> 
132    <#assign windowState = windowStateFactory.getWindowState("POP_UP")!"" /> 
133    <#assign assetRenderer = assetEntry.getAssetRenderer()!{} /> 
134    <#if assetRenderer?has_content && assetRenderer.hasEditPermission(permissionChecker)> 
135      <#assign editURL = assetRenderer.getURLEdit(themeDisplay.getRequest())!"" /> 
136    </#if> 
137  </#if> 
138</#if> 
139 
140<main class="aoc-pub-article__main"> 
141  <section class="aoc-pub-article"> 
142    <header class="aoc-pub-article__header"> 
143      <!--<span class="aoc-pub-article__header--label">${sectionName}</span>--> 
144      <h2 class="aoc-pub-page-title">${sectionName}</h2> 
145      <h1 class="aoc-pub-article__header--title">${Article_Title.getData()}</h1> 
146      <h4 class="aoc-pub-article__header--author"> 
147        <@liferay.language key="byline-text" /> 
148        <strong>${Author_and_Dept.getData()}</strong> 
149        <br/> 
150        <#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") /> 
151        <#assign user = userLocalService.getUserById(permissionChecker.getUserId()) /> 
152        <#assign articleDisplayDate = .vars['reserved-article-display-date'].data /> 
153        <#assign pubDate = articleDisplayDate?datetime("EEE, dd MMM yyyy hh:mm:ss Z") /> 
154        ${pubDate} 
155        <#if editURL?has_content> 
156
157          <a href="${editURL}" title="Edit Article"> 
158            <@clay["icon"] symbol="pencil" /> 
159            Edit Article 
160          </a> 
161        </#if> 
162      </h4> 
163    </header> 
164 
165    <!-- Social Media Mobile  --> 
166    <ul class="aoc-pub-article__social-media-mobile"> 
167      <li> 
168        <a id="aoc-mobile-facebook" class="aoc-pub-article__social-media--link" href="#" target="_blank"> 
169          <svg class="aoc-pub-article__social-media--icon"> 
170            <use xlink:href="/o/aoc-publication-theme/resources/svg-sprite.svg#icon-fb"/> 
171          </svg> 
172        </a> 
173      </li> 
174      <li> 
175        <a id="aoc-mobile-twitter" href="#" target="_blank" class="aoc-pub-article__social-media--link"> 
176          <svg 
177            xmlns="http://www.w3.org/2000/svg" 
178            xmlns:svg="http://www.w3.org/2000/svg" 
179            xmlns:xlink="http://www.w3.org/1999/xlink" 
180            xml:space="preserve" 
181            x="0px" 
182            y="0px" 
183            viewBox="0 0 1668.56 1221.19" 
184            class="aoc-pub-article__social-media--icon" 
185            style="transform: scale(1.7); enable-background:new 0 0 1668.56 1221.19;" 
186
187            <style type="text/css"> 
188              .st0{stroke:#FFFFFF;stroke-miterlimit:10;} 
189              .st1{fill:#FFFFFF;} 
190            </style> 
191            <g> 
192              <circle class="st0" cx="834.28" cy="610.6" r="481.33" fill="#808285" style="display: flex; align-items: center; justify-content: center;" /> 
193              <g id="layer1" transform="translate(52.390088,-25.058597)" style="scale: .80;  display: block; transform: translate(16%, 9%);"> 
194                <path id="path1009" class="st1" d="M485.39,356.79l230.07,307.62L483.94,914.52h52.11l202.7-218.98l163.77,218.98h177.32L836.82,589.6l215.5-232.81h-52.11L813.54,558.46L662.71,356.79H485.39z M562.02,395.17h81.46l359.72,480.97h-81.46L562.02,395.17z"/> 
195              </g> 
196            </g> 
197          </svg> 
198        </a> 
199      </li> 
200    </ul> 
201    <#assign relatedGalleryId = articleInfoLocalService.getRelatedArticlesIds("GALLERY_STRUCTURE", articleId?string, groupId, companyId)> 
202    <#assign ddmTemplateKey = "GALLERY_TEMPLATE"> 
203    <#if relatedGalleryId?has_content> 
204      <#assign relatedGalleryArticleId = relatedGalleryId[0]> 
205      <#assign galleryDisplay = JournalArticleLocalService.getArticleDisplay(groupId, relatedGalleryArticleId, ddmTemplateKey, languageId, themeDisplay)> 
206      ${galleryDisplay.getContent()} 
207    <#else> 
208      <#if Cover_Image?has_content> 
209        <article class="aoc-pub-article-hero"> 
210          <div class="aoc-pub-article-hero__image-container"> 
211            <img class="aoc-pub-article-hero__image" src="${Cover_Image.getData()}"> 
212          </div> 
213          <span class="aoc-pub-article-hero__caption"> 
214            ${Image_Caption_and_Credit.getData()} 
215          </span> 
216        </article> 
217      </#if> 
218    </#if> 
219    <article class="aoc-pub-article__content"> 
220      <#assign sourceArticleBody = articleInfoLocalService.getParsedPublicationArticle( 
221        Article_Content.getData(), 
222        SidebarsFieldSet.SidebarFieldSet.getSiblings() 
223      ) /> 
224      ${sourceArticleBody} 
225      <#if Contributors.getData()?has_content> 
226        <p>- - -</p> 
227        <p>Contributing to this story was ${Contributors.getData()}</p> 
228      </#if> 
229    </article> 
230 
231    <#assign theme = group.getPublicLayoutSet().getTheme() /> 
232 
233    <#assign articleIndexRoot = "/article-index" /> 
234    <#if themeDisplay.getThemeSetting("theme-type") == "catolico"> 
235      <#assign articleIndexRoot = "/articulo-indice" /> 
236    </#if> 
237    <#assign trendingPortletId = themeDisplay.getThemeSetting("trending-topic-portlet-id")!"" /> 
238    <#assign articleIndexPath = (articleIndexRoot 
239      + "?p_p_id=" 
240      + trendingPortletId 
241      + "&_" 
242      + trendingPortletId 
243      + "_tag=" 
244    ) /> 
245    <#assign siteFriendlyUrl = group.getFriendlyURL()! ""/> 
246    <#assign pathPublicUrl = portalUtil.getPathFriendlyURLPublic()!"" /> 
247    <#assign tags = articleInfoLocalService.getTagsWithIds(articleId, groupId)![] /> 
248    <#assign user = permissionChecker.getUser()!{} /> 
249    <#assign userId = user.getUserId() /> 
250    <#if tags?has_content> 
251      <div class="aoc-pub-article__topics"> 
252        <h4 class="aoc-pub-article__topics__title">Topics:</h4> 
253        <ul class="aoc-pub-article__topics__list"> 
254          <#list tags as tag> 
255            <#assign tagName = tag.getValue() /> 
256            <#assign tagId = tag.getKey() /> 
257            <script> 
258              AUI().use('aui-base', A => { 
259                Liferay.Service( 
260                  '/aoc.taghit/hit-tag', 
261
262                    groupId: ${groupId}, 
263                    userId: ${userId}, 
264                    tagId: '${tagId}' 
265                  }, 
266                  (obj) => {} 
267                ); 
268              }); 
269            </script> 
270            <#assign tagUrl = theme_service_util.getTrendingTopicPageUrl(tagName, themeDisplay, articleIndexPath)!"" /> 
271            <li class="aoc-pub-article__topics__list--item"> 
272              <a href="${tagUrl}">${tagName}</a> 
273            </li> 
274          </#list> 
275        </ul> 
276      </div> 
277    </#if> 
278    <#assign relatedArticleAuthorId = articleInfoLocalService.getRelatedArticlesIds("AUTHOR_STRUCTURE", articleId, groupId, companyId)> 
279    <#assign ddmTemplateKey = "PUB_AUTHOR"> 
280    <#if relatedArticleAuthorId?has_content> 
281      <#assign authorArticleId = relatedArticleAuthorId[0]> 
282      <#assign authorDisplay = JournalArticleLocalService.getArticleDisplay(groupId, authorArticleId, ddmTemplateKey, languageId, themeDisplay)> 
283      <#if authorDisplay?has_content> 
284        ${authorDisplay.getContent()} 
285      </#if> 
286    </#if> 
287    <#assign relatedArticlesIds = articleInfoLocalService.getRelatedArticlesIds("ARTICLE_STRUCTURE", articleId?string, groupId, companyId)> 
288    <#assign ddmTemplateKey = "RELATED_ARTICLE"> 
289    <#if relatedArticlesIds?has_content > 
290      <hr> 
291      <strong class="aoc-pub-article__posts-header">Related Articles</strong> 
292      <section class="aoc-pub-secondary-post-feed"> 
293        <#list relatedArticlesIds as relatedArticleId> 
294          <#if relatedArticleId?index lt 3> 
295            <#assign relatedArticleDisplay = JournalArticleLocalService.getArticleDisplay(groupId, relatedArticleId, ddmTemplateKey, "view", languageId, themeDisplay)> 
296            ${relatedArticleDisplay.getContent()} 
297          </#if> 
298        </#list> 
299      </section> 
300    </#if> 
301  </section> 
302</main> 

Advertising