Author: bphillips Date: Tue Jul 2 20:06:48 2013 New Revision: 1499089 URL: http://svn.apache.org/r1499089 Log: Added wildcard method selection child module
Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/ (with props) struts/sandbox/trunk/struts2examples/wildcard_method_selection/README.txt struts/sandbox/trunk/struts2examples/wildcard_method_selection/pom.xml struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/PersonAction.java struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/Person.java struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/PersonService.java struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.dtd struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.xml struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/struts.xml struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/MANIFEST.MF struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/web.xml struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/input.jsp struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/view.jsp Modified: struts/sandbox/trunk/struts2examples/pom.xml Modified: struts/sandbox/trunk/struts2examples/pom.xml URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/pom.xml?rev=1499089&r1=1499088&r2=1499089&view=diff ============================================================================== --- struts/sandbox/trunk/struts2examples/pom.xml (original) +++ struts/sandbox/trunk/struts2examples/pom.xml Tue Jul 2 20:06:48 2013 @@ -41,6 +41,7 @@ <module>debugging_struts</module> <module>form_tags</module> <module>form_xml_validation</module> + <module>wildcard_method_selection</module> </modules> <dependencies> Propchange: struts/sandbox/trunk/struts2examples/wildcard_method_selection/ ------------------------------------------------------------------------------ --- svn:ignore (added) +++ svn:ignore Tue Jul 2 20:06:48 2013 @@ -0,0 +1,4 @@ +.settings +target +.classpath +.project Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/README.txt URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/README.txt?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/README.txt (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/README.txt Tue Jul 2 20:06:48 2013 @@ -0,0 +1,16 @@ +This is the example project referred to in the +Struts 2 documentation, Wildcard Method 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/wildcard_method_selection/Person.action + +You should see a web page with People listed. + Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/pom.xml URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/pom.xml?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/pom.xml (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/pom.xml Tue Jul 2 20:06:48 2013 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>struts.apache.org</groupId> + <artifactId>struts2examples</artifactId> + <version>1.0.0</version> + </parent> + + <artifactId>wildcard_method_selection</artifactId> + + <name>wildcard method selection</name> + + <description>Wildcard method selection example application for the + Struts 2 getting started tutorials</description> + <packaging>war</packaging> + <build> + <finalName>wildcard_method_selection</finalName> + </build> + +</project> Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/PersonAction.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/PersonAction.java?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/PersonAction.java (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/action/PersonAction.java Tue Jul 2 20:06:48 2013 @@ -0,0 +1,129 @@ +package org.apache.struts.tutorials.wildcardmethod.action; + +import java.util.List; + +import org.apache.log4j.Logger; +import org.apache.struts.tutorials.wildcardmethod.model.Person; +import org.apache.struts.tutorials.wildcardmethod.service.PersonService; + + + + + +import com.opensymphony.xwork2.ActionSupport; + + + +public class PersonAction extends ActionSupport { + + //Create a Logger object + private static final Logger logger = Logger.getLogger( PersonAction.class.getName() ); + + + private static final long serialVersionUID = 1L; + + Person person ; + + int id ; + + List<Person> personList = PersonService.getPersons(); + + PersonService personService = new PersonService(); + + public String execute() throws Exception { + + logger.debug("In execute method"); + return SUCCESS; + } + + + public String create() { + + logger.debug("In create method"); + person = new Person(); + + return INPUT; + + + } + + + public String edit() { + + logger.debug("In edit method"); + person = personService.getPerson(id); + + return INPUT; + + + } + + + public String saveOrUpdate() { + + + logger.debug("In saveOrUpdate method"); + if ( person.getId() > -1 ) { + + personService.update(person) ; + + + } else { + + personService.save(person); + } + + + personList = PersonService.getPersons() ; + + return SUCCESS; + + + } + + + public String delete() { + + logger.debug("In delete method"); + personService.deletePerson(id); + + personList = PersonService.getPersons() ; + + return SUCCESS; + } + + + public Person getPerson() { + return person; + } + + + public void setPerson(Person person) { + this.person = person; + } + + + public List<Person> getPersonList() { + return personList; + } + + + public void setPersonList(List<Person> personList) { + this.personList = personList; + } + + + public int getId() { + return id; + } + + + public void setId(int id) { + this.id = id; + } + + + + + +} Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/Person.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/Person.java?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/Person.java (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/model/Person.java Tue Jul 2 20:06:48 2013 @@ -0,0 +1,55 @@ +package org.apache.struts.tutorials.wildcardmethod.model; + +public class Person { + + private int id; + private String firstName; + private String lastName; + + + public Person() { + + this.id = -1; + this.firstName = null; + this.lastName = null; + } + + + public Person(int id, String firstName, String lastName) { + super(); + this.id = id; + this.firstName = firstName; + this.lastName = lastName; + } + + public int getId() { + return id; + } + public void setId(int id) { + this.id = id; + } + 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 String toString() { + + + return firstName + " " + lastName; + + } + + + + +} Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/PersonService.java URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/PersonService.java?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/PersonService.java (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/java/org/apache/struts/tutorials/wildcardmethod/service/PersonService.java Tue Jul 2 20:06:48 2013 @@ -0,0 +1,133 @@ +package org.apache.struts.tutorials.wildcardmethod.service; + +import java.util.ArrayList; +import java.util.List; +import java.util.NoSuchElementException; +import java.util.SortedMap; +import java.util.TreeMap; + +import org.apache.log4j.Logger; +import org.apache.struts.tutorials.wildcardmethod.model.Person; + + + +public class PersonService { + + //Create a Logger object + private static final Logger logger = Logger.getLogger( PersonService.class.getName() ); + + + private static SortedMap<Integer, Person> people = new TreeMap<Integer, Person>(); + + static { + + people.put(0, new Person(0, "Steve", "Smith") ); + people.put(1, new Person(1, "Sue", "Jones") ); + + + } + + + private static List<Person> personList = new ArrayList<Person>(); + + static{ + + for (Integer id : people.keySet() ) { + + personList.add( people.get(id)); + + } + + } + + + public static List<Person> getPersons() { + + return personList; + + } + + + public void save(Person person) { + + int newId = getNewId(); + + person.setId( newId ); + + people.put( newId, person); + + rebuildPersonList(); + + } + + + private int getNewId() { + + int newId = 0; + + try { + + newId = people.lastKey() + 1; + + } catch (NoSuchElementException ex) { + + logger.info("Id value set to 0"); + + } + + return newId; + + + } + + + public void update(Person person) { + + + + Person tempPerson = people.get( person.getId() ); + + tempPerson.setFirstName( person.getFirstName() ); + tempPerson.setLastName(person.getLastName() ); + + rebuildPersonList(); + + + } + + + public void deletePerson(int ID) { + + + people.remove(ID); + + rebuildPersonList(); + + } + + + public Person getPerson(int id) { + + return people.get(id); + + } + + + public static void rebuildPersonList() { + + + personList = new ArrayList<Person>(); + + for (Integer id : people.keySet() ) { + + personList.add( people.get(id)); + + } + + + + + } + + +} Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.dtd URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.dtd?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.dtd (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.dtd Tue Jul 2 20:06:48 2013 @@ -0,0 +1,227 @@ +<?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 +> Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.xml URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.xml?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.xml (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/log4j.xml Tue Jul 2 20:06:48 2013 @@ -0,0 +1,35 @@ +<?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.SimpleLayout"/> + </appender> + + + <!-- specify the logging level for loggers from other libraries --> + <logger name="com.opensymphony"> + <level value="ERROR" /> + </logger> + + <logger name="org.apache.struts2"> + <level value="ERROR" /> + </logger> + + <!-- log only ERROR and above messages for loggers with + a name of the name value below --> + <logger name="org.apache.struts.tutorials"> + <level value="DEGUG" /> + </logger> + + + + <!-- for all other loggers log only info and above log messages --> + <root> + <priority value="WARN"/> + <appender-ref ref="STDOUT" /> + </root> + +</log4j:configuration> + Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/struts.xml URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/struts.xml?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/struts.xml (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/resources/struts.xml Tue Jul 2 20:06:48 2013 @@ -0,0 +1,26 @@ +<?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" /> + <constant name="struts.enable.DynamicMethodInvocation" value="false" /> + + + <package name="wildcardmethodexample" extends="struts-default"> + + <!-- Whatever value is before Person for the name of + the action will be the name of the method to call in + class PersonAction. For example action createPerson + will call a method named create in class PersonAction --> + + <action name="*Person" class="org.apache.struts.tutorials.wildcardmethod.action.PersonAction" method="{1}"> + <result name="success">view.jsp</result> + <result name="input">input.jsp</result> + </action> + + </package> + +</struts> Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/MANIFEST.MF URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/MANIFEST.MF?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/MANIFEST.MF (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/META-INF/MANIFEST.MF Tue Jul 2 20:06:48 2013 @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/web.xml URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/web.xml?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/web.xml (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/WEB-INF/web.xml Tue Jul 2 20:06:48 2013 @@ -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>Wildcard_Method_Struts2_Mvn</display-name> + <welcome-file-list> + <welcome-file>input.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> Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/input.jsp URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/input.jsp?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/input.jsp (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/input.jsp Tue Jul 2 20:06:48 2013 @@ -0,0 +1,40 @@ +<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> +<%@ taglib prefix="s" uri="/struts-tags" %> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> + <head> + <base href="<%=basePath%>"> + + <title>Edit Person</title> + <meta http-equiv="pragma" content="no-cache"> + <meta http-equiv="cache-control" content="no-cache"> + <meta http-equiv="expires" content="0"> + + </head> + + <body> + <s:if test="id > 0"> + <h3>Edit Person</h3> + </s:if> + <s:else> + <h3>Create Person</h3> + + </s:else> + + <s:form action='saveOrUpdatePerson'> + + <p><s:textfield name="person.firstName" label="First name" /> <br /> + <s:textfield name="person.lastName" label="Last name" /> </p> + + <s:hidden name="person.id" /> + <s:submit value="Save" /> + + </s:form> + + + </body> +</html> Added: struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/view.jsp URL: http://svn.apache.org/viewvc/struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/view.jsp?rev=1499089&view=auto ============================================================================== --- struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/view.jsp (added) +++ struts/sandbox/trunk/struts2examples/wildcard_method_selection/src/main/webapp/view.jsp Tue Jul 2 20:06:48 2013 @@ -0,0 +1,60 @@ +<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%> +<% +String path = request.getContextPath(); +String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; +%> +<%@ taglib prefix="s" uri="/struts-tags" %> +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> + <head> + <base href="<%=basePath%>"> + <title>View People</title> + <meta http-equiv="pragma" content="no-cache"> + <meta http-equiv="cache-control" content="no-cache"> + <meta http-equiv="expires" content="0"> + + </head> + + <body> + <h3>People</h3> + + + <s:if test="personList.size > 0"> + <ol> + <s:iterator value="personList"> + <li> + <s:property value="firstName" /> + + <s:property value="lastName" /> + + <%--Put the name of the method we want to call + in front of Person. This action will cause + the method named edit to be called in the + ActionSupport class (see struts.xml) --%> + <s:url action="editPerson" var="editUrl"> + <s:param name="id" value="id"/> + </s:url> + + <s:url action="deletePerson" var="deleteUrl"> + <s:param name="id" value="id"/> + </s:url> + + <a href="<s:property value='#editUrl' />" >Edit</a> + + <a href="<s:property value='#deleteUrl' />" >Delete</a> + </li> + </s:iterator> + </ol> + </s:if> + + <%--Put the name of the method we want to call + in front of Person. This action will cause + the method named create to be called in the + ActionSupport class (see struts.xml) --%> + <s:url action="createPerson" var="newUrl"> + <s:param name="id" value="0"/> + </s:url> + + <p><a href="<s:property value='#newUrl' />" > Create new person.</a></p> + </body> +</html>