I'm excited about the potential behind pages.xml, but there seems to be limitations, especially with regards to the underlying JSF impl.
Chiefly, I've had no success in using a URL request path that does not map back to an existing view file. For example, take the request: "/article/seam-is-great". Assume it is mapped in pages.xml like so:
view-id="/article/*" action="#{articleHandler.handle}"
The action is responsible for loading the underlying article, AND selecting the appropriate view.
3 problems occur in response to this request path, and the action is never called:
08:29:41,710 ERROR [LifecycleImpl] Assumed extension mapping, but there is no extension in /article/seam-is-great
....
java.lang.NullPointerException
at org.jboss.seam.contexts.PageContext.getAttributeMap(PageContext.java:103)
at org.jboss.seam.contexts.PageContext.<init>(PageContext.java:40)
at org.jboss.seam.contexts.Lifecycle.resumePage(Lifecycle.java:323)
....
08:29:41,721 ERROR [PhaseListenerManager] Exception in PhaseListener RESTORE_VIEW(1) afterPhase
java.lang.NullPointerException
at org.apache.myfaces.renderkit.html.util.AutoScrollPhaseListener.afterPhase(AutoScrollPhaseListener.java:52)
at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:89)
at org.apache.myfaces.lifecycle.LifecycleImpl.restoreView(LifecycleImpl.java:181)
Thus the format of the (action) request path seems restricted by JSF conventions?
Ryan