Was Unternehmen aus dem BMW-Marokko-Fall lernen können
BMW gilt als Role Model im Nachhaltigkeitsmanagement. Doch Expertinnen und Experten blickten mit gemischten Gefühlen auf den gewagten Move, für die Herstellung von Elektromotoren kein Kobalt mehr aus dem Kongo zu beziehen, sondern aus Marokko. Dafür muss man wissen, dass im Kongo der Kobaltabbau häufig mit Kinderarbeit, Gewalt und Verstößen gegen europäische Umweltstandards einhergeht. Die Arbeitsbedingungen sind nur schwer überprüfbar, da viele Menschen illegal Kobalt schürfen. Es gibt zahlreiche Zwischenhändler, bis das Material beim direkten Zulieferer und bei Abnehmern wie der Automobilindustrie in Europa landet.
In Marokko ist das anders: Im Jahr 2020 schloss BMW Direktverträge mit dem marokkanischen Rohstoffkonzern Managem. Ein Fünftel des benötigten Kobalts kommt aus der Bou-Azzer-Mine, die eine Tochterfirma der Managem Group betreibt. Ein solcher Rückzug aus einem Lieferland, auch als „Disengagement“ bezeichnet, ist gleichwohl umstritten. Vielen sehen darin nur einen letzten Ausweg, da es die Lebensgrundlage der Menschen im Rückzugsland gefährden kann.
Fakt ist aber auch: Durch die direkte Lieferbeziehung (first tier) in Marokko ging BMW in die Verantwortung – auch rechtlich. Denn das Lieferkettensorgfaltspflichtengesetz besagt: Je direkter ein Unternehmen mit einem Zulieferer zusammenarbeitet, desto größer sind die Sorgfaltspflichten in Bezug auf Menschenrechts- und Umweltstandards. Diese Verpflichtung steigt noch weiter, wenn ein Unternehmen Hauptabnehmer von einem Lieferanten ist. Auch Renault unterschrieb im Juni 2022 eine Absichtserklärung, ab 2025 Kobalt von Managem zu beziehen. Über die genauen Absatzmengen ist nichts bekannt. Beide Unternehmen hoben in ihrer Kommunikation die ethische Beschaffung des Kobalts hervor.
Medienberichte über Verstöße gegen Umwelt- und Arbeitsschutzregeln
Und nun das. Bereits im Juli 2023 berichtete das französische Medium Reporterre ausführlich über eine völlig andere Realität: schlechte Arbeitsausrüstung, keine Schulungen, kaum Schutz gegen giftigen Staub, der beim Abbau von Kobalt entsteht, sowie mit Arsen vergiftetes Wasser in den nahegelegenen Oasen. Beschäftigte, die diese Umstände anprangern, müssten mit Jobverlust rechnen. Eine Gewerkschaft stehe unter Korruptionsverdacht.
Erst einige Monate später folgte ein großes Medienecho in Deutschland. Am 13. November veröffentlichten NDR, WDR und Süddeutsche Zeitung ihre gemeinsamen Recherchen mit Reporterre und dem marokkanischen Medium Hawamich. Diese legen nahe, dass von der Mine Bou Azzer große Mengen Arsen in die Umwelt gelangen. Die Journalistinnen und Journalisten hatten ihre Proben vom Helmholtz-Zentrum für Umweltforschung in Magdeburg analysieren lassen. Beschäftigte erzählten ihnen von fehlenden Arbeitsschutzmaßnahmen, Kettenverträgen und Krankheiten, die zu Entlassungen führen.
Der Zulieferer Managem wies die Vorwürfe zurück. Und BMW prüft noch. Dass jedoch selbst ein Unternehmen, das für seine hohen Umwelt- und Menschenrechtsstandards bekannt ist, nicht vor einem derartigen Vorfall und dem damit einhergehenden Imageschaden gefeit ist, sollte andere hellhörig machen. Der Fall zeigt, wo mögliche Lücken im Risikomanagement liegen. Was können wir daraus bereits jetzt ableiten?
Sechs Schritte zu größerer Sorgfalt in Lieferketten
1. Nicht auf Compliance, sondern auf die Wirkung kommt es an
Unternehmen sollten sich nicht allein auf Zertifikate und Audits verlassen. Im vorliegenden Fall hatten BMW und Renault zumindest die Medien darauf verwiesen. Die Managem Group ist demnach etwa von der Responsible Minerals Initiative (RMI) zertifiziert und hat sich der Nachhaltigkeitsbewertungsmethodik der Plattform Ecovadis unterzogen. Die BMW Group versicherte gegenüber Reporterre, dass sie „regelmäßige Audits an den Standorten ihrer Zulieferer durchführt, um die Einhaltung der Sozial- und Umweltstandards des Unternehmens zu überprüfen“. „Viele Unternehmen und selbst Medien betrachten Zertifikate und die vermeintliche Überwachung von Zulieferern als Inbegriff der Sorgfaltspflicht. Das gaukelt falsche Sicherheit vor“, findet Johannes Blankenbach, Referent beim Business & Human Rights Resource Centre in Berlin. Unternehmen haben entsprechende Systeme und Instrumente für Compliance etabliert. Aber das spricht sie nicht von ihren Sorgfaltspflichten und der Verantwortung frei. „Es kommt auf wirksame Maßnahmen für Rechteinhabende und Umwelt an.“
2. Blindspots von Audits können gefährlich werden
Die meisten Audits sind nicht explorativ. Das heißt, die Standards beruhen auf geschlossenen Fragen, die es abzuhaken gilt. Das funktioniert dann gut, wenn man weiß, was passieren kann. Allerdings ist das kaum zu leisten, denn selbst fundierte Audits haben einen bestimmten Fokus und können nie alles abdecken. Wer sich auf Sozialaudits verlässt, übersieht möglicherweise die Risse in einem Produktionsgebäude. So kommt es trotzdem zu Tragödien wie dem Einsturz von Rana Plaza in Bangladesch oder dem Brand bei Ali Enterprises in Pakistan. Beide Unternehmen wurden kurz vor dem Vorfall auditiert.
In einer Studie von Germanwatch von 2022 wurden Zertifizierungen der Rohstoffindustrie untersucht. Demnach bewertet etwa der Due Diligence Standard der Responsible Mineral Initiative (RMI), „inwieweit Rohstoffschmelzen und Raffinerien Managementprozesse der menschenrechtlichen Sorgfalt gemäß den OECD-Leitlinien in ihren Lieferketten umsetzen, ohne jedoch die Produktionsstätten selbst auf die Einhaltung von ESG-Belangen hin zu überprüfen“. RMI beauftrage zwar selbst den Zertifizierungsdienstleister mit dem Audit, so dass es den Einfluss des zertifizierten Unternehmens reduzieren könne. Doch es beziehe die Rechteinhabenden (Beschäftigte oder Menschen, die vor Ort leben) nicht ein und mache die Ergebnisse der Zertifizierung auch nicht transparent. Dass die Umwelt einer Mine nicht mit Arsen verseucht ist, kann ein solches Zertifikat also nicht bescheinigen. Zudem fokussiert sich die RMI auf die OECD Due Diligence Guidance for Minerals from Conflict-Affected and High-Risk Areas (CAHRAs). Damit sind menschenrechtliche Sorgfaltspflichten nur in beschränktem Ausmaß abgedeckt und auf Hochrisikoländer beschränkt, die gemäß der eigenen Methodologie als solche definiert sind.
Generell sollten Unternehmen bedenken, worauf Audits beruhen und wie sie ablaufen:
- Welche Standards und Teile der Menschenrechts- und Sorgfaltspflichten in der Lieferkette deckt das Audit ab?
- Inwiefern ist das Audit angekündigt oder haben Unternehmen die Möglichkeit, vorab auf anderen Wegen davon zu erfahren und mögliche Missstände zu verschleiern?
- Führt eine unabhängige Partei (third party) das Audit durch oder sind die Auditorinnen und Auditoren vom Zulieferer selbst beauftragt und bezahlt?
- Beziehen Besuche und Befragungen die Rechteinhabenden ein und beruhen sie auf Interviews, die in entsprechenden Schutzräumen oder vertrauensvollen Rahmenbedingungen stattfinden?
- Welche Expertise bringen die Auditorinnen und Auditoren mit?
- In welchem Turnus finden die Audits statt (in der Regel alle ein bis drei Jahre)?
Die Standards und Zertifizierungen bilden inzwischen ein eigenes Ökosystem und Geschäftsfeld. Manche ergänzen sich gegenseitig. Der Zertifikate-Dschungel ist nicht einfach zu durchschauen, wobei hier vor allem große Unternehmen schon viel Erfahrung und Expertise haben. Dennoch bleiben Blindspots. Der Helpdesk Wirtschaft & Menschenrechte, das Unternehmen eine unabhängige Beratung anbietet, brachte 2022 ein Infopaket zur Rolle von Audits im Sorgfaltsprozess heraus. „Bei einem Audit [...] handelt es sich stets um eine Momentaufnahme, die Auskunft über die übliche Situation vor Ort geben kann, aber nicht muss", heißt es in dem Papier. Zeitgründe, Gefälligkeit gegenüber dem Auftraggeber, zu gering qualifiziertes Personal oder Korruption – all das kann die Ergebnisse beeinflussen und dazu führen, dass Unternehmen die tatsächlichen Verhältnisse vor Ort falsch einschätzen. „Ein Zertifikat ist bestenfalls ein gutes Abbild im Moment, schlechtestenfalls ein reines Feigenblatt“, resümiert auch Johannes Blankenbach.
3. Es gibt keine „sicheren Zulieferer-Länder“
Vermutlich hat BMW laut LkSG in Bezug auf das Risikomanagement vieles richtig gemacht. Es sieht vor, dass man eine Risikoanalyse erstellt und bestehende Risiken priorisieren darf. Die Frage ist, ob das Automobilunternehmen das Risiko in einem Land wie Marokko, wo es erstmals in großem Stil Rohstoffe bezog, richtig und sorgfältig eingeschätzt hat.
Es gibt Indikatoren dafür, wie es in bestimmten Ländern um Umweltschutz und Menschenrechte bestellt ist. Marokko steht auf dieser Liste nicht gerade weit oben. Zum Beispiel belegt das Land auf dem Environmental Performance Index Platz 160 von 180. Zum Vergleich: Australien, woher BMW den größten Teil des für Elektroautos benötigten Kobalts bezieht, liegt auf Platz 17. Daraus folgt zwar einerseits, dass Unternehmen sich die Umweltschutzmaßnahmen in Marokko genauer anschauen sollten. Anderseits ist man selbst in Australien oder Europa nicht vor Verstößen gefeit. „Risiken lassen sich nicht ausschließlich anhand von geographischen Grenzen erschließen“, sagt Alex Graf, Senior Consultant von Kumi Consulting, einer Beratung, die unter anderem auf Due-Diligence-Prüfungen in Lieferketten spezialisiert ist. Ländergrenzen könnten zwar als Indikator dienen, meint Graf und betont: „Es geht letztlich aber darum, eine wirklich neutrale Risikoanalyse als solche vorzunehmen und sich selbst objektiv mit dem Kontext auseinanderzusetzen.“
- FreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(Object, Object, Map)" threw an exception when invoked on com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl object "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl@20395421"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: ${cmFacade.include(self, view, params)} [in template "lib/coremedia.com/cae.ftl" in macro "include" at line 34, column 5] - Reached through: @cm.include self=self view="detailVie... [in template "WEB-INF/templates/com.haufe.portals.contentbeans.text/News.asMainContentV2.ftl" at line 61, column 7] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:292) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:255) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:78) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:122) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:336) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:152) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:109) at com.coremedia.objectserver.view.BeanView.renderMergedOutputModel(BeanView.java:63) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:316) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1406) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1150) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at com.coremedia.objectserver.web.DispatcherServlet.doDispatch(DispatcherServlet.java:69) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.AccessLogBotFilter.doFilter(AccessLogBotFilter.java:35) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:91) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:94) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:125) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2WebSsoAuthenticationRequestFilter.doFilterInternal(Saml2WebSsoAuthenticationRequestFilter.java:187) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutResponseFilter.doFilterInternal(Saml2LogoutResponseFilter.java:98) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutRequestFilter.doFilterInternal(Saml2LogoutRequestFilter.java:106) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2MetadataFilter.doFilterInternal(Saml2MetadataFilter.java:86) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:190) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doHttpRequestFilter(MappedDiagnosticContextInjectionFilter.java:65) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doFilter(MappedDiagnosticContextInjectionFilter.java:54) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.LogAndSuppressRequestRejectedExceptionFilter.doFilter(LogAndSuppressRequestRejectedExceptionFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:653) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:763) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1833) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: com.coremedia.objectserver.view.ViewException: Error rendering view at com.coremedia.objectserver.view.ViewUtils.rethrow(ViewUtils.java:344) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:154) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) ... 287 more Caused by: freemarker.core._MiscTemplateException: Macro "message" has no parameter with name "htmlEscape". Valid parameter names are: code ---- FTL stack trace ("~" means nesting-related): - Failed at: @spring.message code="page.pagination... [in template "WEB-INF/templates/com.haufe.portals.contentbeans.text/News.detailViewV2.ftl" at line 76, column 35] ---- at freemarker.core.Environment.newUndeclaredParamNameException(Environment.java:1152) at freemarker.core.Environment.setMacroContextLocalsFromArguments(Environment.java:1032) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:868) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visit(Environment.java:407) at freemarker.core.BlockAssignment.accept(BlockAssignment.java:55) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) ... 297 moreFreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(Object, Object, Map)" threw an exception when invoked on com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl object "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl@20395421"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: ${cmFacade.include(self, view, params)} [in template "lib/coremedia.com/cae.ftl" in macro "include" at line 34, column 5] - Reached through: @cm.include self=((self.content)!cm.U... [in template "WEB-INF/templates/com.haufe.portals.cae.pages/DetailPage.asMainContent.ftl" at line 12, column 5] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:292) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:255) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:78) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:122) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:336) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:152) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:109) at com.coremedia.objectserver.view.BeanView.renderMergedOutputModel(BeanView.java:63) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:316) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1406) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1150) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at com.coremedia.objectserver.web.DispatcherServlet.doDispatch(DispatcherServlet.java:69) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.AccessLogBotFilter.doFilter(AccessLogBotFilter.java:35) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:91) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:94) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:125) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2WebSsoAuthenticationRequestFilter.doFilterInternal(Saml2WebSsoAuthenticationRequestFilter.java:187) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutResponseFilter.doFilterInternal(Saml2LogoutResponseFilter.java:98) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutRequestFilter.doFilterInternal(Saml2LogoutRequestFilter.java:106) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2MetadataFilter.doFilterInternal(Saml2MetadataFilter.java:86) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:190) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doHttpRequestFilter(MappedDiagnosticContextInjectionFilter.java:65) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doFilter(MappedDiagnosticContextInjectionFilter.java:54) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.LogAndSuppressRequestRejectedExceptionFilter.doFilter(LogAndSuppressRequestRejectedExceptionFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:653) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:763) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1833) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: com.coremedia.objectserver.view.ViewException: Error rendering view at com.coremedia.objectserver.view.ViewUtils.rethrow(ViewUtils.java:344) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:154) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) ... 262 more Caused by: freemarker.core._MiscTemplateException: Macro "message" has no parameter with name "htmlEscape". Valid parameter names are: code ---- FTL stack trace ("~" means nesting-related): - Failed at: @spring.message code="page.pagination... [in template "WEB-INF/templates/com.haufe.portals.contentbeans.text/News.detailViewV2.ftl" at line 76, column 35] ---- at freemarker.core.Environment.newUndeclaredParamNameException(Environment.java:1152) at freemarker.core.Environment.setMacroContextLocalsFromArguments(Environment.java:1032) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:868) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visit(Environment.java:407) at freemarker.core.BlockAssignment.accept(BlockAssignment.java:55) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) ... 272 moreFreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(Object, Object, Map)" threw an exception when invoked on com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl object "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl@20395421"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: ${cmFacade.include(self, view, params)} [in template "lib/coremedia.com/cae.ftl" in macro "include" at line 34, column 5] - Reached through: @cm.include self=self view="asMainCon... [in template "WEB-INF/templates/com.haufe.portals.cae.pages/Page.htmlBody.ftl" at line 72, column 5] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:292) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:255) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:78) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:122) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:336) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:152) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:109) at com.coremedia.objectserver.view.BeanView.renderMergedOutputModel(BeanView.java:63) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:316) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1406) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1150) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at com.coremedia.objectserver.web.DispatcherServlet.doDispatch(DispatcherServlet.java:69) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.AccessLogBotFilter.doFilter(AccessLogBotFilter.java:35) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:91) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:94) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:125) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2WebSsoAuthenticationRequestFilter.doFilterInternal(Saml2WebSsoAuthenticationRequestFilter.java:187) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutResponseFilter.doFilterInternal(Saml2LogoutResponseFilter.java:98) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutRequestFilter.doFilterInternal(Saml2LogoutRequestFilter.java:106) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2MetadataFilter.doFilterInternal(Saml2MetadataFilter.java:86) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:190) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doHttpRequestFilter(MappedDiagnosticContextInjectionFilter.java:65) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doFilter(MappedDiagnosticContextInjectionFilter.java:54) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.LogAndSuppressRequestRejectedExceptionFilter.doFilter(LogAndSuppressRequestRejectedExceptionFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:653) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:763) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1833) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: com.coremedia.objectserver.view.ViewException: Error rendering view at com.coremedia.objectserver.view.ViewUtils.rethrow(ViewUtils.java:344) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:154) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) ... 236 more Caused by: freemarker.core._MiscTemplateException: Macro "message" has no parameter with name "htmlEscape". Valid parameter names are: code ---- FTL stack trace ("~" means nesting-related): - Failed at: @spring.message code="page.pagination... [in template "WEB-INF/templates/com.haufe.portals.contentbeans.text/News.detailViewV2.ftl" at line 76, column 35] ---- at freemarker.core.Environment.newUndeclaredParamNameException(Environment.java:1152) at freemarker.core.Environment.setMacroContextLocalsFromArguments(Environment.java:1032) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:868) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visit(Environment.java:407) at freemarker.core.BlockAssignment.accept(BlockAssignment.java:55) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) ... 246 moreFreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(Object, Object, Map)" threw an exception when invoked on com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl object "com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl@20395421"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: ${cmFacade.include(self, view, params)} [in template "lib/coremedia.com/cae.ftl" in macro "include" at line 34, column 5] - Reached through: @cm.include self=self view="htmlBody" [in template "WEB-INF/templates/com.haufe.portals.cae.pages/Page.ftl" at line 14, column 5] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:292) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:255) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:78) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:122) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:336) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:422) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:152) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:109) at com.coremedia.objectserver.view.BeanView.renderMergedOutputModel(BeanView.java:63) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:316) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1406) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1150) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) at com.coremedia.objectserver.web.DispatcherServlet.doDispatch(DispatcherServlet.java:69) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) at javax.servlet.http.HttpServlet.service(HttpServlet.java:529) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:623) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:197) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.AccessLogBotFilter.doFilter(AccessLogBotFilter.java:35) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:108) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:91) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:94) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:111) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:185) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:354) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:267) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.multipart.support.MultipartFilter.doFilterInternal(MultipartFilter.java:125) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:352) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:117) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:164) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.portals.cae.security.filters.ReverseProxyFilter.doHttpRequestFilter(ReverseProxyFilter.java:219) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLoginFilter.doHttpRequestFilter(SsoLoginFilter.java:82) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.UserAgentAuthenticationFilter.doHttpRequestFilter(UserAgentAuthenticationFilter.java:65) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2WebSsoAuthenticationRequestFilter.doFilterInternal(Saml2WebSsoAuthenticationRequestFilter.java:187) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at com.haufe.springsso.filters.SsoLogoutFilter.filterAnonymousUser(SsoLogoutFilter.java:163) at com.haufe.springsso.filters.SsoLogoutFilter.doHttpRequestFilter(SsoLogoutFilter.java:106) at com.haufe.springsso.filters.AbstractHttpRequestFilter.doFilter(AbstractHttpRequestFilter.java:40) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutResponseFilter.doFilterInternal(Saml2LogoutResponseFilter.java:98) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.authentication.logout.Saml2LogoutRequestFilter.doFilterInternal(Saml2LogoutRequestFilter.java:106) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.saml2.provider.service.web.Saml2MetadataFilter.doFilterInternal(Saml2MetadataFilter.java:86) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:361) at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:225) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:190) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doHttpRequestFilter(MappedDiagnosticContextInjectionFilter.java:65) at com.haufe.portals.cae.servletfilter.MappedDiagnosticContextInjectionFilter.doFilter(MappedDiagnosticContextInjectionFilter.java:54) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at com.haufe.portals.cae.servletfilter.LogAndSuppressRequestRejectedExceptionFilter.doFilter(LogAndSuppressRequestRejectedExceptionFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:142) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:88) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:90) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:72) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:653) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:763) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:398) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1833) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: com.coremedia.objectserver.view.ViewException: Error rendering view at com.coremedia.objectserver.view.ViewUtils.rethrow(ViewUtils.java:344) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:154) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) ... 211 more Caused by: freemarker.core._MiscTemplateException: Macro "message" has no parameter with name "htmlEscape". Valid parameter names are: code ---- FTL stack trace ("~" means nesting-related): - Failed at: @spring.message code="page.pagination... [in template "WEB-INF/templates/com.haufe.portals.contentbeans.text/News.detailViewV2.ftl" at line 76, column 35] ---- at freemarker.core.Environment.newUndeclaredParamNameException(Environment.java:1152) at freemarker.core.Environment.setMacroContextLocalsFromArguments(Environment.java:1032) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:868) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visit(Environment.java:407) at freemarker.core.BlockAssignment.accept(BlockAssignment.java:55) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingBaseView.render(ViewDecoratorBase.java:346) at com.coremedia.objectserver.view.ViewDecoratorBase$DecoratingServletAndTextView.render(ViewDecoratorBase.java:428) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:184) at com.coremedia.objectserver.view.ViewUtils.render(ViewUtils.java:124) at com.coremedia.objectserver.view.freemarker.impl.CAEFreemarkerFacadeImpl.include(CAEFreemarkerFacadeImpl.java:159) at jdk.internal.reflect.GeneratedMethodAccessor131.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1634) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:73) at freemarker.core.MethodCall._eval(MethodCall.java:62) at freemarker.core.Expression.eval(Expression.java:101) at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104) at freemarker.core.DollarVariable.accept(DollarVariable.java:63) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.visitAndTransform(Environment.java:511) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:42) at freemarker.core.Environment.visit(Environment.java:380) at freemarker.core.Environment.invokeMacroOrFunctionCommonPart(Environment.java:886) at freemarker.core.Environment.invokeMacro(Environment.java:822) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:344) at freemarker.core.Environment.visit(Environment.java:350) at freemarker.core.Environment.process(Environment.java:323) at com.coremedia.objectserver.view.freemarker.FreemarkerViewEngine$FreemarkerView.render(FreemarkerViewEngine.java:150) ... 221 more