You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by hu...@apache.org on 2006/03/08 03:40:30 UTC
svn commit: r384096 - in /struts/sandbox/trunk/action2/apps/cookbook/src:
java/cookbook2/ webapp/ webapp/WEB-INF/classes/ webapp/pages/input/
Author: husted
Date: Tue Mar 7 18:40:28 2006
New Revision: 384096
URL: http://svn.apache.org/viewcvs?rev=384096&view=rev
Log:
Action2 Cookbook
* Add simple input example
Removed:
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/InputResult.jsp
Modified:
struts/sandbox/trunk/action2/apps/cookbook/src/java/cookbook2/Input.java
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/Home.jsp
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork-Input.xml
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork.xml
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/Input.jsp
struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/index.jsp
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/java/cookbook2/Input.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/java/cookbook2/Input.java?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/java/cookbook2/Input.java (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/java/cookbook2/Input.java Tue Mar 7 18:40:28 2006
@@ -1,289 +1,20 @@
package cookbook2;
-import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.xwork.ActionSupport;
-import com.opensymphony.xwork.Validateable;
-import com.opensymphony.xwork.util.OgnlValueStack;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.io.File;
+public class Input extends ActionSupport {
-public class Input extends ActionSupport implements Validateable {
-
- String name;
- Date birthday;
- String bio;
- String favoriteColor;
- List friends;
- boolean legalAge;
- String state;
- String region;
- File picture;
- String pictureContentType;
- String pictureFileName;
- String favouriteLanguage;
- String favouriteVehicalType = "MotorcycleKey";
- String favouriteVehicalSpecific = "YamahaKey";
-
- List leftSideCartoonCharacters;
- List rightSideCartoonCharacters;
-
- List favouriteLanguages = new ArrayList();
- List vehicalTypeList = new ArrayList();
- Map vehicalSpecificMap = new HashMap();
-
- String thoughts;
-
- public Input() {
- favouriteLanguages.add(new Language("EnglishKey", "English Language"));
- favouriteLanguages.add(new Language("FrenchKey", "French Language"));
- favouriteLanguages.add(new Language("SpanishKey", "Spanish Language"));
-
- VehicalType car = new VehicalType("CarKey", "Car");
- VehicalType motorcycle = new VehicalType("MotorcycleKey", "Motorcycle");
- vehicalTypeList.add(car);
- vehicalTypeList.add(motorcycle);
-
- List cars = new ArrayList();
- cars.add(new VehicalSpecific("MercedesKey", "Mercedes"));
- cars.add(new VehicalSpecific("HondaKey", "Honda"));
- cars.add(new VehicalSpecific("FordKey", "Ford"));
-
- List motorcycles = new ArrayList();
- motorcycles.add(new VehicalSpecific("SuzukiKey", "Suzuki"));
- motorcycles.add(new VehicalSpecific("YamahaKey", "Yamaha"));
-
- vehicalSpecificMap.put(car, cars);
- vehicalSpecificMap.put(motorcycle, motorcycles);
- }
-
-
-
- public List getLeftSideCartoonCharacters() {
- return leftSideCartoonCharacters;
- }
- public void setLeftSideCartoonCharacters(List leftSideCartoonCharacters) {
- this.leftSideCartoonCharacters = leftSideCartoonCharacters;
- }
-
-
- public List getRightSideCartoonCharacters() {
- return rightSideCartoonCharacters;
- }
- public void setRightSideCartoonCharacters(List rightSideCartoonCharacters) {
- this.rightSideCartoonCharacters = rightSideCartoonCharacters;
- }
-
-
- public String getFavouriteVehicalType() {
- return favouriteVehicalType;
- }
-
- public void setFavouriteVehicalType(String favouriteVehicalType) {
- this.favouriteVehicalType = favouriteVehicalType;
- }
-
- public String getFavouriteVehicalSpecific() {
- return favouriteVehicalSpecific;
- }
-
- public void setFavouriteVehicalSpecific(String favouriteVehicalSpecific) {
- this.favouriteVehicalSpecific = favouriteVehicalSpecific;
- }
-
-
- public List getVehicalTypeList() {
- return vehicalTypeList;
- }
-
- public List getVehicalSpecificList() {
- OgnlValueStack stack = ServletActionContext.getValueStack(ServletActionContext.getRequest());
- VehicalType vehicalType = (VehicalType) stack.findValue("top");
- System.out.println("vehicalType.getKey()"+vehicalType.getKey());
- return (List) vehicalSpecificMap.get(vehicalType);
- }
-
- public List getFavouriteLanguages() {
- return favouriteLanguages;
- }
-
- public String execute() throws Exception {
- return SUCCESS;
- }
-
- public String getName() {
- return name;
- }
+ private String name;
public void setName(String name) {
this.name = name;
}
- public Date getBirthday() {
- return birthday;
- }
-
- public void setBirthday(Date birthday) {
- this.birthday = birthday;
- }
-
- public String getBio() {
- return bio;
- }
-
- public void setBio(String bio) {
- this.bio = bio;
- }
-
- public String getFavoriteColor() {
- return favoriteColor;
- }
-
- public void setFavoriteColor(String favoriteColor) {
- this.favoriteColor = favoriteColor;
- }
-
- public List getFriends() {
- return friends;
- }
-
- public void setFriends(List friends) {
- this.friends = friends;
- }
-
- public boolean isLegalAge() {
- return legalAge;
- }
-
- public void setLegalAge(boolean legalAge) {
- this.legalAge = legalAge;
- }
-
- public String getState() {
- return state;
- }
-
- public void setState(String state) {
- this.state = state;
- }
-
- public String getRegion() {
- return region;
- }
-
- public void setRegion(String region) {
- this.region = region;
- }
-
- public void setPicture(File picture) {
- this.picture = picture;
- }
-
- public void setPictureContentType(String pictureContentType) {
- this.pictureContentType = pictureContentType;
- }
-
- public void setPictureFileName(String pictureFileName) {
- this.pictureFileName = pictureFileName;
- }
-
- public void setFavouriteLanguage(String favouriteLanguage) {
- this.favouriteLanguage = favouriteLanguage;
- }
-
- public String getFavouriteLanguage() {
- return favouriteLanguage;
- }
-
-
- public void setThoughts(String thoughts) {
- this.thoughts = thoughts;
- }
-
- public String getThoughts() {
- return this.thoughts;
- }
-
-
-
- public String doSubmit() {
- return SUCCESS;
- }
-
-
-
- // === inner class
- public static class Language {
- String description;
- String key;
-
- public Language(String key, String description) {
- this.key = key;
- this.description = description;
- }
-
- public String getKey() {
- return key;
- }
- public String getDescription() {
- return description;
- }
-
- }
-
-
- public static class VehicalType {
- String key;
- String description;
- public VehicalType(String key, String description) {
- this.key = key;
- this.description = description;
- }
-
- public String getKey() { return this.key; }
- public String getDescription() { return this.description; }
-
- public boolean equals(Object obj) {
- if (! (obj instanceof VehicalType)) {
- return false;
- }
- else {
- return key.equals(((VehicalType)obj).getKey());
- }
- }
-
- public int hashCode() {
- return key.hashCode();
- }
+ public String getName() {
+ return this.name;
}
-
- public static class VehicalSpecific {
- String key;
- String description;
- public VehicalSpecific(String key, String description) {
- this.key = key;
- this.description = description;
- }
-
- public String getKey() { return this.key; }
- public String getDescription() { return this.description; }
-
- public boolean equals(Object obj) {
- if (! (obj instanceof VehicalSpecific)) {
- return false;
- }
- else {
- return key.equals(((VehicalSpecific)obj).getKey());
- }
- }
-
- public int hashCode() {
- return key.hashCode();
- }
+ public String execute() throws Exception {
+ return SUCCESS;
}
}
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/webapp/Home.jsp
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/webapp/Home.jsp?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/webapp/Home.jsp (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/webapp/Home.jsp Tue Mar 7 18:40:28 2006
@@ -29,32 +29,58 @@
</table>
<br />
<table width="85%" border="0" cellpadding="2" cellspacing="5">
+
+ <tr valign="top">
+ <td>Hello World</td>
+ <td>
+
+ <ww:url id="Hello_exe" action="Hello" />
+ <ww:a href="%{Hello_exe}">
+ <img src="<ww:url value="/images/execute.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
+ </ww:a>
+ <ww:a href="%{Hello_exe}">Execute</ww:a>
+
+ </td>
+ <td>
+
+ <ww:url id="Hello_src" value="/pages/Hello/index.jsp" />
+ <ww:a href="%{Hello_src}">
+ <img src="<ww:url value="/images/code.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
+ </ww:a>
+ <ww:a href="%{Hello_src}">
+ View Source
+ </ww:a>
+
+ </td>
+ </tr>
+
+
<tr valign="top">
<td>Simple Input Form using Action Properties</td>
<td>
- <ww:url id="input_exe" action="Input" />
- <ww:a href="%{input_exe}">
+ <ww:url id="Input_exe" action="Input!input" />
+ <ww:a href="%{Input_exe}">
<img src="<ww:url value="/images/execute.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
</ww:a>
- <ww:a href="%{input_exe}">Execute</ww:a>
+ <ww:a href="%{Input_exe}">Execute</ww:a>
</td>
<td>
- <ww:url id="input_src" value="/pages/input/index.jsp" />
-
- <ww:a href="%{input_src}">
+ <ww:url id="Input_src" value="/pages/input/index.jsp" />
+ <ww:a href="%{Input_src}">
<img src="<ww:url value="/images/code.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
</ww:a>
-
- <ww:a href="%{input_src}">
+ <ww:a href="%{Input_src}">
View Source
</ww:a>
</td>
</tr>
+
+
<tr valign="top">
<td>Simple Form using a POJO</td>
<td>
@@ -64,6 +90,34 @@
[TODO]
</td>
</tr>
+
+
+
+ <tr valign="top">
+ <td>Complex Input Form using Select Controls</td>
+ <td>
+
+ <ww:url id="Select_exe" action="Select" />
+ <ww:a href="%{Select_exe}">
+ <img src="<ww:url value="/images/execute.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
+ </ww:a>
+
+ <ww:a href="%{Select_exe}">Execute</ww:a>
+
+ </td>
+ <td>
+
+ <ww:url id="Select_src" value="/pages/Select/index.jsp" />
+ <ww:a href="%{Select_src}">
+ <img src="<ww:url value="/images/code.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
+ </ww:a>
+ <ww:a href="%{Select_src}">
+ View Source
+ </ww:a>
+
+ </td>
+ </tr>
+
</table>
<p><img src="<ww:url value="/images/valid-xhtml10.png"/>" alt="Valid XHTML 1.0!" height="31" width="88" /></p>
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork-Input.xml
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork-Input.xml?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork-Input.xml (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork-Input.xml Tue Mar 7 18:40:28 2006
@@ -2,15 +2,15 @@
<xwork>
- <package name="input" extends="webwork-default" >
+ <package name="Input" extends="webwork-default" >
<action name="Input" class="cookbook2.Input">
<result>/pages/input/Input.jsp</result>
<result name="input">/pages/input/Input.jsp</result>
</action>
- <action name="InputResult" method="submit" class="cookbook2.Input" >
- <result>/pages/input/InputResult.jsp</result>
+ <action name="InputResult" class="cookbook2.Input" >
+ <result>/pages/input/Result.jsp</result>
<result name="input">/pages/input/Input.jsp</result>
</action>
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork.xml
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork.xml?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork.xml (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/webapp/WEB-INF/classes/xwork.xml Tue Mar 7 18:40:28 2006
@@ -4,6 +4,10 @@
<include file="webwork-default.xml"/>
+ <include file="xwork-Hello.xml"/>
+
<include file="xwork-Input.xml"/>
+
+ <include file="xwork-Select.xml"/>
</xwork>
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/Input.jsp
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/Input.jsp?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/Input.jsp (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/Input.jsp Tue Mar 7 18:40:28 2006
@@ -1,114 +1,13 @@
<%@taglib prefix="ww" uri="/webwork" %>
<html>
-<head>
- <title>UI Tags Example</title>
- <ww:head/>
-</head>
-
-<body>
-
-<ww:form action="exampleSubmit" method="post">
- <ww:textfield
- label="Name"
- name="name"
- tooltip="Enter your Name here" />
-
- <ww:datepicker
- tooltip="Select Your Birthday"
- label="Birthday"
- name="birthday"/>
-
- <ww:textarea
- tooltip="Enter your Biography"
- label="Biograph"
- name="bio"
- cols="20"
- rows="3"/>
-
- <ww:select
- tooltip="Choose Your Favourite Color"
- label="Favorite Color"
- list="{'Red', 'Blue', 'Green'}"
- name="favoriteColor"
- emptyOption="true"
- headerKey="None"
- headerValue="None"/>
-
- <ww:select
- tooltip="Choose Your Favourite Language"
- label="Favourite Language"
- list="favouriteLanguages"
- name="favouriteLanguage"
- listKey="key"
- listValue="description"
- emptyOption="true"
- headerKey="None"
- headerValue="None"/>
-
- <ww:checkboxlist
- tooltip="Choose your Friends"
- label="Friends"
- list="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}"
- name="friends"/>
-
- <ww:checkbox
- tooltip="Confirmed that your are Over 18"
- label="Age 18+"
- name="legalAge"/>
-
- <ww:doubleselect
- tooltip="Choose Your State"
- label="State"
- name="region" list="{'North', 'South'}"
- value="'South'"
- doubleValue="'Florida'"
- doubleList="top == 'North' ? {'Oregon', 'Washington'} : {'Texas', 'Florida'}"
- doubleName="state"
- headerKey="-1"
- headerValue="---------- Please Select ----------"
- emptyOption="true" />
-
- <ww:doubleselect
- tooltip="Choose your Vehical"
- label="Favourite Vehical"
- name="favouriteVehicalType"
- list="vehicalTypeList"
- listKey="key"
- listValue="description"
- value="'MotorcycleKey'"
- doubleValue="'YamahaKey'"
- doubleList="vehicalSpecificList"
- doubleListKey="key"
- doubleListValue="description"
- doubleName="favouriteVehicalSpecific" headerKey="-1"
- headerValue="---------- Please Select ----------"
- emptyOption="true" />
-
- <ww:file
- tooltip="Upload Your Picture"
- label="Picture"
- name="picture" />
-
- <ww:optiontransferselect
- tooltip="Select Your Favourite Cartoon Characters"
- label="Favourite Cartoons Characters"
- name="leftSideCartoonCharacters"
- leftTitle="Left Title"
- rightTitle="Right Title"
- list="{'Popeye', 'He-Man', 'Spiderman'}"
- multiple="true"
- headerKey="headerKey"
- headerValue="--- Please Select ---"
- emptyOption="true"
- doubleList="{'Superman', 'Mickey Mouse', 'Donald Duck'}"
- doubleName="rightSideCartoonCharacters"
- doubleHeaderKey="doubleHeaderKey"
- doubleHeaderValue="--- Please Select ---"
- doubleEmptyOption="true"
- doubleMultiple="true" />
-
- <ww:submit onclick="alert('Don't Panic! (Just press OK to continue)');" />
-</ww:form>
-
-</body>
+ <head>
+ <title>Cookbook - Input Form</title>
+ <ww:head/>
+ </head>
+ <body>
+ <ww:form action="InputResult">
+ <ww:textfield label="Please enter your name" name="name" />
+ <ww:submit />
+ </ww:form>
+ </body>
</html>
Modified: struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/index.jsp
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/index.jsp?rev=384096&r1=384095&r2=384096&view=diff
==============================================================================
--- struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/index.jsp (original)
+++ struts/sandbox/trunk/action2/apps/cookbook/src/webapp/pages/input/index.jsp Tue Mar 7 18:40:28 2006
@@ -3,8 +3,8 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<title>Source Code for Input Form Example</title>
-<link rel="stylesheet" type="text/css" href="<ww:url value="/css/example.css" />" >
+<title>Source Code for Input Form</title>
+<link rel="stylesheet" type="text/css" href="<ww:url value="/css/cookbook.css" />" >
</head>
<body>
@@ -18,12 +18,12 @@
<img src="<ww:url value="/images/return.gif"/>" alt="" hspace="4" border="0" align="top" class="inline" />
</a>
-<h1>Source Code for Input Form Example</h1>
+<h1>Source Code for Input Form</h1>
<hr noshade="noshade"/>
<h2>Server Pages</h2>
<p><a href="<ww:url value="/View.jsp?src=/pages/input/Input.jsp"/>">Input.jsp</a></p>
-<p><a href="<ww:url value="/View.jsp?src=/page/input/InputResults.jsp"/>">InputResult.jsp</a></p>
+<p><a href="<ww:url value="/View.jsp?src=/pages/input/Result.jsp"/>">Result.jsp</a></p>
<h2>Actions</h2>
<p><a href="<ww:url value="/View.jsp?src=/WEB-INF/src/java/cookbook/Input.java"/>">Input.java</a></p>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org