[MAGNOLIA-5752] ServletDispatchingFilter fails with NPE if mappings are missing Created: 24/Apr/14  Updated: 09/Jul/14  Resolved: 03/Jul/14

Status: Closed
Project: Magnolia
Component/s: core
Affects Version/s: 4.5.19, 5.2.5, 5.3
Fix Version/s: 4.5.21, 5.2.6, 5.3.1

Type: Bug Priority: Critical
Reporter: Richard Unger Assignee: Karel Nedoma
Resolution: Fixed Votes: 0
Labels: quickwin, support
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

LFRZ


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
Date of First Response:

 Description   

If you delete the "mappings" node for a ServletDispatchingFilter, the filter chain fails with NPE and the instance becomes unusable (requires rescue procedure or reinstall).

--> a check should be implemented and the filter simply disabled if the mappings are missing. The instance should remain useable.

java.lang.NullPointerException
	info.magnolia.cms.filters.ServletDispatchingFilter$WrappedRequest.<init>(ServletDispatchingFilter.java:188)
	info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:126)
	info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
	info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
	info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
	info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
	info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
	info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:129)
	info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
	info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:80)
	info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
	info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:89)
	info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:106)
	info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:66)
	info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:107)
	info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:93)


 Comments   
Comment by Karel Nedoma [ 03/Jul/14 ]

If you delete mappings for ServletDispatchingFilter magnolia stays useable.
Only mappings for AdminCentral still make magnolia unusable.

Comment by Christoph Meier [ 03/Jul/14 ]

Review:
Format code according to Magnolia "style" in ServletDispatchingFilter , Mapping

Generated at Mon Feb 12 04:08:03 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.