I have been using the actionErrors and actionMessage features of Struts2 for some time and they have worked well for providing user feedback, (e.g.; "Business Center deleted successfully", "User already exists with this ID", etc.). I add the error or the message in the action class like so:
public String add() throws Exception { try { service.addUser(user); users = service.getAllUsers(); } catch(PersistenceExistsException ee) { addActionError(getText("user.alreadyExists")); return Action.INPUT; } catch(PersistenceNotFoundException nfe) { this.addActionError(getText("global.unableToProcessRequest")); return Action.INPUT; } addActionMessage(getText("user.addSuccess")); return SUCCESS; } This had the effect of deleting a user, refreshing the list of all users, and sending a success message if all went well. If something went wrong, a descriptive error would be displayed just above the list of users. It worked well until I began to incorporate the AJAX tags into the mix. I use a s:div to display the list of users: <tr> <td colspan="2"> <s:div id="users" theme="ajax" href="userAdmin.do" listenTopics="delete" >loading...</s:div> </td> </tr> The JSP fragment that is returned to this div contains the list of users. This also worked well. But the JSP also contains the actionError and actionMessage tags: <tr> <td colspan="4" class="PageStatus"> <font color="#FF0000"><s:actionerror/></font> </td> </tr> <tr> <td colspan="4" class="PageStatus"> <font color="#00FF00"><s:actionmessage/></font> </td> </tr> The problem is that these tags are never populated while using the AJAX feature. Neither errors nor messages are displayed at any time. If I use the same url that the s:div tag uses, and key it into the browser address, the row is added or deleted and the message displays correctly, (using the exact same jsp). When I use an ajax link: <s:url id="removeUrl" action="removeUser"> <s:param name="userId" value="userId" /> </s:url> <s:a href="%{removeUrl}" theme="ajax" notifyTopics="delete" ><s:text name="global.delete"/></s:a> the correct user is deleted, the div is refreshed with the new list of users, but no message displays. Are the message tags handled differently when using AJAX? -- View this message in context: http://www.nabble.com/Mixing-Struts2-ajax-functions-with-actionErrors-and-actionMessages-tf3222408.html#a8950048 Sent from the Struts - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]