atom feed9 messages in org.apache.struts.userRe: [SHALE] prerender() never called..?
FromSent OnAttachments
Bjørn T JohansenAug 28, 2005 12:53 pm 
Craig McClanahanAug 28, 2005 3:15 pm 
Bjørn T JohansenAug 28, 2005 3:35 pm 
Craig McClanahanAug 28, 2005 3:52 pm 
Bjørn T JohansenAug 28, 2005 11:38 pm 
Wendy SmoakAug 28, 2005 11:44 pm 
Craig McClanahanAug 28, 2005 11:54 pm 
Bjørn T JohansenAug 29, 2005 12:12 am 
Bjørn T JohansenAug 29, 2005 12:29 am 
Subject:Re: [SHALE] prerender() never called..?
From:Craig McClanahan (crai@gmail.com)
Date:Aug 28, 2005 3:52:11 pm
List:org.apache.struts.user

On 8/28/05, Bjørn T Johansen <bt@havleik.no> wrote:

Ok, that I did not know...

Tonight's nightly build will include Javadocs for ViewController that make this requirement much more explicit -- you're not the first person to run into it.

But now I have changed the name of my managed bean to correspond to this naming scheme, but still no methods is called...? Am I missing more...?

Without more details about what you're doing, it's impossible to tell what is going wrong -- but one thing you should *not* be worrying about is explicitly declaring the Shale ViewController. That happens automatically when shale-core.jar is included in your webapp.

Does the "use cases" example app work for you?

BTJ

Craig

On 8/28/05, Bjørn T Johansen <bt@havleik.no> wrote:

I have a managed bean that implements ViewController and I also have changed the view-handler to ShaleViewHandler, but none of the methods in the ViewController
is called... What am I missing?

The most common cause for this is having a managed bean name (for your ViewController) that does not match the name mapping rules that Shale requires. There is a pluggable interface for this, but the default rules take a context relative view id, and convert it to a corresponding managed bean name like this: * Strip the leading "/" character * Strip the trailing ".jsp" (or whatever) extension * Convert any remaining "/" characters to "$" characters.

Thus, if you have a view named "/mainmenu.jsp", the corresponding view controller managed bean *must* be named "mainmenu". Likewise, a vew named "/customer/details.jsp" would be mapped to managed bean name "customer$details".

Craig