Refactor bean validation struts example - log4j2 setup - artifact name - jetty plugin - use new struts2 bean validation plugin
Project: http://git-wip-us.apache.org/repos/asf/struts-examples/repo Commit: http://git-wip-us.apache.org/repos/asf/struts-examples/commit/5f8d4946 Tree: http://git-wip-us.apache.org/repos/asf/struts-examples/tree/5f8d4946 Diff: http://git-wip-us.apache.org/repos/asf/struts-examples/diff/5f8d4946 Branch: refs/heads/master Commit: 5f8d4946c0d6520d4f12c36f29e6a90ba8939dc3 Parents: 24aaaa9 Author: Johannes Geppert <jo...@apache.org> Authored: Fri Jun 12 18:34:20 2015 +0200 Committer: Johannes Geppert <jo...@apache.org> Committed: Fri Jun 12 18:34:20 2015 +0200 ---------------------------------------------------------------------- basic-struts/src/main/webapp/index.jsp | 1 + bean-validation/README.txt | 16 ++ bean-validation/pom.xml | 51 +++++ .../apache/struts/edit/action/EditAction.java | 81 +++++++ .../org/apache/struts/edit/model/Person.java | 128 +++++++++++ .../org/apache/struts/edit/model/State.java | 32 +++ .../apache/struts/edit/service/EditService.java | 12 + .../edit/service/EditServiceInMemory.java | 53 +++++ bean-validation/src/main/resources/log4j2.xml | 16 ++ .../struts/edit/action/EditAction.properties | 16 ++ bean-validation/src/main/resources/struts.xml | 30 +++ .../src/main/webapp/META-INF/MANIFEST.MF | 3 + bean-validation/src/main/webapp/WEB-INF/web.xml | 19 ++ bean-validation/src/main/webapp/edit.jsp | 31 +++ bean-validation/src/main/webapp/index.jsp | 15 ++ .../src/main/webapp/styles/styles.css | 3 + bean-validation/src/main/webapp/thankyou.jsp | 20 ++ bean_validation/README.txt | 16 -- bean_validation/pom.xml | 37 --- .../apache/struts/edit/action/EditAction.java | 99 -------- .../org/apache/struts/edit/model/Person.java | 139 ------------ .../org/apache/struts/edit/model/State.java | 39 ---- .../apache/struts/edit/service/EditService.java | 12 - .../edit/service/EditServiceInMemory.java | 60 ----- bean_validation/src/main/resources/log4j.dtd | 227 ------------------- bean_validation/src/main/resources/log4j.xml | 28 --- .../struts/edit/action/EditAction.properties | 16 -- bean_validation/src/main/resources/struts.xml | 31 --- .../src/main/webapp/META-INF/MANIFEST.MF | 3 - bean_validation/src/main/webapp/WEB-INF/web.xml | 19 -- bean_validation/src/main/webapp/edit.jsp | 30 --- bean_validation/src/main/webapp/index.jsp | 16 -- bean_validation/src/main/webapp/thankyou.jsp | 21 -- .../org/apache/struts/edit/model/State.java | 4 - 34 files changed, 527 insertions(+), 797 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/basic-struts/src/main/webapp/index.jsp ---------------------------------------------------------------------- diff --git a/basic-struts/src/main/webapp/index.jsp b/basic-struts/src/main/webapp/index.jsp index 21f25d6..63ec1b5 100644 --- a/basic-struts/src/main/webapp/index.jsp +++ b/basic-struts/src/main/webapp/index.jsp @@ -9,3 +9,4 @@ <body> <h1>Welcome To Struts 2!</h1> </body> +</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/README.txt ---------------------------------------------------------------------- diff --git a/bean-validation/README.txt b/bean-validation/README.txt new file mode 100755 index 0000000..9de7277 --- /dev/null +++ b/bean-validation/README.txt @@ -0,0 +1,16 @@ +This is the example project referred to in the +Struts 2 documentation, Bean Validation tutorial. +See: http://struts.apache.org. + +To build the application's war file run mvn clean package +from the project's root folder. + +The war file is created in the target sub-folder. + +Copy the war file to your Servlet container (e.g. Tomcat, GlassFish) and +then startup the Servlet container. + +In a web browser go to: http://localhost:8080/bean_validation/index.action + +You should see a web page with Welcome to Struts 2! + http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/pom.xml ---------------------------------------------------------------------- diff --git a/bean-validation/pom.xml b/bean-validation/pom.xml new file mode 100755 index 0000000..33d56b7 --- /dev/null +++ b/bean-validation/pom.xml @@ -0,0 +1,51 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>struts.apache.org</groupId> + <artifactId>struts2examples</artifactId> + <version>1.0.0</version> + </parent> + <artifactId>bean-validation</artifactId> + + <name>Bean Validation</name> + <description>bean (JSR 303) validation example application for the Struts 2 getting started tutorials</description> + + <packaging>war</packaging> + + <dependencies> + <dependency> + <groupId>org.hibernate</groupId> + <artifactId>hibernate-validator</artifactId> + <version>4.3.1.Final</version> + </dependency> + + <dependency> + <groupId>org.apache.struts</groupId> + <artifactId>struts2-bean-validation-plugin</artifactId> + <version>${struts2.version}</version> + </dependency> + </dependencies> + + <build> + <finalName>bean-validation</finalName> + <plugins> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty-maven-plugin</artifactId> + <version>8.1.16.v20140903</version> + <configuration> + <webApp> + <contextPath>/${artifactId}</contextPath> + </webApp> + <stopKey>CTRL+C</stopKey> + <stopPort>8999</stopPort> + <scanIntervalSeconds>10</scanIntervalSeconds> + <scanTargets> + <scanTarget>src/main/webapp/WEB-INF/web.xml</scanTarget> + </scanTargets> + </configuration> + </plugin> + </plugins> + </build> +</project> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/java/org/apache/struts/edit/action/EditAction.java ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/java/org/apache/struts/edit/action/EditAction.java b/bean-validation/src/main/java/org/apache/struts/edit/action/EditAction.java new file mode 100755 index 0000000..c172c3f --- /dev/null +++ b/bean-validation/src/main/java/org/apache/struts/edit/action/EditAction.java @@ -0,0 +1,81 @@ +package org.apache.struts.edit.action; + +import com.opensymphony.xwork2.ActionSupport; +import org.apache.struts.edit.model.Person; +import org.apache.struts.edit.model.State; +import org.apache.struts.edit.service.EditService; +import org.apache.struts.edit.service.EditServiceInMemory; + +import javax.validation.Valid; +import java.util.ArrayList; +import java.util.Arrays; +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(); + + @Valid + 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<>(); + 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; + } +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/java/org/apache/struts/edit/model/Person.java ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/java/org/apache/struts/edit/model/Person.java b/bean-validation/src/main/java/org/apache/struts/edit/model/Person.java new file mode 100755 index 0000000..cd82679 --- /dev/null +++ b/bean-validation/src/main/java/org/apache/struts/edit/model/Person.java @@ -0,0 +1,128 @@ +package org.apache.struts.edit.model; + +import org.hibernate.validator.constraints.Email; +import org.hibernate.validator.constraints.NotBlank; +import org.hibernate.validator.constraints.NotEmpty; + +import javax.validation.constraints.Pattern; +import javax.validation.constraints.Size; +import java.util.Arrays; + + +/** + * Models a Person who registers. + * @author bruce phillips + * + */ +public class Person +{ + + @NotBlank(message="firstName.required") + private String firstName; + + @NotBlank(message="lastName.required") + private String lastName; + private String sport; + private String gender; + private String residency; + private boolean over21; + + @NotEmpty(message="carModels.required") + private String [] carModels; + + @Size(min=1, message="email.required") + @Email(message="email.format") + private String email; + + @Pattern(regexp="\\d{3}-\\d{3}-\\d{4}", message="phoneNumber.required") + private String phoneNumber; + + public String getFirstName() + { + return firstName; + } + + public void setFirstName(String firstName) + { + this.firstName = firstName; + } + + public String getLastName() + { + return 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 setResidency(String residency) { + this.residency = residency; + } + + public String getResidency() { + return residency; + } + + public void setOver21(boolean over21) { + this.over21 = over21; + } + + public boolean isOver21() { + return over21; + } + + public void setCarModels(String [] carModels) { + this.carModels = carModels; + } + + public String [] getCarModels() { + return carModels; + } + + 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; + } +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/java/org/apache/struts/edit/model/State.java ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/java/org/apache/struts/edit/model/State.java b/bean-validation/src/main/java/org/apache/struts/edit/model/State.java new file mode 100755 index 0000000..caf0bcc --- /dev/null +++ b/bean-validation/src/main/java/org/apache/struts/edit/model/State.java @@ -0,0 +1,32 @@ +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() ; + } +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/java/org/apache/struts/edit/service/EditService.java ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/java/org/apache/struts/edit/service/EditService.java b/bean-validation/src/main/java/org/apache/struts/edit/service/EditService.java new file mode 100755 index 0000000..79d759a --- /dev/null +++ b/bean-validation/src/main/java/org/apache/struts/edit/service/EditService.java @@ -0,0 +1,12 @@ +package org.apache.struts.edit.service; + +import org.apache.struts.edit.model.Person; + +public interface EditService { + + + Person getPerson() ; + + void savePerson(Person personBean); + +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java b/bean-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java new file mode 100755 index 0000000..73e8281 --- /dev/null +++ b/bean-validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java @@ -0,0 +1,53 @@ +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("bphill...@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() ); + + } + +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/resources/log4j2.xml ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/resources/log4j2.xml b/bean-validation/src/main/resources/log4j2.xml new file mode 100644 index 0000000..d7c09f9 --- /dev/null +++ b/bean-validation/src/main/resources/log4j2.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Configuration> + <Appenders> + <Console name="STDOUT" target="SYSTEM_OUT"> + <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/> + </Console> + </Appenders> + <Loggers> + <Logger name="com.opensymphony.xwork2" level="info"/> + <Logger name="org.apache.struts2" level="info"/> + <Logger name="org.apache.struts2.edit" level="debug"/> + <Root level="warn"> + <AppenderRef ref="STDOUT"/> + </Root> + </Loggers> +</Configuration> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties b/bean-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties new file mode 100755 index 0000000..e5c5bc4 --- /dev/null +++ b/bean-validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties @@ -0,0 +1,16 @@ +personBean.firstName=First name +personBean.lastName=Last name +personBean.email=Email address +personBean.phoneNumber=Phone number (999-999-9999) +personBean.sport=Favorite sport +personBean.gender=Gender +personBean.residency=State resident +personBean.over21=21 or older +personBean.carModels=Car models owned +submit=Save Changes +firstName.required=You must enter the first name +lastName.required=You must enter the last name +email.required=You must enter an email address +phoneNumber.required=You must enter a phone number in format 999-999-9999 +email.format=Email address not in a valid email format +carModels.required=You must select at least one car model http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/resources/struts.xml ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/resources/struts.xml b/bean-validation/src/main/resources/struts.xml new file mode 100755 index 0000000..10aed9a --- /dev/null +++ b/bean-validation/src/main/resources/struts.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE struts PUBLIC + "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" + "http://struts.apache.org/dtds/struts-2.0.dtd"> + +<struts> + + <constant name="struts.devMode" value="true" /> + + <package name="default" extends="struts-bean-validation"> + + <!-- If no class attribute is specified the framework will assume success and + render the result index.jsp --> + <!-- If no name value for the result node is specified the success value is the default --> + <action name="index"> + <result>/index.jsp</result> + </action> + + <action name="edit" class="org.apache.struts.edit.action.EditAction" method="input"> + <result name="input">/edit.jsp</result> + </action> + + <action name="save" class="org.apache.struts.edit.action.EditAction" method="execute"> + <result name="input">/edit.jsp</result> + <result name="success">/thankyou.jsp</result> + </action> + + </package> + +</struts> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/META-INF/MANIFEST.MF ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/META-INF/MANIFEST.MF b/bean-validation/src/main/webapp/META-INF/MANIFEST.MF new file mode 100755 index 0000000..254272e --- /dev/null +++ b/bean-validation/src/main/webapp/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/WEB-INF/web.xml ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/WEB-INF/web.xml b/bean-validation/src/main/webapp/WEB-INF/web.xml new file mode 100755 index 0000000..392d030 --- /dev/null +++ b/bean-validation/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,19 @@ +<?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>JSR303_Validation_Struts2_Mvn</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.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> + </filter> + + <filter-mapping> + <filter-name>struts2</filter-name> + <url-pattern>/*</url-pattern> + </filter-mapping> + +</web-app> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/edit.jsp ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/edit.jsp b/bean-validation/src/main/webapp/edit.jsp new file mode 100755 index 0000000..ebbaac0 --- /dev/null +++ b/bean-validation/src/main/webapp/edit.jsp @@ -0,0 +1,31 @@ +<!DOCTYPE html> +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<%@ taglib prefix="s" uri="/struts-tags" %> +<html> +<head> + <meta charset="UTF-8"> + <title>Struts 2 Bean Validation - Enter Information</title> + <link href="<s:url value='/styles/styles.css' encode='false' includeParams='none'/>" rel="stylesheet" + type="text/css" media="all"/> +</head> + +<body> +<h1>Update Information</h1> + +<p>Use the form below to edit your information.</p> + +<s:form action="save" method="post"> + <s:textfield key="personBean.firstName"/> + <s:textfield key="personBean.lastName"/> + <s:textfield key="personBean.email"/> + <s:textfield key="personBean.phoneNumber"/> + <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"/> + <s:checkbox key="personBean.over21"/> + <s:checkboxlist key="personBean.carModels" list="carModelsAvailable"/> + <s:submit key="submit"/> +</s:form> +</body> + +</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/index.jsp ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/index.jsp b/bean-validation/src/main/webapp/index.jsp new file mode 100755 index 0000000..90b9bf0 --- /dev/null +++ b/bean-validation/src/main/webapp/index.jsp @@ -0,0 +1,15 @@ +<!DOCTYPE html> +<%@ taglib prefix="s" uri="/struts-tags" %> +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<html> +<head> + <meta charset="UTF-8"> + <title>Struts 2 Bean Validation - Welcome</title> +</head> + +<body> +<h1>Welcome To Struts 2!</h1> + +<p><a href='<s:url action="edit" />'>Edit your information</a></p> +</body> +</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/styles/styles.css ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/styles/styles.css b/bean-validation/src/main/webapp/styles/styles.css new file mode 100644 index 0000000..9f51674 --- /dev/null +++ b/bean-validation/src/main/webapp/styles/styles.css @@ -0,0 +1,3 @@ +.errorMessage { + color: red; +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean-validation/src/main/webapp/thankyou.jsp ---------------------------------------------------------------------- diff --git a/bean-validation/src/main/webapp/thankyou.jsp b/bean-validation/src/main/webapp/thankyou.jsp new file mode 100755 index 0000000..c9e75b7 --- /dev/null +++ b/bean-validation/src/main/webapp/thankyou.jsp @@ -0,0 +1,20 @@ +<!DOCTYPE html> +<%@ taglib prefix="s" uri="/struts-tags" %> +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<html> +<head> + <meta charset="UTF-8"> + <title>Struts 2 Bean Validation - Update Successful!</title> +</head> + +<body> + +<h1>Updated Information</h1> + +<p>Your information:</p> +<pre><s:property value="personBean"/></pre> + +<p><a href="<s:url action='index' />">Return to home page</a>.</p> + +</body> +</html> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/README.txt ---------------------------------------------------------------------- diff --git a/bean_validation/README.txt b/bean_validation/README.txt deleted file mode 100755 index 9de7277..0000000 --- a/bean_validation/README.txt +++ /dev/null @@ -1,16 +0,0 @@ -This is the example project referred to in the -Struts 2 documentation, Bean Validation tutorial. -See: http://struts.apache.org. - -To build the application's war file run mvn clean package -from the project's root folder. - -The war file is created in the target sub-folder. - -Copy the war file to your Servlet container (e.g. Tomcat, GlassFish) and -then startup the Servlet container. - -In a web browser go to: http://localhost:8080/bean_validation/index.action - -You should see a web page with Welcome to Struts 2! - http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/pom.xml ---------------------------------------------------------------------- diff --git a/bean_validation/pom.xml b/bean_validation/pom.xml deleted file mode 100755 index fd365ae..0000000 --- a/bean_validation/pom.xml +++ /dev/null @@ -1,37 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>struts.apache.org</groupId> - <artifactId>struts2examples</artifactId> - <version>1.0.0</version> - </parent> - <artifactId>bean_validation</artifactId> - - <name>Bean Validation</name> - <description>bean (JSR 303) validation example application for the - Struts 2 getting started tutorials</description> - - <packaging>war</packaging> - - <build> - <finalName>bean_validation</finalName> - </build> - <dependencies> - - - <dependency> - <groupId>org.hibernate</groupId> - <artifactId>hibernate-validator</artifactId> - <version>4.3.1.Final</version> - </dependency> - - <dependency> - <groupId>com.github.umeshawasthi</groupId> - <artifactId>struts2-jsr303-validation-plugin</artifactId> - <version>1.0</version> - </dependency> - - </dependencies> - -</project> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/java/org/apache/struts/edit/action/EditAction.java ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/java/org/apache/struts/edit/action/EditAction.java b/bean_validation/src/main/java/org/apache/struts/edit/action/EditAction.java deleted file mode 100755 index 9dfe601..0000000 --- a/bean_validation/src/main/java/org/apache/struts/edit/action/EditAction.java +++ /dev/null @@ -1,99 +0,0 @@ -package org.apache.struts.edit.action; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import javax.validation.Valid; - -import org.apache.struts.edit.model.Person; -import org.apache.struts.edit.model.State; -import org.apache.struts.edit.service.EditService; -import org.apache.struts.edit.service.EditServiceInMemory; - -import com.opensymphony.xwork2.ActionSupport; - -/** - * 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(); - - @Valid - 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; - } - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/java/org/apache/struts/edit/model/Person.java ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/java/org/apache/struts/edit/model/Person.java b/bean_validation/src/main/java/org/apache/struts/edit/model/Person.java deleted file mode 100755 index dfdc465..0000000 --- a/bean_validation/src/main/java/org/apache/struts/edit/model/Person.java +++ /dev/null @@ -1,139 +0,0 @@ -package org.apache.struts.edit.model; - -import java.util.Arrays; - -import javax.validation.constraints.Pattern; -import javax.validation.constraints.Size; - -import org.hibernate.validator.constraints.Email; -import org.hibernate.validator.constraints.NotBlank; -import org.hibernate.validator.constraints.NotEmpty; - - - -/** - * Models a Person who registers. - * @author bruce phillips - * - */ -public class Person -{ - - @NotBlank(message="firstName.required") - private String firstName; - - @NotBlank(message="lastName.required") - private String lastName; - private String sport; - private String gender; - private String residency; - private boolean over21; - - @NotEmpty(message="carModels.required") - private String [] carModels; - - @Size(min=1, message="email.required") - @Email(message="email.format") - private String email; - - @Pattern(regexp="\\d{3}-\\d{3}-\\d{4}", message="phoneNumber.required") - private String phoneNumber; - - - - public String getFirstName() - { - return firstName; - } - - public void setFirstName(String firstName) - { - this.firstName = firstName; - } - - public String getLastName() - { - return 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 setResidency(String residency) { - this.residency = residency; - } - - public String getResidency() { - return residency; - } - - public void setOver21(boolean over21) { - this.over21 = over21; - } - - public boolean isOver21() { - return over21; - } - - public void setCarModels(String [] carModels) { - this.carModels = carModels; - } - - public String [] getCarModels() { - return carModels; - } - - 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; - } - - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/java/org/apache/struts/edit/model/State.java ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/java/org/apache/struts/edit/model/State.java b/bean_validation/src/main/java/org/apache/struts/edit/model/State.java deleted file mode 100755 index bb927e1..0000000 --- a/bean_validation/src/main/java/org/apache/struts/edit/model/State.java +++ /dev/null @@ -1,39 +0,0 @@ -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() ; - - } - - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/java/org/apache/struts/edit/service/EditService.java ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/java/org/apache/struts/edit/service/EditService.java b/bean_validation/src/main/java/org/apache/struts/edit/service/EditService.java deleted file mode 100755 index f52e053..0000000 --- a/bean_validation/src/main/java/org/apache/struts/edit/service/EditService.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.apache.struts.edit.service; - -import org.apache.struts.edit.model.Person; - -public interface EditService { - - - Person getPerson() ; - - void savePerson(Person personBean); - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java b/bean_validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java deleted file mode 100755 index 8fd35e2..0000000 --- a/bean_validation/src/main/java/org/apache/struts/edit/service/EditServiceInMemory.java +++ /dev/null @@ -1,60 +0,0 @@ -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("bphill...@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() ); - - } - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/resources/log4j.dtd ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/resources/log4j.dtd b/bean_validation/src/main/resources/log4j.dtd deleted file mode 100755 index 1aabd96..0000000 --- a/bean_validation/src/main/resources/log4j.dtd +++ /dev/null @@ -1,227 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!-- - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> - -<!-- Authors: Chris Taylor, Ceki Gulcu. --> - -<!-- Version: 1.2 --> - -<!-- A configuration element consists of optional renderer -elements,appender elements, categories and an optional root -element. --> - -<!ELEMENT log4j:configuration (renderer*, appender*,plugin*, (category|logger)*,root?, - (categoryFactory|loggerFactory)?)> - -<!-- The "threshold" attribute takes a level value below which --> -<!-- all logging statements are disabled. --> - -<!-- Setting the "debug" enable the printing of internal log4j logging --> -<!-- statements. --> - -<!-- By default, debug attribute is "null", meaning that we not do touch --> -<!-- internal log4j logging settings. The "null" value for the threshold --> -<!-- attribute can be misleading. The threshold field of a repository --> -<!-- cannot be set to null. The "null" value for the threshold attribute --> -<!-- simply means don't touch the threshold field, the threshold field --> -<!-- keeps its old value. --> - -<!ATTLIST log4j:configuration - xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/" - threshold (all|trace|debug|info|warn|error|fatal|off|null) "null" - debug (true|false|null) "null" - reset (true|false) "false" -> - -<!-- renderer elements allow the user to customize the conversion of --> -<!-- message objects to String. --> - -<!ELEMENT renderer EMPTY> -<!ATTLIST renderer - renderedClass CDATA #REQUIRED - renderingClass CDATA #REQUIRED -> - -<!-- Appenders must have a name and a class. --> -<!-- Appenders may contain an error handler, a layout, optional parameters --> -<!-- and filters. They may also reference (or include) other appenders. --> -<!ELEMENT appender (errorHandler?, param*, - rollingPolicy?, triggeringPolicy?, connectionSource?, - layout?, filter*, appender-ref*)> -<!ATTLIST appender - name CDATA #REQUIRED - class CDATA #REQUIRED -> - -<!ELEMENT layout (param*)> -<!ATTLIST layout - class CDATA #REQUIRED -> - -<!ELEMENT filter (param*)> -<!ATTLIST filter - class CDATA #REQUIRED -> - -<!-- ErrorHandlers can be of any class. They can admit any number of --> -<!-- parameters. --> - -<!ELEMENT errorHandler (param*, root-ref?, logger-ref*, appender-ref?)> -<!ATTLIST errorHandler - class CDATA #REQUIRED -> - -<!ELEMENT root-ref EMPTY> - -<!ELEMENT logger-ref EMPTY> -<!ATTLIST logger-ref - ref CDATA #REQUIRED -> - -<!ELEMENT param EMPTY> -<!ATTLIST param - name CDATA #REQUIRED - value CDATA #REQUIRED -> - - -<!-- The priority class is org.apache.log4j.Level by default --> -<!ELEMENT priority (param*)> -<!ATTLIST priority - class CDATA #IMPLIED - value CDATA #REQUIRED -> - -<!-- The level class is org.apache.log4j.Level by default --> -<!ELEMENT level (param*)> -<!ATTLIST level - class CDATA #IMPLIED - value CDATA #REQUIRED -> - - -<!-- If no level element is specified, then the configurator MUST not --> -<!-- touch the level of the named category. --> -<!ELEMENT category (param*,(priority|level)?,appender-ref*)> -<!ATTLIST category - class CDATA #IMPLIED - name CDATA #REQUIRED - additivity (true|false) "true" -> - -<!-- If no level element is specified, then the configurator MUST not --> -<!-- touch the level of the named logger. --> -<!ELEMENT logger (level?,appender-ref*)> -<!ATTLIST logger - name CDATA #REQUIRED - additivity (true|false) "true" -> - - -<!ELEMENT categoryFactory (param*)> -<!ATTLIST categoryFactory - class CDATA #REQUIRED> - -<!ELEMENT loggerFactory (param*)> -<!ATTLIST loggerFactory - class CDATA #REQUIRED> - -<!ELEMENT appender-ref EMPTY> -<!ATTLIST appender-ref - ref CDATA #REQUIRED -> - -<!-- plugins must have a name and class and can have optional parameters --> -<!ELEMENT plugin (param*, connectionSource?)> -<!ATTLIST plugin - name CDATA #REQUIRED - class CDATA #REQUIRED -> - -<!ELEMENT connectionSource (dataSource?, param*)> -<!ATTLIST connectionSource - class CDATA #REQUIRED -> - -<!ELEMENT dataSource (param*)> -<!ATTLIST dataSource - class CDATA #REQUIRED -> - -<!ELEMENT triggeringPolicy ((param|filter)*)> -<!ATTLIST triggeringPolicy - name CDATA #IMPLIED - class CDATA #REQUIRED -> - -<!ELEMENT rollingPolicy (param*)> -<!ATTLIST rollingPolicy - name CDATA #IMPLIED - class CDATA #REQUIRED -> - - -<!-- If no priority element is specified, then the configurator MUST not --> -<!-- touch the priority of root. --> -<!-- The root category always exists and cannot be subclassed. --> -<!ELEMENT root (param*, (priority|level)?, appender-ref*)> - - -<!-- ==================================================================== --> -<!-- A logging event --> -<!-- ==================================================================== --> -<!ELEMENT log4j:eventSet (log4j:event*)> -<!ATTLIST log4j:eventSet - xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/" - version (1.1|1.2) "1.2" - includesLocationInfo (true|false) "true" -> - - - -<!ELEMENT log4j:event (log4j:message, log4j:NDC?, log4j:throwable?, - log4j:locationInfo?, log4j:properties?) > - -<!-- The timestamp format is application dependent. --> -<!ATTLIST log4j:event - logger CDATA #REQUIRED - level CDATA #REQUIRED - thread CDATA #REQUIRED - timestamp CDATA #REQUIRED - time CDATA #IMPLIED -> - -<!ELEMENT log4j:message (#PCDATA)> -<!ELEMENT log4j:NDC (#PCDATA)> - -<!ELEMENT log4j:throwable (#PCDATA)> - -<!ELEMENT log4j:locationInfo EMPTY> -<!ATTLIST log4j:locationInfo - class CDATA #REQUIRED - method CDATA #REQUIRED - file CDATA #REQUIRED - line CDATA #REQUIRED -> - -<!ELEMENT log4j:properties (log4j:data*)> - -<!ELEMENT log4j:data EMPTY> -<!ATTLIST log4j:data - name CDATA #REQUIRED - value CDATA #REQUIRED -> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/resources/log4j.xml ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/resources/log4j.xml b/bean_validation/src/main/resources/log4j.xml deleted file mode 100755 index 2100cb2..0000000 --- a/bean_validation/src/main/resources/log4j.xml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd"> - -<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> - - <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"> - <layout class="org.apache.log4j.PatternLayout"> - <param name="ConversionPattern" value="%d %-5p %c.%M:%L - %m%n"/> - </layout> - </appender> - - <!-- specify the logging level for loggers from other libraries --> - <logger name="com.opensymphony"> - <level value="DEBUG" /> - </logger> - - <logger name="org.apache.struts2"> - <level value="DEBUG" /> - </logger> - - <!-- for all other loggers log only debug and above log messages --> - <root> - <priority value="INFO"/> - <appender-ref ref="STDOUT" /> - </root> - -</log4j:configuration> - http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties b/bean_validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties deleted file mode 100755 index 167b9ee..0000000 --- a/bean_validation/src/main/resources/org/apache/struts/edit/action/EditAction.properties +++ /dev/null @@ -1,16 +0,0 @@ -personBean.firstName=First name -personBean.lastName=Last name -personBean.email=Email address -personBean.phoneNumber=Phone number (999-999-9999) -personBean.sport=Favorite sport -personBean.gender=Gender -personBean.residency=State resident -personBean.over21=21 or older -personBean.carModels=Car models owned -submit=Save Changes -firstName.required=You must enter the first name -lastName.required=You must enter the last name -email.required=You must enter an email address -phoneNumber.required=You must enter a phone number in format 999-999-9999 -email.format=Email address not in a valid email format -carModels.required=You must select at least one car model http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/resources/struts.xml ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/resources/struts.xml b/bean_validation/src/main/resources/struts.xml deleted file mode 100755 index b362104..0000000 --- a/bean_validation/src/main/resources/struts.xml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE struts PUBLIC - "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" - "http://struts.apache.org/dtds/struts-2.0.dtd"> - -<struts> - - <constant name="struts.devMode" value="true" /> - - <package name="default" extends="jsr303"> - <default-interceptor-ref name="jsr303ValidationStack"/> - - <!-- If no class attribute is specified the framework will assume success and - render the result index.jsp --> - <!-- If no name value for the result node is specified the success value is the default --> - <action name="index"> - <result>/index.jsp</result> - </action> - - <action name="edit" class="org.apache.struts.edit.action.EditAction" method="input"> - <result name="input">/edit.jsp</result> - </action> - - <action name="save" class="org.apache.struts.edit.action.EditAction" method="execute"> - <result name="input">/edit.jsp</result> - <result name="success">/thankyou.jsp</result> - </action> - - </package> - -</struts> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/webapp/META-INF/MANIFEST.MF ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/webapp/META-INF/MANIFEST.MF b/bean_validation/src/main/webapp/META-INF/MANIFEST.MF deleted file mode 100755 index 5e94951..0000000 --- a/bean_validation/src/main/webapp/META-INF/MANIFEST.MF +++ /dev/null @@ -1,3 +0,0 @@ -Manifest-Version: 1.0 -Class-Path: - http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/webapp/WEB-INF/web.xml ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/webapp/WEB-INF/web.xml b/bean_validation/src/main/webapp/WEB-INF/web.xml deleted file mode 100755 index 392d030..0000000 --- a/bean_validation/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?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>JSR303_Validation_Struts2_Mvn</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.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> - </filter> - - <filter-mapping> - <filter-name>struts2</filter-name> - <url-pattern>/*</url-pattern> - </filter-mapping> - -</web-app> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/webapp/edit.jsp ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/webapp/edit.jsp b/bean_validation/src/main/webapp/edit.jsp deleted file mode 100755 index 67a9901..0000000 --- a/bean_validation/src/main/webapp/edit.jsp +++ /dev/null @@ -1,30 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=ISO-8859-1" - pageEncoding="ISO-8859-1"%> -<%@ taglib prefix="s" uri="/struts-tags" %> -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<head> -<s:head /> -<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> -<title>Struts 2 Form Tags - Edit Person</title> -</head> -<body> -<h1>Update Information</h1> - -<p>Use the form below to edit your information.</p> - -<s:form action="save" method="post"> -<s:textfield key="personBean.firstName" /> -<s:textfield key="personBean.lastName" /> -<s:textfield key="personBean.email" /> -<s:textfield key="personBean.phoneNumber" /> -<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" /> -<s:checkbox key="personBean.over21" /> -<s:checkboxlist key="personBean.carModels" list="carModelsAvailable" /> -<s:submit key="submit" /> -</s:form> - -</body> -</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/webapp/index.jsp ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/webapp/index.jsp b/bean_validation/src/main/webapp/index.jsp deleted file mode 100755 index 88209d8..0000000 --- a/bean_validation/src/main/webapp/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%@ page language="java" contentType="text/html; charset=ISO-8859-1" - pageEncoding="ISO-8859-1"%> -<%@ taglib prefix="s" uri="/struts-tags" %> -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> -<title>Struts 2 Form Tags - Welcome</title> -</head> -<body> -<h1>Welcome To Struts 2!</h1> - -<p><a href='<s:url action="edit" />' >Edit your information</a></p> - -</body> -</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/bean_validation/src/main/webapp/thankyou.jsp ---------------------------------------------------------------------- diff --git a/bean_validation/src/main/webapp/thankyou.jsp b/bean_validation/src/main/webapp/thankyou.jsp deleted file mode 100755 index 5fa306f..0000000 --- a/bean_validation/src/main/webapp/thankyou.jsp +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1" ?> -<%@ taglib prefix="s" uri="/struts-tags" %> -<%@ page language="java" contentType="text/html; charset=ISO-8859-1" - pageEncoding="ISO-8859-1"%> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> -<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" /> -<title>Update Successful</title> -</head> -<body> - -<h1>Updated Information</h1> - - -<p>Your information: <s:property value="personBean" /> </p> - -<p><a href="<s:url action='index' />" >Return to home page</a>.</p> - -</body> -</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/5f8d4946/preparable_interface/src/main/java/org/apache/struts/edit/model/State.java ---------------------------------------------------------------------- diff --git a/preparable_interface/src/main/java/org/apache/struts/edit/model/State.java b/preparable_interface/src/main/java/org/apache/struts/edit/model/State.java index bb927e1..8746add 100644 --- a/preparable_interface/src/main/java/org/apache/struts/edit/model/State.java +++ b/preparable_interface/src/main/java/org/apache/struts/edit/model/State.java @@ -7,10 +7,8 @@ public class State { private String stateName; public State (String stateAbbr, String stateName) { - this.stateAbbr = stateAbbr; this.stateName = stateName; - } public void setStateAbbr(String stateAbbr) { @@ -30,9 +28,7 @@ public class State { } public String toString() { - return getStateAbbr() ; - }