It is for my own usage of a component that I wanted on my project. It could be useful to other people, but it is very specific to a few libraries and therefore not a good candidate for any of them due to dependencies.
My custom view handler on my project is to implement a new component: UIInclude It is a combination of functionality from Facelets, Seam and Trinidad. It is a component with a component tag handler that has a viewId property. This viewId is used in the tag handler to include a facelet on apply. It also uses the Seam Pages functionality to apply action and security based on included views (instead of just the view root). The view handler uses a custom UIViewRoot object to change the reported view ID in getViewId when currently inside of the UIInclude. So for example, if a.xhtml includes b.xhtml, components inside of b.xhtml that request the view ID will get "/b.xhtml" returned instead of "/a.xhtml". The view handler also forces navigation of the include instead of the outer view. So in this example, b.xhtml will be navigated instead of a.xhtml (the root). It also supports relative view IDs. So in my example, the navigation could navigate to ":/c.xhtml" In this example, the root would be changed to c.xhtml instead of the include. By this same functionality, "::myOtherInclude/d.xhtml" would allow one include to navigate the contents of another include. The component also uses partial rendering support from Trinidad. Since the code requires Facelets, Seam and Trinidad, I don't see a way of integrating into any of the libraries without a lot of work and would have to be put into jsf-comp or some other project where ASF-JBoss conflicts do not exist. As a result, I am keeping this to my own project at the moment. On 9/4/07, Danny Robinson <[EMAIL PROTECTED]> wrote: > Andrew, > > Can you provide an example of what you've done in your custom VH? > > Thanks, > > Danny > > > On 9/4/07, Andrew Robinson < [EMAIL PROTECTED]> wrote: > > Okay thanks, I already have my own custom view handler, so I should be > > able to handle the problem in it. I haven't switched to 1.2 yet as I > > don't yet feel that MyFaces 1.2 is stable enough for me yet and > > Trinidad 1.2.x is lagging behind 1.0.x and I am using functionality in > > 1.0.3. > > > > -Andrew > > > > On 9/4/07, Adam Winer <[EMAIL PROTECTED]> wrote: > > > View expiry generally stinks in JSF 1.1; in 1.2, there's > > > a ViewExpiredException, so the user should currently > > > see an alert. That's not great - ideally, the main page > > > would refresh or redirect automatically. > > > > > > I'm disinclined to tackle view expiry in JSF 1.1, as it's > > > generally just badly broken there. > > > > > > -- Adam > > > > > > > > > On 8/31/07, Andrew Robinson <[EMAIL PROTECTED]> wrote: > > > > Correct me if I am wrong, but it seems that if a view has expired, and > > > > someone initiates a partial update, the page is just updated as if it > > > > hadn't. This is quite confusing to the user as nothing happens when > > > > they click on a link. > > > > > > > > What I would like to have happen, is the user redirected to the > > > > requested view and be able to add a FacesMessage stating that the view > > > > had expired. > > > > > > > > Has anyone done this or is it built in somewhere and I have just > missed it? > > > > > > > > Example: > > > > > > > > Go to the trinidad demo, go into the component demo. Walk away from it > > > > for a while. Click one of the links (like the component demo link). > > > > Nothing happens. A second click works (since now the user has a view > > > > in the back-end). > > > > > > > > Thanks, > > > > Andrew > > > > > > > > > > > > > -- > Chordiant Software Inc. > www.chordiant.com

