[BLOSSOM-261] SiteAwareFreemarkerRenderer referenced, but removed in site module Created: 02/Apr/20  Updated: 11/May/20  Resolved: 16/Apr/20

Status: Closed
Project: Blossom
Component/s: None
Affects Version/s: 3.3.1
Fix Version/s: 3.4

Type: Bug Priority: Neutral
Reporter: Oliver Böhrs Assignee: Mikaël Geljić
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 0d
Time Spent: 1d 5.5h
Original Estimate: Not Specified

Issue Links:
Relates
relates to BLOSSOM-267 Harmonize the definition logging for ... Closed
causality
caused by MGNLSITE-97 Missing artifact magnolia-external-de... Closed
dependency
depends upon MGNLSITE-99 Let SiteAwareRendererWrapper wrap a r... Closed
is depended upon by BLOSSOM-265 DOC: Update Blossom release page for ... Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Release notes required:
Yes
Date of First Response:
Sprint: 6.2.1 Ramp-up 21, 6.2.1 Ramp-up 22
Story Points: 5

 Description   

got this exception when starting magnolia 6.2:

 

 

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'freemarkerTemplateViewRenderer' defined in class path resource [blossom-servlet.xml]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: info/magnolia/module/site/renderer/SiteAwareFreemarkerRenderer

 

SiteAwareFreemarkerRenderer was removed in the site module 1.3

 

 

info.magnolia.module.blossom.view.SiteAwareFreemarkerTemplateViewRenderer

still extends SiteAwareFreemarkerRenderer

 

which is referenced in the bean

info.magnolia.module.blossom.view.SiteAwareFreemarkerTemplateViewRendererFactoryBean

 

 



 Comments   
Comment by Mikaël Geljić [ 06/May/20 ]

Copying here the relevant bits from the PR description too:

We replaced usage of deprecated removed SiteAwareFreemarkerRenderer extension with the equivalent site-aware wrapper.

  • SiteAwareFreemarkerTemplateViewRenderer is now deprecated, now equivalent to the FreemarkerTemplateViewRenderer and kept only for backward compatibility. Use SiteAwareFreemarkerTemplateViewRendererFactoryBean instead.
  • The FactoryBean does the wrapping of FreemarkerTemplateViewRenderer with SiteAwareRendererWrapper and generalizes its generic typing to the Renderer interface.
  • Similarly for non site-aware FreemarkerTemplateViewRenderer, it must now be registered by its respective factory-bean FreemarkerTemplateViewRendererFactoryBean. Its constructor now injects Magnolia's FreemarkerHelper and RenderingEngine, and we don't expose these to Spring by default.
Comment by Richard Gange [ 11/May/20 ]

Do you think it's possible that removing the methods inherited from SiteAwareFreemarkerRenderer could cause a problem for someone?

  • protected Site getSite(Node node)
  • protected Node wrapNodeForModel(Node content)
  • protected Node wrapWithHTMLEscapingWrapper(Node content)
Generated at Sun Feb 11 23:31:44 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.