>Hi Gary,
>
>you mean, the <component jsfid="/symbols/page1.xml" extends="basePage">
>defines the "name" like in tiles.def. So i have to forward to
>"symbols/page1.xml" in order to address the "clay" page???
>

That's correct but I think it's important to distinguish the view from a 
subview.  In JSF, the component tree that defines a page is identified by a 
view id.  The view id is derived from the URI of the target resource.  For Clay 
pages that do not use JSP, the view root should be suffixed with .html or *xml. 
 The third symbols example page in the usecases, /symbols/page3.html, shows 
using html as the entry point.  

There are a couple of things that have to be put in place to make this work.  
Notice in the web.xml for the usecase example, the faces servlet is mapped to 
*.faces, *.xml and *.html.  

Full html and xml views have to be dispatched thru the faces servlet.  The 
second thing is the view type has to be captured before the faces servlet 
handles it.  In the \WEB-INF\chain-config.xml you need to register the clay 
view handler command.

<!-- This command is only needed for full clay html views with myfaces  -->
<command      className="org.apache.shale.clay.faces.ClayViewHandlerCommand" />

>Btw: i saw a lot of naming with "$" like symbols$xyz without getting the
>point on this.
>

Clay full html and xml views use the same convention for mapping a view id to a 
view controller.  The default mapper replaces "/" with "$".  So, the 
ViewController would need to be registered with a managed bean name of 
"symbols$xyz" if the page entry point was "/symbols/xyz".  You can find more on 
the view controller here: 
http://struts.apache.org/struts-shale/features-view-controller.html  

>Sorry for these newbie questions!!!
>
>Timo

Gary

Reply via email to