0
votes

I have a jsf application with several facelets in context root and inside a subfolder of this context root. All of these facelets are derived from a template that resides in the context root and is called layout.xhtml.

I reference this template from all facelets with the following tag:

<ui:composition template="/layout.xhtml">

This works fine.

In my layout.xhtml I have a menu to move between the facelets. But navigation works only if link references look like:

<p:menuitem value="" url="/faces/user.xhtml" icon="/resources/images/cog_edit.png"/>

Of course, the faces servlet needs some "/faces/" in order to handle this request, however why does it work in ui:composition without "/faces".

Just to understand..

Thanks for your help.

1

1 Answers

0
votes

As I understand, the ui:composition attribute is simply pointing to the relative location of the template being used. While the navigation item needs the actual path, which you have set as including "/faces/".