When FacesServlet is mapped to /* or invoked via forwarding where other servlet has this mapping, the view processing never terminates as it is stuck in while loop in MultiViewHandler.normalizeRequestURI. mapping is "" in this case and therefore loop condition is always true and the viewId never changes.
To Reproduce
Steps to reproduce the behavior:
Set mapping of facesServlet to /*
Make a request to a view
Observe infinite loop
Expected behavior
Request processing should terminate. Given that /* is rare but valid entry, it shouldn't try any normalization
Additional context
Will provide PR for version 4, master is not buildable at this time.
Describe the bug
When FacesServlet is mapped to
/*
or invoked via forwarding where other servlet has this mapping, the view processing never terminates as it is stuck inwhile
loop inMultiViewHandler.normalizeRequestURI
.mapping
is""
in this case and therefore loop condition is always true and theviewId
never changes.To Reproduce
Steps to reproduce the behavior:
facesServlet
to/*
Expected behavior
Request processing should terminate. Given that
/*
is rare but valid entry, it shouldn't try any normalizationAdditional context
Will provide PR for version 4, master is not buildable at this time.