The more accurate name for "XSD" is "XML Schema". And I would have found it surprising that JSF 2.2 would have dropped this feature, but I'm wondering if it actually has or if it simply tightened up the schema definition. I'm too lazy to check at the moment, though. :)
You are attempting to navigate to a webapp
resource. That is, an ".xhtml" file. Unless I've gotten my wits more scrambled than usual, that shouldn't have ever worked, because JSF navigates to a (app-relative)
URL.
Resource paths and URL paths look a lot alike, since they have similar syntax rules. However, a URL works when you type it in a browser and a resource path does not. If I type in a resource path of "/images/smile.jpg" in a browser, what I'm actually typing in is a URL path of "/images.jpg", but the webapp scans that URL and routes it to the default
servlet which converts the URL path to an identical resource path, opens the resource and copies its contents to the response stream. I could have just as easily have defined a servlet and mapped it to the URL
pattern "/images/*", then made that servlet construct random images on the fly.
So, in other words, a more proper rule would look like this:
Which I believe can be further truncated to this in JSF 2.0 and later:
That's owing to the navigation enhancements that will add missing components as well as support direct navigation from an action method's return value without an explicit faces-config mapping.
As I said, this is a JSF application-relative URL, so use of navigation rules doesn't work to navigate to non-JSF URLs, whether it's within the current webapp or to any external webapp (JSF or otherwise).