It would be useful if FacesViews supported the following:
This rather useful feature is in Apache HTTPD+PHP world known as "MultiViews".
#20: Add MultiViews support to FacesViews and path parameters to @Param
MultiViews support is added. It's basically a matter of suffixing the org.omnifaces.FACES_VIEWS_SCAN_PATHS value with /* like so
The path parameters are due to technical limitations unfortunately not available by request.getPathInfo() (as JSF itself internally uses it). But @Param has been enhanced to support injecting path parameters via new @Param(pathIndex) attribute.
Given an URL of http://example.com/context/foo/bar/baz on which neither /foo/bar/baz.xhtml nor /foo/bar.xhtml exist but /foo.xhtml does exist will forward to /foo.xhtml and path parameters are injectable in associated managed bean as below
private String bar;
private String baz;
@Param built-in conversion/validation is also supported on them.
#20 fix javadoc error
#20 Use FacesViews#getPathInfo() utility
#20 Clarified javadoc to state that MultiViews was added in 2.5
#20 overlooked context path in welcome file redirect
#20 Make MultiViews compatible with welcome files on root path