If You use image buttons for different actions (using ImageButtonBean) one ActionClass can be used for different actions.
In your JSP
<html:form action="/ManageAction">
<html:image property="saveButton" src="logonsubmit.jpg" alt="save" />
<html:image property="deleteButton" src="deletesubmit.jpg" alt="delete" />
</html:form>
In your ActionForm
private ImageButtonBean saveButton = new ImageButtonBean();
private ImageButtonBean deleteButton = new ImageButtonBean();
public void setSaveButton(ImageButtonBean button) {
this.saveButton = button;
}
public ImageButtonBean getSaveButton() {
return this.saveButton;
}
public void setDeleteButton(ImageButtonBean button) {
this.deleteButton = button;
}
public ImageButtonBean getDeleteButton() {
return this.deleteButton;
}
public
String getSelected() {
if (getSaveButton().isSelected()) {
return "save";
}
if (getDeleteButton().isSelected()) {
return "delete";
}
return null;
}
In your ActionClass
String selected = manageForm.getSelected();
if ("save".equals(selected)) {
//do something
return forward = mapping.findForward("savethankyou");
}
else if ("delete".equals(selected)) {
//do something
forward = mapping.findForward("deletethankyou");
}
else{
forward = mapping.findForward("error");
}
in your struts-config.xml
<form-bean name="manageForm" type="your.package.forms.ManageForm">
</form-bean>
<action name="manageForm" path="/ManageAction" scope="request" type="your.package.actions.ManageAction" validate="false" >
<forward name="deletethankyou" path="/deletethankyou.jsp"/>
<forward name="savethankyou" path="/savethankyou.jsp"/>
<forward name="error" path="/error.jsp"/>
</action>
[ July 27, 2005: Message edited by: rangababu chakravarthula ]