An error occurred while processing the template.
The following has evaluated to null or missing:
==> formField.getValue().getString(locale)  [in template "blaues-gut-portal.web-resources_SERVLET_CONTEXT_/common_macros.ftl" at line 22, column 43]

----
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 altTag = formField.getValue()...  [in template "blaues-gut-portal.web-resources_SERVLET_CONTEXT_/common_macros.ftl" in function "getAltText" at line 22, column 25]
----
1<#import "/blaues-gut-portal.web-resources_SERVLET_CONTEXT_/common_macros.ftl" as common> 
2 
3<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
4<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
5 
6<#function getDownloadLink content> 
7    <#assign 
8    dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService") 
9    dlUrlHelperUtil = serviceLocator.findService("com.liferay.document.library.util.DLURLHelper") 
10    json = jsonFactoryUtil.createJSONObject(content) 
11    fileEntryGroupId = json.getLong("groupId") 
12    fileEntryUuid = json.getString("uuid") 
13    fileEntry = dlAppService.getFileEntryByUuidAndGroupId(fileEntryUuid, fileEntryGroupId) 
14
15    <#return httpUtil.removeParameter(dlUrlHelperUtil.getDownloadURL(fileEntry, fileEntry.getLatestFileVersion(), themeDisplay, "", false, true), "download") /> 
16</#function> 
17 
18<div class="news-list-container"> 
19    <section class="news-list"> 
20        <#list entries as curEntry> 
21 
22            <#assign docXml = saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContent()) /> 
23            <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, curEntry) /> 
24            <#assign renderer= curEntry.getAssetRenderer()/> 
25 
26            <#if assetLinkBehavior != "showFullContent"> 
27                <#assign viewURL = renderer.getURLViewInContext(renderRequest, renderResponse, viewURL) /> 
28            </#if> 
29 
30            <#assign 
31            linkTarget =        "" 
32            linkHref =          viewURL 
33            headline =          docXml.valueOf("//dynamic-element[@name='HeadlineArticle']/dynamic-content/text()") 
34            datum =             curEntry.createDate 
35            text =              docXml.valueOf("//dynamic-element[@name='Intro']/dynamic-content/text()") 
36            intro =             stringUtil.shorten(htmlUtil.stripHtml(text), 200) 
37            imgUrlExisting =    docXml.valueOf("//dynamic-element[@name='ExistingSlider']//dynamic-element[@name='Image']/dynamic-content/text()") 
38            imgUrlNew =         docXml.valueOf("//dynamic-element[@name='NeuerSlider']//dynamic-element[@name='Image']/dynamic-content/text()") 
39            imgLarge =          docXml.valueOf("//dynamic-element[@name='ImageLarge']/dynamic-content/text()") 
40            imgUrl =            "" 
41            altText =           "" 
42            Copyright = "" 
43            /> 
44 
45            <#if imgUrlNew!=""> 
46                <#assign 
47                    imgUrl = getDownloadLink(imgUrlNew) + "&imagePreview=1" 
48                    altText = common.getAltText(imgUrlNew) 
49                    Copyright = common.getCopyrightTag("",imgUrlNew) 
50                /> 
51            <#elseif imgUrlExisting!=""> 
52                <#assign 
53                    imgUrl = getDownloadLink(imgUrlExisting) + "&imagePreview=1" 
54                    altText = common.getAltText(imgUrlExisting) 
55                    Copyright = common.getCopyrightTag("",imgUrlExisting) 
56                /> 
57            <#elseif imgLarge!=""> 
58                <#assign 
59                    imgUrl = getDownloadLink(imgLarge) + "&imagePreview=1" 
60                    altText = common.getAltText(imgLarge) 
61                    Copyright = common.getCopyrightTag("",imgLarge) 
62                /> 
63            </#if> 
64 
65            <article class="news-list-item"> 
66                <div class="pull-right"> 
67                    <@getEditIcon entry=curEntry/> 
68                </div> 
69                <div class="news-list-image <#if imgUrl=="">no-image</#if> image-with-caption"> 
70                    <a href="${linkHref}"> 
71                        <#if imgUrl!=""> 
72                            <img src="${imgUrl}" data-src="${imgUrl}" 
73                                 class="list-image" alt="${altText}"/> 
74                        <#else> 
75                            <img src="/o/blaues-gut-theme/images/no-image_blaues-gut.png" 
76                                 data-src="/o/blaues-gut-theme/images/no-image_blaues-gut.png" 
77                                 class="list-image no-image" alt=""/> 
78                        </#if> 
79                    </a> 
80                    ${Copyright} 
81                </div> 
82                <div class="news-list-content"> 
83                    <a href="${linkHref}"> 
84                        <#assign originalLocale = .locale> 
85                        <#setting locale = themeDisplay.locale> 
86                        <span class="meta">${datum?date?string("dd.MMMM yyyy")}</span> 
87                        <#setting locale = originalLocale> 
88                        <h3 class="teaser-headline">${headline}</h3> 
89                        <#--                    <p>${intro}</p>--> 
90                    </a> 
91                </div> 
92            </article> 
93        </#list> 
94    </section> 
95</div> 
96 
97<#macro getEditIcon entry> 
98    <#if renderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
99        <#assign redirectURL = renderResponse.createRenderURL() /> 
100 
101        ${redirectURL.setParameter("mvcPath", "/add_asset_redirect.jsp")} 
102        ${redirectURL.setWindowState("pop_up")} 
103 
104        <#assign editPortletURL = renderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" /> 
105 
106        <#if validator.isNotNull(editPortletURL)> 
107            <#assign title = languageUtil.format(locale, "edit-x", entry.getTitle(locale), false) /> 
108 
109            <@liferay_ui["icon"] 
110            cssClass="icon-monospaced visible-interaction" 
111            icon="pencil" 
112            markupView="lexicon" 
113            message=title 
114            url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});" 
115            /> 
116        </#if> 
117    </#if> 
118</#macro>