You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2018/03/16 06:46:50 UTC

[struts-examples] branch master updated (6a22bb1 -> 13701b0)

This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/struts-examples.git.


    from 6a22bb1  Reformats code
     new ff020f0  Reformats code
     new f119c76  Reformats code
     new 13701b0  Adds example with int range validation

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/struts/edit/action/EditAction.java  | 129 ++++++++----------
 .../java/org/apache/struts/edit/model/Person.java  | 144 ++++++++++-----------
 .../java/org/apache/struts/edit/model/State.java   |  63 +++++----
 .../apache/struts/edit/service/EditService.java    |   7 +-
 .../struts/edit/service/EditServiceInMemory.java   |  83 ++++++------
 .../struts/edit/action/EditAction-validation.xml   |  70 +++++-----
 .../struts/edit/action/EditAction.properties       |   4 +-
 .../src/main/webapp/WEB-INF/web.xml                |  27 ++--
 form-xml-validation/src/main/webapp/edit.jsp       |   1 +
 9 files changed, 249 insertions(+), 279 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
lukaszlenart@apache.org.

[struts-examples] 02/03: Reformats code

Posted by lu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/struts-examples.git

commit f119c76a0bc65fef6edd0ea253b74f8a6bd3bfaa
Author: Lukasz Lenart <lu...@apache.org>
AuthorDate: Fri Mar 16 07:30:03 2018 +0100

    Reformats code
---
 .../src/main/webapp/WEB-INF/web.xml                | 27 +++++++++++-----------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/form-xml-validation/src/main/webapp/WEB-INF/web.xml b/form-xml-validation/src/main/webapp/WEB-INF/web.xml
index fe966a8..2784719 100644
--- a/form-xml-validation/src/main/webapp/WEB-INF/web.xml
+++ b/form-xml-validation/src/main/webapp/WEB-INF/web.xml
@@ -1,19 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-<display-name>Form XML Validation</display-name>
+<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+  <display-name>Form XML Validation</display-name>
   <welcome-file-list>
     <welcome-file>index.jsp</welcome-file>
   </welcome-file-list>
-  
-  					 
-    <filter>
-        <filter-name>struts2</filter-name>
-        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
-    </filter>
 
-     <filter-mapping>
-        <filter-name>struts2</filter-name>
-        <url-pattern>/*</url-pattern>
-    </filter-mapping>
-    
+  <filter>
+    <filter-name>struts2</filter-name>
+    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
+  </filter>
+
+  <filter-mapping>
+    <filter-name>struts2</filter-name>
+    <url-pattern>/*</url-pattern>
+  </filter-mapping>
+
 </web-app>

-- 
To stop receiving notification emails like this one, please contact
lukaszlenart@apache.org.

[struts-examples] 03/03: Adds example with int range validation

Posted by lu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/struts-examples.git

commit 13701b087e9d2249566cfd191c543dacfa27d060
Author: Lukasz Lenart <lu...@apache.org>
AuthorDate: Fri Mar 16 07:45:44 2018 +0100

    Adds example with int range validation
---
 .../java/org/apache/struts/edit/model/Person.java  | 31 +++++++++++++++-------
 .../struts/edit/action/EditAction-validation.xml   | 24 ++++++++++++-----
 .../struts/edit/action/EditAction.properties       |  2 ++
 form-xml-validation/src/main/webapp/edit.jsp       |  1 +
 4 files changed, 42 insertions(+), 16 deletions(-)

diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java b/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
index 961ffe7..040b83c 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
@@ -16,6 +16,7 @@ public class Person {
     private String[] carModels;
     private String email;
     private String phoneNumber;
+    private Integer age;
 
     public String getFirstName() {
         return firstName;
@@ -89,16 +90,28 @@ public class Person {
         return phoneNumber;
     }
 
+    public Integer getAge() {
+        return age;
+    }
+
+    public void setAge(Integer age) {
+        this.age = age;
+    }
+
+    @Override
     public String toString() {
-        return "First Name: " + getFirstName() + " | " +
-                " Last Name:  " + getLastName() + " | " +
-                " Favorite Sport: " + getSport() + " | " +
-                " Gender: " + getGender() + " | " +
-                " Residency: " + getResidency() + " | " +
-                " Over 21: " + isOver21() + " | " +
-                " Car models: " + Arrays.asList(getCarModels()) + " | " +
-                " Email: " + getEmail() + " | " +
-                " Phone: " + getPhoneNumber();
+        return "Person{" +
+                "firstName='" + firstName + '\'' +
+                ", lastName='" + lastName + '\'' +
+                ", sport='" + sport + '\'' +
+                ", gender='" + gender + '\'' +
+                ", residency='" + residency + '\'' +
+                ", over21=" + over21 +
+                ", carModels=" + Arrays.toString(carModels) +
+                ", email='" + email + '\'' +
+                ", phoneNumber='" + phoneNumber + '\'' +
+                ", age=" + age +
+                '}';
     }
 
 }
diff --git a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
index 45799db..c372565 100644
--- a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
+++ b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
@@ -2,33 +2,43 @@
     "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
 <validators>
   <validator type="requiredstring">
-    <param name="fieldname">personBean.firstName</param>
+    <param name="fieldName">personBean.firstName</param>
     <message>First name is required.</message>
   </validator>
   <validator type="requiredstring">
-    <param name="fieldname">personBean.lastName</param>
+    <param name="fieldName">personBean.lastName</param>
     <message>Last name is required.</message>
   </validator>
   <validator type="requiredstring">
-    <param name="fieldname">personBean.email</param>
+    <param name="fieldName">personBean.email</param>
     <message>Email address is required.</message>
   </validator>
   <validator type="email">
-    <param name="fieldname">personBean.email</param>
+    <param name="fieldName">personBean.email</param>
     <message>Email address not valid.</message>
   </validator>
   <validator type="requiredstring">
-    <param name="fieldname">personBean.phoneNumber</param>
+    <param name="fieldName">personBean.phoneNumber</param>
     <message>Phone number is required.</message>
   </validator>
   <validator type="regex">
-    <param name="fieldname">personBean.phoneNumber</param>
+    <param name="fieldName">personBean.phoneNumber</param>
     <param name="regex"><![CDATA[\d{3}-\d{3}-\d{4}]]></param>
     <message>Phone number must be entered as 999-999-9999.</message>
   </validator>
   <validator type="fieldexpression">
-    <param name="fieldname">personBean.carModels</param>
+    <param name="fieldName">personBean.carModels</param>
     <param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
     <message>You must select at least one car model.</message>
   </validator>
+  <field name="personBean.age">
+    <field-validator type="required">
+      <message>${getText(fieldName)} is required.</message>
+    </field-validator>
+    <field-validator type="int">
+      <param name="min">1</param>
+      <param name="max">120</param>
+      <message key="age.error">${getText(fieldName)} must be from ${min} to ${max}</message>
+    </field-validator>
+  </field>
 </validators>
diff --git a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
index 61d425f..8d6a533 100644
--- a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
+++ b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
@@ -7,4 +7,6 @@ personBean.gender=Gender
 personBean.residency=State resident
 personBean.over21=21 or older
 personBean.carModels=Car models owned
+personBean.age=Age
+age.error=${getText(fieldName)}: must be from ${min} to ${max}
 submit=Save Changes
diff --git a/form-xml-validation/src/main/webapp/edit.jsp b/form-xml-validation/src/main/webapp/edit.jsp
index 67a9901..16f0ae9 100644
--- a/form-xml-validation/src/main/webapp/edit.jsp
+++ b/form-xml-validation/src/main/webapp/edit.jsp
@@ -18,6 +18,7 @@
 <s:textfield key="personBean.lastName" /> 
 <s:textfield key="personBean.email" />
 <s:textfield key="personBean.phoneNumber" />
+<s:textfield key="personBean.age" />
 <s:select key="personBean.sport" list="sports" />
 <s:radio key="personBean.gender" list="genders" />
 <s:select key="personBean.residency" list="states" listKey="stateAbbr" listValue="stateName" />

-- 
To stop receiving notification emails like this one, please contact
lukaszlenart@apache.org.

[struts-examples] 01/03: Reformats code

Posted by lu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/struts-examples.git

commit ff020f04a085b0ca1dedac702239f7673dfe6444
Author: Lukasz Lenart <lu...@apache.org>
AuthorDate: Fri Mar 16 07:14:53 2018 +0100

    Reformats code
---
 .../org/apache/struts/edit/action/EditAction.java  | 129 ++++++++-----------
 .../java/org/apache/struts/edit/model/Person.java  | 137 +++++++++------------
 .../java/org/apache/struts/edit/model/State.java   |  63 +++++-----
 .../apache/struts/edit/service/EditService.java    |   7 +-
 .../struts/edit/service/EditServiceInMemory.java   |  83 ++++++-------
 .../struts/edit/action/EditAction-validation.xml   |  60 ++++-----
 .../struts/edit/action/EditAction.properties       |   2 +-
 7 files changed, 212 insertions(+), 269 deletions(-)

diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/action/EditAction.java b/form-xml-validation/src/main/java/org/apache/struts/edit/action/EditAction.java
index 700b2f5..5d5c5ee 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/action/EditAction.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/action/EditAction.java
@@ -13,83 +13,60 @@ import java.util.List;
 /**
  * Acts as a controller to handle actions
  * related to editing a Person.
- * @author bruce phillips
- *
  */
 public class EditAction extends ActionSupport {
-	
-	private static final long serialVersionUID = 1L;
-	
-	private EditService editService = new EditServiceInMemory();
-	
-	private Person personBean;
-	
-	private String [] sports = {"football", "baseball", "basketball" };
-	
-	private String [] genders = {"male", "female", "not sure" };
-	
-	private List<State> states ;
-
-	private String [] carModelsAvailable = {"Ford","Chrysler","Toyota","Nissan"};
-
-	public String execute() throws Exception {
-		
-	    editService.savePerson( getPersonBean() );
-		
-		return SUCCESS;
-		
-	}
-	
-	
-	public String input() throws Exception {
-		
-		setPersonBean( editService.getPerson() );
-		
-		return INPUT;
-	}
-	
-	public Person getPersonBean() {
-		
-		
-		return personBean;
-		
-	}
-	
-	public void setPersonBean(Person person) {
-		
-		personBean = person;
-		
-	}
-
-
-	public List<String> getSports() {
-		return Arrays.asList(sports);
-	}
-	
-	public List<String> getGenders() {
-		
-		return Arrays.asList(genders);
-		
-	}
-
-
-
-	public List<State> getStates() {
-		
-		states = new ArrayList<State>();
-		states.add( new State("AZ", "Arizona") );
-		states.add( new State("CA", "California") );
-		states.add( new State("FL", "Florida") );
-		states.add( new State("KS", "Kansas") );
-		states.add( new State("NY", "New York") );
-		
-		return states;
-	}
-
-
-
-	public String [] getCarModelsAvailable() {
-		return carModelsAvailable;
-	}
+
+    private EditService editService = new EditServiceInMemory();
+
+    private Person personBean;
+
+    private String[] sports = {"football", "baseball", "basketball"};
+
+    private String[] genders = {"male", "female", "not sure"};
+
+    private List<State> states;
+
+    private String[] carModelsAvailable = {"Ford", "Chrysler", "Toyota", "Nissan"};
+
+    public String execute() throws Exception {
+        editService.savePerson(getPersonBean());
+        return SUCCESS;
+    }
+
+    public String input() throws Exception {
+        setPersonBean(editService.getPerson());
+        return INPUT;
+    }
+
+    public Person getPersonBean() {
+        return personBean;
+    }
+
+    public void setPersonBean(Person person) {
+        personBean = person;
+    }
+
+    public List<String> getSports() {
+        return Arrays.asList(sports);
+    }
+
+    public List<String> getGenders() {
+        return Arrays.asList(genders);
+    }
+
+    public List<State> getStates() {
+        states = new ArrayList<State>();
+        states.add(new State("AZ", "Arizona"));
+        states.add(new State("CA", "California"));
+        states.add(new State("FL", "Florida"));
+        states.add(new State("KS", "Kansas"));
+        states.add(new State("NY", "New York"));
+
+        return states;
+    }
+
+    public String[] getCarModelsAvailable() {
+        return carModelsAvailable;
+    }
 
 }
diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java b/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
index 2d127eb..961ffe7 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/model/Person.java
@@ -2,120 +2,103 @@ package org.apache.struts.edit.model;
 
 import java.util.Arrays;
 
-
-
 /**
  * Models a Person who registers.
- * @author bruce phillips
- *
  */
-public class Person
-{
+public class Person {
+
     private String firstName;
     private String lastName;
     private String sport;
     private String gender;
     private String residency;
     private boolean over21;
-    private String [] carModels;
+    private String[] carModels;
     private String email;
     private String phoneNumber;
-   
- 
 
-    public String getFirstName()
-    {
+    public String getFirstName() {
         return firstName;
     }
 
-    public void setFirstName(String firstName)
-    {
+    public void setFirstName(String firstName) {
         this.firstName = firstName;
     }
 
-    public String getLastName()
-    {
+    public String getLastName() {
         return lastName;
     }
 
-    public void setLastName(String lastName)
-    {
+    public void setLastName(String lastName) {
         this.lastName = lastName;
     }
 
+    public void setSport(String sport) {
+        this.sport = sport;
+    }
+
+    public void setGender(String gender) {
+        this.gender = gender;
+    }
 
+    public String getGender() {
+        return gender;
+    }
 
+    public String getSport() {
+        return sport;
+    }
 
-	public void setSport(String sport) {
-		this.sport = sport;
-	}
+    public void setResidency(String residency) {
+        this.residency = residency;
+    }
 
-	public void setGender(String gender) {
-		this.gender = gender;
-	}
+    public String getResidency() {
+        return residency;
+    }
 
-	public String getGender() {
-		return gender;
-	}
+    public void setOver21(boolean over21) {
+        this.over21 = over21;
+    }
 
-	public String getSport() {
-		return sport;
-	}
+    public boolean isOver21() {
+        return over21;
+    }
 
-	public void setResidency(String residency) {
-		this.residency = residency;
-	}
+    public void setCarModels(String[] carModels) {
+        this.carModels = carModels;
+    }
 
-	public String getResidency() {
-		return residency;
-	}
+    public String[] getCarModels() {
+        return carModels;
+    }
 
-	public void setOver21(boolean over21) {
-		this.over21 = over21;
-	}
+    public void setEmail(String email) {
+        this.email = email;
+    }
 
-	public boolean isOver21() {
-		return over21;
-	}
+    public String getEmail() {
+        return email;
+    }
 
-	public void setCarModels(String [] carModels) {
-		this.carModels = carModels;
-	}
+    public void setPhoneNumber(String phoneNumber) {
+        this.phoneNumber = phoneNumber;
+    }
 
-	public String [] getCarModels() {
-		return carModels;
-	}
+    public String getPhoneNumber() {
+        return phoneNumber;
+    }
 
-	public String toString()
-    {
+    public String toString() {
         return "First Name: " + getFirstName() + " | " +
-        " Last Name:  " + getLastName() + " | " +
-        " Favorite Sport: " + getSport() + " | " +
-        " Gender: " + getGender() + " | " +  
-        " Residency: " + getResidency() + " | " +
-        " Over 21: " + isOver21()  + " | " +
-        " Car models: " + Arrays.asList( getCarModels() ) + " | " +
-        " Email: " + getEmail() + " | " +
-        " Phone: " + getPhoneNumber();
-        
-        
-    }
-
-	public void setEmail(String email) {
-		this.email = email;
-	}
-
-	public String getEmail() {
-		return email;
-	}
-
-	public void setPhoneNumber(String phoneNumber) {
-		this.phoneNumber = phoneNumber;
-	}
-
-	public String getPhoneNumber() {
-		return phoneNumber;
-	}
-
+                " Last Name:  " + getLastName() + " | " +
+                " Favorite Sport: " + getSport() + " | " +
+                " Gender: " + getGender() + " | " +
+                " Residency: " + getResidency() + " | " +
+                " Over 21: " + isOver21() + " | " +
+                " Car models: " + Arrays.asList(getCarModels()) + " | " +
+                " Email: " + getEmail() + " | " +
+                " Phone: " + getPhoneNumber();
+    }
 
 }
diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/model/State.java b/form-xml-validation/src/main/java/org/apache/struts/edit/model/State.java
index bb927e1..2d973a9 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/model/State.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/model/State.java
@@ -1,39 +1,34 @@
 package org.apache.struts.edit.model;
 
 public class State {
-	
-	private String stateAbbr;
-	
-	private String stateName;
-	
-	public State (String stateAbbr, String stateName) {
-		
-		this.stateAbbr = stateAbbr;
-		this.stateName = stateName;
-		
-	}
-
-	public void setStateAbbr(String stateAbbr) {
-		this.stateAbbr = stateAbbr;
-	}
-
-	public String getStateAbbr() {
-		return stateAbbr;
-	}
-
-	public void setStateName(String stateName) {
-		this.stateName = stateName;
-	}
-
-	public String getStateName() {
-		return stateName;
-	}
-	
-	public String toString() {
-		
-		return getStateAbbr() ;
-		
-	}
-	
+
+    private String stateAbbr;
+
+    private String stateName;
+
+    public State(String stateAbbr, String stateName) {
+        this.stateAbbr = stateAbbr;
+        this.stateName = stateName;
+    }
+
+    public void setStateAbbr(String stateAbbr) {
+        this.stateAbbr = stateAbbr;
+    }
+
+    public String getStateAbbr() {
+        return stateAbbr;
+    }
+
+    public void setStateName(String stateName) {
+        this.stateName = stateName;
+    }
+
+    public String getStateName() {
+        return stateName;
+    }
+
+    public String toString() {
+        return getStateAbbr();
+    }
 
 }
diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditService.java b/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditService.java
index 79d759a..b32fb91 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditService.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditService.java
@@ -3,10 +3,9 @@ package org.apache.struts.edit.service;
 import org.apache.struts.edit.model.Person;
 
 public interface EditService {
-	
-	
-	Person getPerson() ;
 
-	void savePerson(Person personBean);
+    Person getPerson();
+
+    void savePerson(Person personBean);
 
 }
diff --git a/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java b/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java
index b0821fb..6bbf648 100644
--- a/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java
+++ b/form-xml-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java
@@ -1,60 +1,49 @@
 package org.apache.struts.edit.service;
 
-
-
 import org.apache.struts.edit.model.Person;
 
 /**
  * Implement Services needed to edit and save
  * a Person object's state.  In this implementation
  * the Person object's state is stored in memory
- * @author brucephillips
- *
  */
 
 public class EditServiceInMemory implements EditService {
-	
-	
-	private static Person person ;
-	private static String [] carModels = {"Ford","Nissan"};
-
-	
-	static {
-		
-		person = new Person();
-		person.setFirstName("Bruce");
-		person.setLastName("Phillips");
-		person.setEmail("bphillips@ku.edu");
-		person.setSport("basketball");
-		person.setGender("not sure");
-		person.setResidency("KS");
-		person.setOver21(true);		
-		person.setCarModels( carModels);	
-		person.setPhoneNumber("123-456-9999");
-
-		
-
-	}
-
-	
-	public Person getPerson() {
-		
-		return EditServiceInMemory.person;
-	}
-
-
-	public void savePerson(Person personBean) {
-
-		EditServiceInMemory.person.setFirstName(personBean.getFirstName() );
-		EditServiceInMemory.person.setLastName(personBean.getLastName() );
-		EditServiceInMemory.person.setSport(personBean.getSport() );
-		EditServiceInMemory.person.setGender( personBean.getGender() );
-		EditServiceInMemory.person.setResidency( personBean.getResidency() );
-		EditServiceInMemory.person.setOver21( personBean.isOver21() );
-		EditServiceInMemory.person.setCarModels(personBean.getCarModels() );
-		EditServiceInMemory.person.setEmail( personBean.getEmail() );
-		EditServiceInMemory.person.setPhoneNumber( personBean.getPhoneNumber() );
-
-	}
+
+    private static Person person;
+    private static String[] carModels = {"Ford", "Nissan"};
+
+    static {
+
+        person = new Person();
+        person.setFirstName("Bruce");
+        person.setLastName("Phillips");
+        person.setEmail("bphillips@ku.edu");
+        person.setSport("basketball");
+        person.setGender("not sure");
+        person.setResidency("KS");
+        person.setOver21(true);
+        person.setCarModels(carModels);
+        person.setPhoneNumber("123-456-9999");
+
+    }
+
+    public Person getPerson() {
+        return EditServiceInMemory.person;
+    }
+
+    public void savePerson(Person personBean) {
+
+        EditServiceInMemory.person.setFirstName(personBean.getFirstName());
+        EditServiceInMemory.person.setLastName(personBean.getLastName());
+        EditServiceInMemory.person.setSport(personBean.getSport());
+        EditServiceInMemory.person.setGender(personBean.getGender());
+        EditServiceInMemory.person.setResidency(personBean.getResidency());
+        EditServiceInMemory.person.setOver21(personBean.isOver21());
+        EditServiceInMemory.person.setCarModels(personBean.getCarModels());
+        EditServiceInMemory.person.setEmail(personBean.getEmail());
+        EditServiceInMemory.person.setPhoneNumber(personBean.getPhoneNumber());
+
+    }
 
 }
diff --git a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
index bb91b97..45799db 100644
--- a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
+++ b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction-validation.xml
@@ -1,34 +1,34 @@
 <!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
-		"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
+    "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">
 <validators>
- <validator type="requiredstring">
- 	<param name="fieldname">personBean.firstName</param>
- 	<message>First name is required.</message>
- </validator>
   <validator type="requiredstring">
- 	<param name="fieldname">personBean.lastName</param>
- 	<message>Last name is required.</message>
- </validator>
- <validator type="requiredstring">
- 	<param name="fieldname">personBean.email</param>
- 	<message>Email address is required.</message>
- </validator>
- <validator type="email">
- 	<param name="fieldname">personBean.email</param>
- 	<message>Email address not valid.</message>
- </validator>
- <validator type="requiredstring">
- 	<param name="fieldname">personBean.phoneNumber</param>
- 	<message>Phone number is required.</message>
- </validator>
-<validator type="regex">
-	<param name="fieldname">personBean.phoneNumber</param>
-	<param name="regex"><![CDATA[\d{3}-\d{3}-\d{4}]]></param>
-	<message>Phone number must be entered as 999-999-9999.</message>
-</validator>
-<validator type="fieldexpression">
-	<param name="fieldname">personBean.carModels</param>
-	<param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
-	<message>You must select at least one car model.</message>
-</validator>
+    <param name="fieldname">personBean.firstName</param>
+    <message>First name is required.</message>
+  </validator>
+  <validator type="requiredstring">
+    <param name="fieldname">personBean.lastName</param>
+    <message>Last name is required.</message>
+  </validator>
+  <validator type="requiredstring">
+    <param name="fieldname">personBean.email</param>
+    <message>Email address is required.</message>
+  </validator>
+  <validator type="email">
+    <param name="fieldname">personBean.email</param>
+    <message>Email address not valid.</message>
+  </validator>
+  <validator type="requiredstring">
+    <param name="fieldname">personBean.phoneNumber</param>
+    <message>Phone number is required.</message>
+  </validator>
+  <validator type="regex">
+    <param name="fieldname">personBean.phoneNumber</param>
+    <param name="regex"><![CDATA[\d{3}-\d{3}-\d{4}]]></param>
+    <message>Phone number must be entered as 999-999-9999.</message>
+  </validator>
+  <validator type="fieldexpression">
+    <param name="fieldname">personBean.carModels</param>
+    <param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
+    <message>You must select at least one car model.</message>
+  </validator>
 </validators>
diff --git a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
index 1b36d51..61d425f 100644
--- a/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
+++ b/form-xml-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties
@@ -7,4 +7,4 @@ personBean.gender=Gender
 personBean.residency=State resident
 personBean.over21=21 or older
 personBean.carModels=Car models owned
-submit=Save Changes
\ No newline at end of file
+submit=Save Changes

-- 
To stop receiving notification emails like this one, please contact
lukaszlenart@apache.org.