Action form example
public class AddressForm extends ActionForm
{
private String name=null;
private String address=null;
private String emailAddress=null;
public void setName(String name){
this.name=name;
}
public String getName(){
return this.name;
}
public void setAddress(String address){
this.address=address;
}
public String getAddress(){
return this.address;
}
public void setEmailAddress(String emailAddress){
this.emailAddress=emailAddress;
}
public String getEmailAddress(){
return this.emailAddress;
}
If you pay attention in action form you have to write the set and get of every attribute
AddressAction.java
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class AddressAction extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
return mapping.findForward("success");
}
}
Now, Dynaform
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.ActionMessage;
public class AddressDynaAction extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
DynaActionForm addressForm = (DynaActionForm)form;
//Create object of ActionMesssages
ActionMessages errors = new ActionMessages();
//Check and collect errors
if(((String)addressForm.get("name")).equals("")) {
errors.add("name",new ActionMessage("error.name.required"));
}
if(((String)addressForm.get("address")).equals("")) {
errors.add("address",new ActionMessage("error.address.required"));
}
if(((String)addressForm.get("email")).equals("")) {
errors.add("email",new ActionMessage("error.emailaddress.required"));
}
//Saves the error
saveErrors(request,errors);
//Forward the page
if(errors.isEmpty()){
return mapping.findForward("success");
}else{
return mapping.findForward("invalid");
}
}
}