Hello, we have implemented last year such a "pull" system (in Visual Foxpro) where the following is done: 1. On the templates we define what BO are required 2. The UI manager then parses the templates and instanciates those BO as specified in the template 3. Next the Action is executed against the primary BO (the one first specified in the template) 4. At this point the system can specify a new template (for error display etc.) 5. Then the templates are processed as it would in Velocity/Webmacro etc. The main differences from Turbine are: - BO are instanciated as specified on a template !!!! - The first BO instanciated is the primary BO, and only this one (should) processes Actions/Data-modifications We have found the following advantages with this approach: - When a reasonable set of BO is created, you can almost do anything, just by simply put them on the templates - You don't need a class/BO for each screen - It is very flexible in the way you can link templates/screens The main disadvantages: - You must take care on the parameters/actions you pass to the next templates (But this you have always to take care of) To avoid (or at least simplify) this problem we are looking if having XML templates, describing all possible actions/properties of each BO, so you can just "drag" them on the templates you need. We are actually not sure if this approach will improve maintenance and overall template design... Andre. >>> [EMAIL PROTECTED] 04.01.2001 07:50:07 >>> (Please send responses to the Turbine mailing list.) Hi all, So, I'm working through implementing the pull model within the Scarab application and I have run into a tiny snag. Essentially, the issue is that I am using the screen/Default.java to populate the Context with my business object(s) (BO). The problem with this is that Action's within Turbine are executed before a Screen is executed. Therefore, my BO is not available to me in the Action because the Screen hasn't been executed first. I want my Action to be able to access this BO because it should have the ability to stuff information into it in order to do things like re-display data on a page based on information stored in the User's temporary storage (ie: User.setTemp()). I could probably work around this by finding another place to insert the BO earlier on in the chain of execution (maybe in the SessionValidator or Page level of the application with a custom Page). I could also work with Velocity to make a Context object system that auto populates itself, however, I think that this functionality should be somewhere within Turbine instead of Velocity because we would want to make it generic enough to work in other systems like WebMacro. What do you all think that I should do? (Please send responses to the Turbine mailing list.) -jon ------------------------------------------------------------ To subscribe: [EMAIL PROTECTED] To unsubscribe: [EMAIL PROTECTED] Search: <http://www.mail-archive.com/turbine%40list.working-dogs.com/> Problems?: [EMAIL PROTECTED] ------------------------------------------------------------ To subscribe: [EMAIL PROTECTED] To unsubscribe: [EMAIL PROTECTED] Search: <http://www.mail-archive.com/turbine%40list.working-dogs.com/> Problems?: [EMAIL PROTECTED]
