Since I always seem to be asking questions and receiving help, I thought I 
would let you know how I finally solved this problem.

What was wrong was in the naming of my jsps (the view-ids). I changed my 
faces-config.xml from:
<navigation-case>
        <from-outcome>loggedOff</from-outcome>
        <to-view-id>/failure.jsp</to-view-id>
</navigation-case>

to

<navigation-case>
        <from-outcome>loggedOff</from-outcome>
        <to-view-id>/logon.jsp</to-view-id>
</navigation-case>

The rules for "registration" of the backing bean to a jsp/view-id are 
given in detail in the javadocs for ViewController: 
http://people.apache.org/~craigmcc/shale-core-javadocs/. Also, there are 
examples in DefaultControllerMapper.java in the source. For example, I 
have a managed bean called logon and hence setting the view-id as 
/logon.jsp marries them together.. (I hope I've got that right!).

Clearly, unless the naming rules are strictly followed (see gory details 
again in DefaultViewControllerMapper.java), Shale cannot be expected to 
satisfy its contract. 

So, I guess as always, the rule is: read the documentation. And if that 
doesn't help, read the code..:)
Regards,
Geeta

Reply via email to