I checked again and in fact the messages of the FIRST action in the chain which implements
public void setActionMessages(Collection messages) { m_actionMessages = messages; } public Collection getActionMessages() { return m_actionMessages; } will get displayed via <ww:iterator value="actionMessages"> <ww:property/> </ww:iterator> only if the SECOND action does likewise implement the above actionMessages property, i.e. setActionMessages(...) and getActionMessages(). I had a rather quick and casual look into the source of ChainingInterceptor and then OgnlUtil. While being a total newbie to OGNL it seems as if the action itself is not pushed onto te stack but rather its properties are copied to corresponding properties of the second action: In ChainingInterceptor: protected void before(ActionInvocation invocation) throws Exception { OgnlValueStack stack = invocation.getStack(); CompoundRoot root = stack.getRoot(); Iterator iterator = root.iterator(); iterator.next(); while(iterator.hasNext()) { Object o = iterator.next(); OgnlUtil.copy(o, invocation.getAction(), ActionContext.getContext().getContextMap()); } } In OgnlUtil: public static void copy(Object from, Object to, Map context) { Map contextFrom = Ognl.createDefaultContext(from); Ognl.setTypeConverter(contextFrom, XWorkConverter.getInstance()); Map contextTo = Ognl.createDefaultContext(to); Ognl.setTypeConverter(contextTo, XWorkConverter.getInstance()); BeanInfo beanInfoFrom = null; try { beanInfoFrom = Introspector.getBeanInfo(from.getClass(), Object.class); } catch (IntrospectionException e) { log.error("An error occured", e); return; } PropertyDescriptor[] pds = beanInfoFrom.getPropertyDescriptors(); for (int i = 0; i < pds.length; i++) { PropertyDescriptor pd = pds[i]; try { Object expr = compile(pd.getName()); Object value = Ognl.getValue(expr, contextFrom, from); Ognl.setValue(expr, contextTo, to, value); } catch (OgnlException e) { // ignore, this is OK } } } If this qualifies as a bug I will register one with Jira. > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of > Jason Carreira > Sent: Thursday, November 13, 2003 2:13 PM > To: [EMAIL PROTECTED] > Subject: RE: [OS-webwork] [WW2] How to pass action properties in chained > actions > > > The first action SHOULD be on the stack and be available for the view > page... If it's not, please log a bug in Jira. > > > -----Original Message----- > > From: Olaf Bergner [mailto:[EMAIL PROTECTED] > > Sent: Thursday, November 13, 2003 7:40 AM > > To: [EMAIL PROTECTED] > > Subject: RE: [OS-webwork] [WW2] How to pass action properties > > in chained actions > > > > > > No, I think it's really a case of chained actions. I have one > > action that get's called every time the "user form" is > > displayed in order to populate it with the pertinent > > information, i.e. the list of all users. I have got some > > other actions that handle deleting, creating and editing > > users. So if a user is deleted my app will call > > "DeleteUserAction" which deletes the user, puts a message > > stating "User Bond, James was successfully removed from our > > database." onto the property stack (is that correct ww2 > > lingo?) and transfers control to the "GotoUserMainFormAction" > > which reads the updated user list from the db and dispatches > > to "userMainForm.jsp". Obviously I will want the message > > issued by "DeleteUserAction" preserved along the action chain. > > > > Anyhow, the ChainingInterceptor does the trick quite nicely. > > One minor issue that is left is that in > > "GotoUserMainFormAction" I have to implement a corresponding > > property "actionMessages" if I want these messages displayed > > on the result page. Is this how the ChainingInterceptor > > works, i.e. it transfers those properties that are also > > present in the second action from the first action to said > > second action? From the paragraph in the docs I would have > > guessed that the first action is preserved on the stack and > > any of its properties will be accessible as long as they > > won't be hidden by properties of the second action. ------------------------------------------------------- This SF.Net email sponsored by: ApacheCon 2003, 16-19 November in Las Vegas. Learn firsthand the latest developments in Apache, PHP, Perl, XML, Java, MySQL, WebDAV, and more! http://www.apachecon.com/ _______________________________________________ Opensymphony-webwork mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork