Commits

Anonymous committed 53f214d

getting ready for 2.1.7 release

git-svn-id: http://svn.opensymphony.com/svn/webwork/trunk@656573baa09-0c28-0410-bef9-dab3c582ae83

  • Participants
  • Parent commits f4ab1aa

Comments (0)

Files changed (152)

File docs/wikidocs/Accessing application, session, request objects.html

+<html>
+    <head>
+        <title>WebWork 2 : Accessing application, session, request objects</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Accessing application, session, request objects
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 30, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <p class="paragraph">Webwork provides several access helpers to access Session, Application, Request scopes.<br/>
+Web agnostic (independent of the servlet API) with calls:
+<div class="code"><div class="codeContent">
+<pre>Map session = (Map) ActionContext.getContext().get(<span class="java&#45;quote">&quot;session&quot;</span>);&#10;session.put(<span class="java&#45;quote">&quot;myId&quot;</span>,myProp);</pre>
+</div></div></p>The following gives you the same thing as above:
+<div class="code"><div class="codeContent">
+<pre>ServletActionContext.getRequest().getSession()</pre>
+</div></div><p class="paragraph">Note: Be sure not to use ActionContext.getContext() in the constructor of your action since the values may not be set up already (returning null for getSession()).<br/>
+Note also: ActionContext.getContext().get(&quot;session&quot;) is the same as<br/>
+ActionContext.getContext().getSession() with a cast to Map.</p>If you really need to get access to the HttpSession, use the ServletConfigInterceptor (see <a href="Interceptors.html" title="Interceptors">Interceptors</a>).<p class="paragraph">In your views, you can access with your jsps as such
+<div class="code"><div class="codeContent">
+<pre>&lt;ww: property value=<span class="java&#45;quote">&quot;#session.myId&quot;</span> /&gt;&#10;&#10;&lt;ww: property value=<span class="java&#45;quote">&quot;#request.myId&quot;</span> /&gt;</pre>
+</div></div></p>All the servlet scopes can be accessed like above.
+<div class="code"><div class="codeContent">
+<pre>Map request = (Map) ActionContext.getContext().get(<span class="java&#45;quote">&quot;request&quot;</span>);&#10;request.put(<span class="java&#45;quote">&quot;myId&quot;</span>,myProp);&#10;Map application = (Map) ActionContext.getContext().get(<span class="java&#45;quote">&quot;application&quot;</span>);&#10;application.put(<span class="java&#45;quote">&quot;myId&quot;</span>,myProp);&#10;Map session = (Map) ActionContext.getContext().get(<span class="java&#45;quote">&quot;attr&quot;</span>);&#10;attr.put(<span class="java&#45;quote">&quot;myId&quot;</span>,myProp);</pre>
+</div></div><br/>
+The &#039;attr&#039; map will search the javax.servlet.jsp.PageContext for the specified key. If the PageContext dosen&#039;t exist, it will search request,session,application maps respectively.
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Action Chaining Result.html

+<html>
+    <head>
+        <title>WebWork 2 : Action Chaining Result</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Action Chaining Result
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 13, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h4 style="margin: 4px 0px 4px 0px;" class="heading4"><a name="ActionChainingResult-ActionChaining"> Action Chaining</a></h4>
+A special kind of view that invokes GenericDispatch (using the previously existing ActionContext) and executes another action.  This is useful if you need to execute one action immediately after another.</p><table class="wikitable">
+<tr>
+<th>Parameters </th><th> Required </th><th> Description </th>
+</tr><tr>
+<td> actionName </td><td> <b class="strong">yes</b> </td><td> the name of the action that will be chained to</td>
+</tr><tr>
+<td> namespace </td><td> no </td><td> sets the namespace of the Action that we&#039;re chaining to.  If namespace is null, this defaults to the current namespace. </td>
+</tr>
+</table>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;chain&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;actionName&quot;</span>&gt;</span>bar<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;    <span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;namespace&quot;</span>&gt;</span>/foo<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;<span class="xml&#45;tag">&lt;/result&gt;</span></pre>
+</div></div><br/>
+invokes this
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;bar&quot;</span> class=<span class="xml&#45;quote">&quot;myPackage.barAction&quot;</span>&gt;</span>&#10;    ...&#10;<span class="xml&#45;tag">&lt;/action&gt;</span></pre>
+</div></div>
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Action Chaining.html

+<html>
+    <head>
+        <title>WebWork 2 : Action Chaining</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Action Chaining
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 29, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <p class="paragraph">The ActionChainResult in WebWork2 provides the ability to compose multiple Actions together to execute in a defined sequence or workflow. By applying the ActionChainResult as the result of your Action, like so:</p><div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;&#33;&#45;&#45; simple chain example to an action in same namespace &#45;&gt;</span>&#10;<span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;chain&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;actionName&quot;</span>&gt;</span>Bar<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;<span class="xml&#45;tag">&lt;/result&gt;</span></pre>
+</div></div>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;&#33;&#45; example of chaining to an action in a different namespace/package &#45;&#45;&gt;</span>&#10;<span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;chain&quot;</span>&gt;</span>&#10;	<span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;actionName&quot;</span>&gt;</span>viewFoo<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;	<span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;namespace&quot;</span>&gt;</span>/foo<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;<span class="xml&#45;tag">&lt;/result&gt;</span></pre>
+</div></div><p class="paragraph">another Action in the same namespace (or the default &quot;&quot; namespace) can be executed after this Action (see <a href="http://wiki.opensymphony.com//display/XW/Configuration" title="Configuration">XW:Configuration</a>). An optional &quot;namespace&quot; parameter may also be added to specify an Action in a different namespace. The original parameters from the request and the ValueStack are passed in when this Action is chained to, so the chained to Action will be added on the ValueStack above the chained from Action. This allows the chained to Action to access the properties of the preceding Action(s) using the ValueStack, and also makes these properties available to the final result of the chain, such as the JSP or Velocity page.</p>If you need to copy the properties from your previous Actions in the chain to the current Action, you should apply the ChainingInterceptor (see <a href="http://wiki.opensymphony.com//display/XW/Interceptors" title="Interceptors">XW:Interceptors</a>) which copies the properties of all objects on the ValueStack to the current target.<p class="paragraph">One common use of Action chaining is to provide lookup lists (like for a dropdown list of states, etc). Since these Actions get put on the ValueStack, these properties will be available in the view. This functionality can also be done using the ActionTag to execute an Action from the display page. In WW1.x Action chaining is often used to chain to a RedirectAction to redirect to another page after processing (in WW2 we have a redirect result).</p>Basically it&#039;s good when you have some reusable code you want to encapsulate&#8230; In WW2 if you use it a lot, you could make it an Interceptor, or use it as an Action with chaining. If you need to set up and use some properties from it, it needs to be an Action.
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/App Servers.html

+<html>
+    <head>
+        <title>WebWork 2 : App Servers</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : App Servers
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 20, 2004 by <font color="#0050B2">plightbo</font>.
+				    </div>
+
+				    <ul class="star">
+<li> <a href="WebLogic.html" title="WebLogic">WebLogic</a></li>
+<li> WebSphere</li>
+<li> JRun</li>
+<li> Jetty</li>
+<li> Tomcat/JBoss</li>
+<li> Resin</li>
+<li> Orion</li>
+<li> OC4J</li>
+</ul>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Application, Session, Request objects in jsp.html

+<html>
+    <head>
+        <title>WebWork 2 : Application, Session, Request objects in jsp</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Application, Session, Request objects in jsp
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 30, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <p class="paragraph">The application, session and request objects are available from within ww tags in jsp wherever ognl can be evaluated. Use the #session syntax to get the object and access values by their keys using &#91;&#039;key&#039;&#93;.<div class="code"><div class="codeContent">
+<pre>&lt;ww:property value=<span class="java&#45;quote">&quot;#application&#91;&#039;foo&#039;&#93;&quot;</span>/&gt;&#10;&#10;&lt;ww:property value=<span class="java&#45;quote">&quot;#session&#91;&#039;baz&#039;&#93;&quot;</span>/&gt;</pre>
+</div></div><br/>
+Conversely, if you would like to make webwork objects availible to say the jsp/jstl request scope.  The property tag can be used like this.</p><div class="code"><div class="codeContent">
+<pre>&lt;ww:set name=<span class="java&#45;quote">&quot;jobz&quot;</span> value=<span class="java&#45;quote">&quot;jobs&quot;</span> scope=<span class="java&#45;quote">&quot;request&quot;</span> /&gt;</pre>
+</div></div><p class="paragraph">A full example below shows a webwork variable &quot;jobs&quot; being exposed as &quot;jobz&quot; and being used with jstl and the display tag.</p><a href="Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example.html" title="Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example">WW:Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example</a>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Application, Session, Request objects in vm.html

+<html>
+    <head>
+        <title>WebWork 2 : Application, Session, Request objects in vm</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Application, Session, Request objects in vm
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 30, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <div class="code"><div class="codeContent">
+<pre>$req.session.servletContext.getAttribute(...)&#10;$req.session.getAttribute(...)&#10;$req.getAttribute(...)</pre>
+</div></div>
+<p class="paragraph">To get parameters from the QueryString or from a POSTed form, do not use getAttribute, use:</p><div class="code"><div class="codeContent">
+<pre>$req.getParameter(...)</pre>
+</div></div><p class="paragraph">But that&#039;s quite obvious, since $req is the request object and we all know how it works.</p><b class="strong">Example:</b><p class="paragraph">_<em class="emphasis">test.jsp</em>_:</p><div class="code"><div class="codeContent">
+<pre>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&#10;&lt;&#37;&#10;session.setAttribute(<span class="java&#45;quote">&quot;sessionFoo&quot;</span>, <span class="java&#45;quote">&quot;sessionBar&quot;</span>);&#10;session.getServletContext().setAttribute(<span class="java&#45;quote">&quot;applicationFoo&quot;</span>, <span class="java&#45;quote">&quot;applicationBar&quot;</span>);&#10;&#37;&gt;&#10;&#10;&lt;p&gt;The following information should be available when sending the form below:&#10;&#10;&lt;ul&gt;&#10;	&lt;li&gt;Request parameter &#039;querystringFoo&#039; with value &#039;querystringBar&#039;;&lt;/li&gt;&#10;	&lt;li&gt;Request parameter &#039;formFoo&#039; with value &#039;formBar&#039;;&lt;/li&gt;&#10;	&lt;li&gt;Session attribute &#039;sessionFoo&#039; with value &#039;sessionBar&#039;;&lt;/li&gt;&#10;	&lt;li&gt;Application attribute &#039;applicationFoo&#039; with value &#039;applicationBar&#039;.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/p&gt;&#10;&#10;&lt;form action=<span class="java&#45;quote">&quot;test.vm&#63;querystringFoo=querystringBar&quot;</span> method=<span class="java&#45;quote">&quot;post&quot;</span>&gt;&#10;&lt;input type=<span class="java&#45;quote">&quot;hidden&quot;</span> name=<span class="java&#45;quote">&quot;formFoo&quot;</span> value=<span class="java&#45;quote">&quot;formBar&quot;</span>&gt;&#10;&lt;p&gt;&lt;input type=<span class="java&#45;quote">&quot;submit&quot;</span> value=<span class="java&#45;quote">&quot;Test&#33;&quot;</span>&gt;&lt;/p&gt;&#10;&lt;/form&gt;&#10;&lt;/body&gt;&lt;/html&gt;</pre>
+</div></div><p class="paragraph">_<em class="emphasis">test.vm</em>_:</p><div class="code"><div class="codeContent">
+<pre>&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&#10;&#10;#set ($ses = $req.getSession())&#10;#set ($app = $ses.getServletContext())&#10;&#10;&lt;p&gt;applicationFoo = $&#33;app.getAttribute(<span class="java&#45;quote">&quot;applicationFoo&quot;</span>) &lt;code&gt;(app.getAttribute(<span class="java&#45;quote">&quot;applicationFoo&quot;</span>))&lt;/code&gt;&lt;/p&gt;&#10;&lt;p&gt;sessionFoo = $&#33;ses.getAttribute(<span class="java&#45;quote">&quot;sessionFoo&quot;</span>) &lt;code&gt;(ses.getAttribute(<span class="java&#45;quote">&quot;sessionFoo&quot;</span>))&lt;/code&gt;&lt;/p&gt;&#10;&lt;p&gt;formFoo = $&#33;req.getParameter(<span class="java&#45;quote">&quot;formFoo&quot;</span>) &lt;code&gt;(req.getParameter(<span class="java&#45;quote">&quot;formFoo&quot;</span>))&lt;/code&gt;&lt;/p&gt;&#10;&lt;p&gt;querystringFoo = $&#33;req.getParameter(<span class="java&#45;quote">&quot;querystringFoo&quot;</span>) &lt;code&gt;(req.getParameter(<span class="java&#45;quote">&quot;queryStringFoo&quot;</span>))&lt;/code&gt;&lt;/p&gt;&#10;&#10;&lt;/body&gt;&lt;/html&gt;</pre>
+</div></div>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Articles.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Bug tracker and wiki.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Chaining Interceptor.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Checkbox tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Checkbox tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Checkbox tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Checkboxtag-%26lt%3Bww%3Acheckbox%2F%26gt%3B"> &lt;ww:checkbox /&gt;</a></h3></p>Renders an HTML input element of type checkbox, populated by the specified property from the OgnlValueStack.  <p class="paragraph"><b class="strong">Sample Usages</b>
+<div class="code"><div class="codeContent">
+<pre>JSP&#10;    <span class="xml&#45;tag">&lt;ww:checkbox label=<span class="xml&#45;quote">&quot;&#039;checkbox test&#039;&quot;</span> name=<span class="xml&#45;quote">&quot;&#039;checkboxField1&#039;&quot;</span> value=<span class="xml&#45;quote">&quot;aBoolean&quot;</span> fieldValue=<span class="xml&#45;quote">&quot;&#039;true&#039;&quot;</span>/&gt;</span>&#10;&#10;Velocity&#10;    #tag( Checkbox <span class="xml&#45;quote">&quot;label=&#039;checkbox test&#039;&quot;</span>&#160;<span class="xml&#45;quote">&quot;name=&#039;checkboxField1&#039;&quot;</span> value=<span class="xml&#45;quote">&quot;aBoolean&quot;</span> fieldValue=<span class="xml&#45;quote">&quot;&#039;true&#039;&quot;</span> )&#10;&#10;HTML (simple template, aBoolean == true)&#10;	<span class="xml&#45;tag">&lt;input type=<span class="xml&#45;quote">&quot;checkbox&quot;</span> name=<span class="xml&#45;quote">&quot;checkboxField1&quot;</span> value=<span class="xml&#45;quote">&quot;true&quot;</span> checked=<span class="xml&#45;quote">&quot;checked&quot;</span> /&gt;</span></pre>
+</div></div></p><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	label			</td><td>	no			</td><td>	Text used as label in template	</td>
+</tr><tr>
+<td>	labelposition	</td><td>	no			</td><td>	Alignment of label (left,right,center)	</td>
+</tr><tr>
+<td>	required		</td><td>	no			</td><td>	Is field required for form submission	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Boolean which if true adds &#039;checked=&quot;checked&quot;&#039; to tag	</td>
+</tr><tr>
+<td>	fieldValue		</td><td>	<b class="strong">yes</b>		</td><td>	the actual HTML value attribute of the checkbox	</td>
+</tr><tr>
+<td>	tabindex		</td><td>	no			</td><td>	HTML tabindex attribute	</td>
+</tr><tr>
+<td>	onchange		</td><td>	no			</td><td>	HTML onchange attribute	</td>
+</tr><tr>
+<td>	onclick 		</td><td>	no			</td><td>	HTML onclick attribute	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use	</td>
+</tr>
+</table>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Checkboxlist tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Checkboxlist tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Checkboxlist tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Checkboxlisttag-%26lt%3Bww%3Acheckboxlist%2F%26gt%3B"> &lt;ww:checkboxlist /&gt;</a></h3></p>Creates a series of checkboxes from a list. Setup is like &lt;ww:select /&gt; or &lt;ww:radio /&gt;, but creates checkbox tags.<p class="paragraph"><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as field value	</td>
+</tr><tr>
+<td>	label			</td><td>	no			</td><td>	Text used as label in template	</td>
+</tr><tr>
+<td>	labelposition	</td><td>	no			</td><td>	Alignment of label (left,right,center)	</td>
+</tr><tr>
+<td>	required		</td><td>	no			</td><td>	Is field required for form submission	</td>
+</tr><tr>
+<td>	list			</td><td>	no			</td><td>	Iteratable source to populate from	</td>
+</tr><tr>
+<td>	listKey			</td><td>	no			</td><td>	Property of list objects to get field value from	</td>
+</tr><tr>
+<td>	listValue		</td><td>	no			</td><td>	Property of list objects to get field content from	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use	</td>
+</tr>
+</table></p>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Client-Side Validation.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Combobox tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Combobox tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Combobox tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Comboboxtag-%26lt%3Bww%3Acombobox%2F%26gt%3B"> &lt;ww:combobox /&gt; </a></h3></p>The combo box is basically an HTML INPUT of type text and HTML SELECT grouped together to give you a combo box functionality. You can place text in the INPUT control by using the SELECT control or type it in directly in the text field. <p class="paragraph">In this example, the SELECT will be populated from id=year attribute. Counter is itself an Iterator. It will span from first to last.</p><div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;ww:bean name=<span class="xml&#45;quote">&quot;&#039;webwork.util.Counter&#039;&quot;</span> id=<span class="xml&#45;quote">&quot;year&quot;</span>&gt;</span>&#10;  <span class="xml&#45;tag">&lt;ww:param name=<span class="xml&#45;quote">&quot;&#039;first&#039;&quot;</span> value=<span class="xml&#45;quote">&quot;text(&#039;firstBirthYear&#039;)&quot;</span>/&gt;</span>&#10;  <span class="xml&#45;tag">&lt;ww:param name=<span class="xml&#45;quote">&quot;&#039;last&#039;&quot;</span> value=<span class="xml&#45;quote">&quot;2000&quot;</span>/&gt;</span>&#10;&#10;  <span class="xml&#45;tag">&lt;ww:combobox label=<span class="xml&#45;quote">&quot;&#039;Birth year&#039;&quot;</span> size=<span class="xml&#45;quote">&quot;6&quot;</span> maxlength=<span class="xml&#45;quote">&quot;4&quot;</span> name=<span class="xml&#45;quote">&quot;&#039;birthYear&#039;&quot;</span> list=<span class="xml&#45;quote">&quot;#year&quot;</span>/&gt;</span>&#10;<span class="xml&#45;tag">&lt;/ww:bean&gt;</span></pre>
+</div></div><p class="paragraph"><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as field value	</td>
+</tr><tr>
+<td>	list			</td><td>	no			</td><td>	Iteratable source to populate from	</td>
+</tr><tr>
+<td>	size			</td><td>	no			</td><td>	HTML size attribute	</td>
+</tr><tr>
+<td>	maxlength		</td><td>	no			</td><td>	HTML maxlength attribute	</td>
+</tr><tr>
+<td>	disabled		</td><td>	no			</td><td>	HTML disabled attribute	</td>
+</tr><tr>
+<td>	tabindex		</td><td>	no			</td><td>	HTML tabindex attribute	</td>
+</tr><tr>
+<td>	onkeyup			</td><td>	no			</td><td>	HTML onkeyup attribute	</td>
+</tr><tr>
+<td>	onchange		</td><td>	no			</td><td>	HTML onchange attribute	</td>
+</tr><tr>
+<td>	onclick 		</td><td>	no			</td><td>	HTML onclick attribute	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	label			</td><td>	no			</td><td>	Text used as label in template	</td>
+</tr><tr>
+<td>	labelposition	</td><td>	no			</td><td>	Alignment of label (left,right,center)	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use	</td>
+</tr>
+</table></p>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Common Tags.html

+<html>
+    <head>
+        <title>WebWork 2 : Common Tags</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Common Tags
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 29, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="CommonTags-Param"> Param</a></h3>
+Sets a parameter for the parent tag. Examples include ww:url and ww:action.
+<div class="code"><div class="codeContent">
+<pre>&lt;ww:action name=<span class="java&#45;quote">&quot;VelocityCounter&quot;</span> id=<span class="java&#45;quote">&quot;vc&quot;</span>&gt;&#10; &lt;ww:param name=<span class="java&#45;quote">&quot;foo&quot;</span> value=<span class="java&#45;quote">&quot;&#039;BAR&#039;&quot;</span>/&gt;&#10;&lt;/ww:action&gt;&#10;javascript:popUp(&#039;&lt;ww:url value=<span class="java&#45;quote">&quot;wiki.opensymphony.com/exec/edit&quot;</span>&gt;&lt;ww:param name=<span class="java&#45;quote">&quot;name&quot;</span> value=<span class="java&#45;quote">&quot;Common Tags&quot;</span>/&gt;&lt;/ww:url&gt;&#039;)</pre>
+</div></div><br/>
+from webwork.tld:
+<div class="code"><div class="codeContent">
+<pre>&lt;attribute&gt;&#10;   &lt;name&gt;name&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">true</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;&#10;&lt;attribute&gt;&#10;   &lt;name&gt;value&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;</pre>
+</div></div>
+<h3 class="heading3"><a name="CommonTags-Property"> Property</a></h3></p>Used to get the value of a result attribute. If the value isn&#039;t given, the top of the stack will be returned.<br/>
+
+<div class="code"><div class="codeContent">
+<pre>&lt;ww:property value=<span class="java&#45;quote">&quot;id&quot;</span>&#160;<span class="java&#45;keyword">default</span>=<span class="java&#45;quote">&quot;#session&#91;OS:&#039;customer&#039;&#93;.id&quot;</span>/&gt;</pre>
+</div></div><br/>
+From webwork.tld:
+<div class="code"><div class="codeContent">
+<pre>&lt;attribute&gt;&#10;   &lt;name&gt;value&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10; &lt;/attribute&gt;&#10; &lt;attribute&gt;&#10;    &lt;name&gt;<span class="java&#45;keyword">default</span>&lt;/name&gt;&#10;    &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;    &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10; &lt;/attribute&gt;</pre>
+</div></div>
+<h3 class="heading3"><a name="CommonTags-Push"> Push</a></h3>
+Using ww:push, you can add an object of your choice to the top of the value stack. This is similar to what you can do with ww:set (see below), so read both before deciding which to use.
+<div class="code"><div class="codeContent">
+<pre>&lt;ww:push value=<span class="java&#45;quote">&quot;counter&quot;</span>&gt;&#10;  &lt;ww:property value=<span class="java&#45;quote">&quot;count&quot;</span>/&gt;&#10;&lt;/ww:push&gt;&#10;&#10;&#10;To make an action available on the stack:&#10;&#10;&lt;ww:action name=<span class="java&#45;quote">&quot;&#039;SomeAction&#039;&quot;</span> id=<span class="java&#45;quote">&quot;sa&quot;</span>/&gt;&#10;&lt;ww:push value=<span class="java&#45;quote">&quot;#sa&quot;</span>&gt;&#10; foo = &lt;ww:property value=<span class="java&#45;quote">&quot;foo&quot;</span>/&gt;&#10;&lt;/ww:push&gt;</pre>
+</div></div><br/>
+from webwork.tld:
+<div class="code"><div class="codeContent">
+<pre>&lt;attribute&gt;&#10;   &lt;name&gt;value&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">true</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;</pre>
+</div></div>
+<h3 class="heading3"><a name="CommonTags-Set"> Set</a></h3>
+You can create your own named variables from within a JSP using the ww:set tag. Reference your variable later using the #<em class="emphasis">variableName</em> notation.
+<div class="code"><div class="codeContent">
+<pre>&lt;ww:set name=<span class="java&#45;quote">&quot;huba&quot;</span> value=<span class="java&#45;quote">&quot;foo.bar&quot;</span> scope=<span class="java&#45;quote">&quot;webwork&quot;</span> /&gt;&#10;&#10;&lt;ww:property value=<span class="java&#45;quote">&quot;#huba.otherExpression().baz&quot;</span>/&gt;)</pre>
+</div></div><br/>
+from webwork.tld:
+<div class="code"><div class="codeContent">
+<pre>&lt;info&gt;&#10;   Sets the value of an object in the VS to a scope&#10;   (page, stack, application, session). If the value&#10;   is not given, the top of the stack is used. If the&#10;   scope is not given, the <span class="java&#45;keyword">default</span> scope of <span class="java&#45;quote">&quot;webwork&quot;</span>&#10;   is used.&#10;&lt;/info&gt;&#10;&lt;attribute&gt;&#10;   &lt;name&gt;name&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">true</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;&#10;&lt;attribute&gt;&#10;   &lt;name&gt;value&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;&#10;&lt;attribute&gt;&#10;   &lt;name&gt;scope&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">true</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;</pre>
+</div></div>
+<h3 class="heading3"><a name="CommonTags-Url"> Url</a></h3>
+This tag builds an encoded Url. The simplest version of the tag, &lt;ww:url/&gt;, outputs the relative url of the current page. Here is example output from such a tag:<br/>
+ /jsp/cart.jsp?template=%5BLjava.lang.String%3B%40e29f36&amp;id=%5BLjava.lang.String%3B%40429be9<br/>
+Here is a more verbose example:
+<div class="code"><div class="codeContent">
+<pre>&lt;ww:url value=<span class="java&#45;quote">&quot;www.google.com/search&quot;</span>&gt;&#10;  &lt;ww:param name=<span class="java&#45;quote">&quot;sourceid&quot;</span> value=<span class="java&#45;quote">&quot;&#039;navclient&#039;&quot;</span>/&gt;&#10;  &lt;ww:param name=<span class="java&#45;quote">&quot;ie&quot;</span> value=<span class="java&#45;quote">&quot;&#039;UTF&#45;8&#039;&quot;</span>/&gt;&#10;  &lt;ww:param name=<span class="java&#45;quote">&quot;oe&quot;</span> value=<span class="java&#45;quote">&quot;&#039;UTF&#45;8&#039;&quot;</span>/&gt;&#10;  &lt;ww:param name=<span class="java&#45;quote">&quot;q&quot;</span> value=<span class="java&#45;quote">&quot;&#039;webwork&#039;&quot;</span>/&gt;&#10;&lt;/ww:url&gt;</pre>
+</div></div><br/>
+and the resulting output:<br/>
+<a href="http://www.google.com/search?sourceid=navclient&amp;ie=UTF-8&amp;oe=UTF-8&amp;q=webwork" title="Visit page outside Confluence">&#104;ttp://www.google.com/search?sourceid=navclient&amp;ie=UTF-8&amp;oe=UTF-8&amp;q=webwork</a><p class="paragraph">from webwork.tld:
+<div class="code"><div class="codeContent">
+<pre>&lt;attribute&gt;&#10;   &lt;name&gt;value&lt;/name&gt;&#10;   &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;   &lt;rtexprvalue&gt;<span class="java&#45;keyword">false</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;&#10;&lt;attribute&gt;&#10;    &lt;name&gt;id&lt;/name&gt;&#10;    &lt;required&gt;<span class="java&#45;keyword">false</span>&lt;/required&gt;&#10;    &lt;rtexprvalue&gt;<span class="java&#45;keyword">false</span>&lt;/rtexprvalue&gt;&#10;&lt;/attribute&gt;</pre>
+</div></div></p>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Comparison to Struts.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Component tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Component tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Component tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Componenttag-%26lt%3Bww%3Acomponent%2F%26gt%3B"> &lt;ww:component /&gt; </a></h3></p>Renders an custom UI widget using the specified templates.  Additional objects can be passed in to the template using the param tags.  Objects provided can be retrieve from within the template via $parameters._<em class="emphasis">paramname</em>_.  <p class="paragraph">In the bottom JSP and Velocity samples, two parameters are being passed in to the component.  From within the component, they can be accessed as $parameters.get(&#039;key1&#039;) and $parameters.get(&#039;key2&#039;).  Velocity also allows you reference them as $parameters.key1 and $parameters.key2.</p>Currently, your custom UI components <b class="strong">must</b> be written in Velocity.<p class="paragraph"><b class="strong">Remember:</b> the value params will always be resolved against the OgnlValueStack so if you mean to pass a string literal to your component, make sure to wrap it in quotes i.e. value=&quot;&#039;value1&#039;&quot; otherwise, the the value stack will search for an Object on the stack with a method of getValue1().  (now that i&#039;ve written this, i&#039;m not entirely sure this is the case.  i should verify this manana)</p><b class="strong">Sample Usages</b>
+<div class="code"><div class="codeContent">
+<pre>JSP&#10;    <span class="xml&#45;tag">&lt;ww:component template=<span class="xml&#45;quote">&quot;/my/custom/component.vm&quot;</span>/&gt;</span>&#10;      or&#10;&#10;    <span class="xml&#45;tag">&lt;ww:component template=<span class="xml&#45;quote">&quot;/my/custom/component.vm&quot;</span>&gt;</span>&#10;      <span class="xml&#45;tag">&lt;ww:param name=<span class="xml&#45;quote">&quot;key1&quot;</span> value=<span class="xml&#45;quote">&quot;value1&quot;</span>/&gt;</span>&#10;      <span class="xml&#45;tag">&lt;ww:param name=<span class="xml&#45;quote">&quot;key2&quot;</span> value=<span class="xml&#45;quote">&quot;value2&quot;</span>/&gt;</span>&#10;    <span class="xml&#45;tag">&lt;/ww:component&gt;</span>&#10;&#10;Velocity&#10;    #tag( Component <span class="xml&#45;quote">&quot;template=/my/custom/component.vm&quot;</span> )&#10;&#10;      or&#10;&#10;    #bodytag( Component <span class="xml&#45;quote">&quot;template=/my/custom/component.vm&quot;</span> )&#10;      #param( <span class="xml&#45;quote">&quot;key1&quot;</span>&#160;<span class="xml&#45;quote">&quot;value1&quot;</span> )&#10;      #param( <span class="xml&#45;quote">&quot;key2&quot;</span>&#160;<span class="xml&#45;quote">&quot;value2&quot;</span> )&#10;    #end</pre>
+</div></div><p class="paragraph"><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as field value	</td>
+</tr><tr>
+<td>	label			</td><td>	no			</td><td>	Text used as label in template	</td>
+</tr><tr>
+<td>	labelposition	</td><td>	no			</td><td>	Alignment of label (left,right,center)	</td>
+</tr><tr>
+<td>	required		</td><td>	no			</td><td>	Is field required for form submission	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	<b class="strong">yes</b>			</td><td>	Name of template to use	</td>
+</tr>
+</table></p>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Components.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Configuration.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Cookbook.html

+<html>
+    <head>
+        <title>WebWork 2 : Cookbook</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Cookbook
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h2 style="margin: 4px 0px 4px 0px;" class="heading2"><a name="Cookbook-WebworkCookbook"> Webwork Cookbook</a></h2>
+Welcome to the Webwork Cookbook.  This page is geared towards providing an exchange of information for developers.  Your welcome to share knowledge and any helpful tips here.</p><a href="Accessing application, session, request objects.html" title="Accessing application, session, request objects">Accessing application, session, request objects</a><br/>
+<a href="Iterator tag examples.html" title="Iterator tag examples">Iterator tag examples</a><br/>
+<a href="Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example.html" title="Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example">Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example</a><br/>
+<a href="Value Stack Internals.html" title="Value Stack Internals">Value Stack Internals</a><br/>
+<a href="Using WebWork Components.html" title="Using WebWork Components">Using WebWork Components</a><br/>
+<a href="Webwork 2 file upload handling.html" title="Webwork 2 file upload handling">Webwork 2 file upload handling</a><br/>
+<a href="How do I populate a form bean and get the value using the taglib.html" title="How do I populate a form bean and get the value using the taglib">How do I populate a form bean and get the value using the taglib</a><br/>
+<a href="Interceptor Order.html" title="Interceptor Order">Interceptor Order</a><br/>
+<a href="Tabular inputs with XWorkList.html" title="Tabular inputs with XWorkList">Tabular inputs with XWorkList</a><br/>
+<a href="Using WebWork2 and XWork1 with JSP 2.0 and JSTL 1.1.html" title="Using WebWork2 and XWork1 with JSP 2.0 and JSTL 1.1">Using WebWork2 and XWork1 with JSP 2.0 and JSTL 1.1</a><br/>
+<a href="Webwork 2 skinning.html" title="Webwork 2 skinning">Webwork 2 skinning</a><br/>
+<a href="Transparent web-app I18N.html" title="Transparent web-app I18N">Transparent web-app I18N</a><br/>
+<a href="Webwork 2 HTML form buttons Howto.html" title="Webwork 2 HTML form buttons Howto">Webwork 2 HTML form buttons Howto</a><br/>
+<a href="Using Checkboxes.html" title="Using Checkboxes">Using Checkboxes</a><br/>
+<a href="JFreeChartResult.html" title="JFreeChartResult">JFreeChartResult</a><br/>
+<a href="Webwork reference to OGNL access.html" title="Webwork reference to OGNL access">Webwork reference to OGNL access</a><br/>
+<a href="Application, Session, Request objects in jsp.html" title="Application, Session, Request objects in jsp">Application, Session, Request objects in jsp</a><br/>
+<a href="Application, Session, Request objects in vm.html" title="Application, Session, Request objects in vm">Application, Session, Request objects in vm</a><br/>
+<a href="Describing a bean in velocity.html" title="Describing a bean in velocity">Describing a bean in velocity</a><br/>
+<a href="File Upload Interceptor.html" title="File Upload Interceptor">File Upload Interceptor</a><br/>
+<a href="Resources Available to Velocity Views.html" title="Resources Available to Velocity Views">Resources Available to Velocity Views</a>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Default results.html

                                                     </span>
 				    </div>
 				    <div class="pagesubheading">
-					    This page last changed on Jun 16, 2004 by <font color="#0050B2">casey</font>.
+					    This page last changed on Dec 13, 2004 by <font color="#0050B2">casey</font>.
 				    </div>
 
 				    <p class="paragraph">Webwork has the ability to define a default result type for your actions.  Thus, you don&#039;t have to specify the result-type for results using the default.  If a package extends another  package and you don&#039;t specify a new default result type for the child package, then the parent package default type will be used when the type attribute is not specified in the result tag.</p><div class="code"><div class="codeContent">
-<pre>&lt;&#33;&#45;&#45; parts of xwork.xml  &#45;&#45;&gt;&#10;....&#10;&#10;&lt;result&#45;types&gt;&#10; &lt;result&#45;type name=<span class="java&#45;quote">&quot;dispatcher&quot;</span> class=<span class="java&#45;quote">&quot;com.opensymphony.webwork.dispatcher.ServletDispatcherResult&quot;</span>&#160;<span class="java&#45;keyword">default</span>=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">true</span>&quot;</span>/&gt;&#10; &lt;result&#45;type name=<span class="java&#45;quote">&quot;redirect&quot;</span> class=<span class="java&#45;quote">&quot;com.opensymphony.webwork.dispatcher.ServletRedirectResult&quot;</span>/&gt;&#10; &lt;result&#45;type name=<span class="java&#45;quote">&quot;velocity&quot;</span> class=<span class="java&#45;quote">&quot;com.opensymphony.webwork.dispatcher.VelocityResult&quot;</span>/&gt;&#10;&lt;/result&#45;types&gt;&#10;&#10;....&#10;&#10;&lt;action name=<span class="java&#45;quote">&quot;bar&quot;</span> class=<span class="java&#45;quote">&quot;myPackage.barAction&quot;</span>&gt;&#10;&#10;&lt;&#33;&#45;&#45; <span class="java&#45;keyword">this</span> result uses dispatcher, so you can omit the type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&#160;<span class="java&#45;keyword">if</span> you want &#45;&#45;&gt;&#10;  &lt;result name=<span class="java&#45;quote">&quot;success&quot;</span>&gt;foo.jsp&lt;/result&gt;&#10;&#10;&lt;&#33;&#45;&#45; <span class="java&#45;keyword">this</span> result uses velocity result, so the type needs to be specified &#45;&#45;&gt;&#10;  &lt;result name=<span class="java&#45;quote">&quot;error&quot;</span> type=<span class="java&#45;quote">&quot;velocity&quot;</span>&gt;error.vm&lt;/result&gt;&#10;&#10;&lt;/action&gt;&#10;&#10;....</pre>
+<pre><span class="xml&#45;tag"><span class="xml&#45;comment">&lt;&#33;&#45;&#45; parts of xwork.xml  &#45;&#45;&gt;</span></span>&#10;....&#10;&#10;<span class="xml&#45;tag">&lt;result&#45;types&gt;</span>&#10; <span class="xml&#45;tag">&lt;result&#45;type name=<span class="xml&#45;quote">&quot;dispatcher&quot;</span> class=<span class="xml&#45;quote">&quot;com.opensymphony.webwork.dispatcher.ServletDispatcherResult&quot;</span> default=<span class="xml&#45;quote">&quot;true&quot;</span>/&gt;</span>&#10; <span class="xml&#45;tag">&lt;result&#45;type name=<span class="xml&#45;quote">&quot;redirect&quot;</span> class=<span class="xml&#45;quote">&quot;com.opensymphony.webwork.dispatcher.ServletRedirectResult&quot;</span>/&gt;</span>&#10; <span class="xml&#45;tag">&lt;result&#45;type name=<span class="xml&#45;quote">&quot;velocity&quot;</span> class=<span class="xml&#45;quote">&quot;com.opensymphony.webwork.dispatcher.VelocityResult&quot;</span>/&gt;</span>&#10;<span class="xml&#45;tag">&lt;/result&#45;types&gt;</span>&#10;&#10;....&#10;&#10;<span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;bar&quot;</span> class=<span class="xml&#45;quote">&quot;myPackage.barAction&quot;</span>&gt;</span>&#10;&#10;<span class="xml&#45;tag"><span class="xml&#45;comment">&lt;&#33;&#45;&#45; this result uses dispatcher, so you can omit the type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span> if you want &#45;&#45;&gt;</span></span>&#10;  <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span>&gt;</span>foo.jsp<span class="xml&#45;tag">&lt;/result&gt;</span>&#10;&#10;<span class="xml&#45;tag"><span class="xml&#45;comment">&lt;&#33;&#45;&#45; this result uses velocity result, so the type needs to be specified &#45;&#45;&gt;</span></span>&#10;  <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;error&quot;</span> type=<span class="xml&#45;quote">&quot;velocity&quot;</span>&gt;</span>error.vm<span class="xml&#45;tag">&lt;/result&gt;</span>&#10;&#10;<span class="xml&#45;tag">&lt;/action&gt;</span>&#10;&#10;....</pre>
 </div></div>
 
 				    
 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Dependencies.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Deployment Notes.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Describing a bean in velocity.html

+<html>
+    <head>
+        <title>WebWork 2 : Describing a bean in velocity</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Describing a bean in velocity
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 10, 2004 by <font color="#0050B2">sutter2k</font>.
+				    </div>
+
+				    <p class="paragraph">The follow snippet might be useful during debugging to list the properties inside an<br/>
+arbitary bean. Or for handing to a UI developer that use unaware of the getters/setters inside an object.</p><div class="code"><div class="codeContent">
+<pre>## prints out the property names <span class="java&#45;keyword">for</span> a bean&#10;#macro (describeBean $name) &#10;#set($bu = $webwork.bean(<span class="java&#45;quote">&quot;com.opensymphony.util.BeanUtils&quot;</span>))&#10;	#foreach($propName in $bu.getPropertyNames($name))&#10;		&lt;li&gt;$propName&lt;/li&gt;&#10;	#end&#10;#end</pre>
+</div></div><p class="paragraph">i.e. assuming $obj is a PersonObject that has properties(firstName, lastName, and zip).
+<div class="code"><div class="codeContent">
+<pre>#describeBean($obj)</pre>
+</div></div><br/>
+would print<br/>
+&lt;li&gt;firstName&lt;/li&gt;<br/>
+&lt;li&gt;lastName&lt;/li&gt;<br/>
+&lt;li&gt;zip&lt;/li&gt;</p>One might also expand upon this to build a dynamic interface with via reflection. e.g.
+<div class="code"><div class="codeContent">
+<pre>$webwork.evalute(<span class="java&#45;quote">&quot;$obj.$&#123;propName&#125;&quot;</span>)</pre>
+</div></div><br/>
+
+
+
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Dispatcher Result.html

+<html>
+    <head>
+        <title>WebWork 2 : Dispatcher Result</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Dispatcher Result
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 13, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h4 style="margin: 4px 0px 4px 0px;" class="heading4"><a name="DispatcherResult-Dispatcher"> Dispatcher</a></h4>
+Includes or forwards to a view (usually a jsp). Behind the scenes WebWork will use a RequestDispatcher, where the target servlet/JSP receives the same request/response objects as the original servlet/JSP. Therefore, you can pass data between them using request.setAttribute() &#8211; the WebWork action is available.</p><table class="wikitable">
+<tr>
+<th>Parameters </th><th> Required </th><th> Description </th>
+</tr><tr>
+<td> location </td><td> <b class="strong">yes</b> </td><td>  the location to go to after execution (ex. jsp) </td>
+</tr><tr>
+<td> parse </td><td> no </td><td> true by default. If set to false, the location param will not be parsed for Ognl expressions </td>
+</tr>
+</table>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;location&quot;</span>&gt;</span>foo.jsp<span class="xml&#45;tag">&lt;/param&gt;</span>&#10;<span class="xml&#45;tag">&lt;/result&gt;</span></pre>
+</div></div>
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Documentation.html

                                                     </span>
 				    </div>
 				    <div class="pagesubheading">
-					    This page last changed on Nov 14, 2004 by <font color="#0050B2">plightbo</font>.
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
 				    </div>
 
 				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Documentation-1.Overview"> 1. Overview</a></h3></p><ol>
 <li> <a href="License.html" title="License">License</a></li>
 <li> <a href="Getting Started.html" title="Getting Started">Getting Started</a></li>
 <li> <a href="FAQ.html" title="FAQ">FAQ</a></li>
+<li> <a href="Cookbook.html" title="Cookbook">Cookbook</a></li>
 <li> <a href="Deployment Notes.html" title="Deployment Notes">Deployment Notes</a></li>
 <li> <a href="WebWork Community.html" title="WebWork Community">WebWork Community</a><ol>
 <li> <a href="Mailing lists.html" title="Mailing Lists">Mailing lists</a></li>
 <li> <a href="Projects Using WebWork.html" title="Projects Using WebWork">Projects Using WebWork</a></li>
 <li> <a href="Comparison to Struts.html" title="Comparison to Struts">Comparison to Struts</a></li>
 <li> <a href="WebFlow.html" title="WebFlow">WebFlow</a> - the WebWork graphical chart tool</li>
+<li> <a href="App Servers.html" title="App Servers">App Servers</a> - tips and tricks for various application servers</li>
 </ol>
 <h3 class="heading3"><a name="Documentation-2.WebWorkversions"> 2. WebWork versions</a></h3>
 
 <ul class="star">
-<li> Current Release<ul class="star">
-<li> Release Notes<ul class="star">
-<li> <a href="Release Notes - 2.1.6.html" title="Release Notes - 2.1.6">Release Notes - 2.1.6</a></li>
-<li> <a href="Release Notes - 2.1.5.html" title="Release Notes - 2.1.5">Release Notes - 2.1.5</a></li>
-<li> <a href="Release Notes - 2.1.4.html" title="Release Notes - 2.1.4">Release Notes - 2.1.4</a></li>
-<li> <a href="Release Notes - 2.1.3.html" title="Release Notes - 2.1.3">Release Notes - 2.1.3</a></li>
-<li> <a href="Release Notes - 2.1.2.html" title="Release Notes - 2.1.2">Release Notes - 2.1.2</a></li>
-<li> <a href="Release Notes - 2.1.1.html" title="Release Notes - 2.1.1">Release Notes - 2.1.1</a></li>
-<li> <a href="Release Notes - 2.1.html" title="Release Notes - 2.1">Release Notes - 2.1</a></li>
-</ul></li>
+<li> Current release - <a href="WebWork 2.1.7.html" title="WebWork 2.1.7">WebWork 2.1.7</a></li>
+<li> <a href="Previous releases.html" title="Previous releases">Previous releases</a> - information on previous releases of WebWork</li>
 <li> <a href="Dependencies.html" title="Dependencies">Dependencies</a></li>
-</ul></li>
-<li> Upgrading from previous versions<ul class="star">
-<li> <a href="Upgrading from 2.1.5.html" title="Upgrading from 2.1.5">Upgrading from 2.1.5</a></li>
-<li> <a href="Upgrading from 2.1.4.html" title="Upgrading from 2.1.4">Upgrading from 2.1.4</a></li>
-<li> <a href="Upgrading from 2.1.3.html" title="Upgrading from 2.1.3">Upgrading from 2.1.3</a></li>
-<li> <a href="Upgrading from 2.1.2.html" title="Upgrading from 2.1.2">Upgrading from 2.1.2</a></li>
-<li> <a href="Upgrading from 2.1.1.html" title="Upgrading from 2.1.1">Upgrading from 2.1.1</a></li>
-<li> <a href="Upgrading from 2.1.html" title="Upgrading from 2.1">Upgrading from 2.1</a></li>
-<li> <a href="Upgrading from 2.0.html" title="Upgrading from 2.0">Upgrading from 2.0</a></li>
-<li> <a href="Upgrading from 1.4.html" title="Upgrading from 1.4">Upgrading from 1.4</a></li>
-</ul></li>
 </ul>
 <h3 class="heading3"><a name="Documentation-3.Tutorial"> 3. Tutorial</a></h3>
 <ol>
 </ol>
 <h3 class="heading3"><a name="Documentation-4.ReferenceGuide"> 4. Reference Guide</a></h3>
 <ol>
-<li> <a href="Configuration.html" title="Configuration">Configuration</a>&#160;<a name="Documentation-Configuration"></a></li>
+<li> <a href="Configuration.html" title="Configuration">Configuration</a></li>
+<li> <a href="Interceptors.html" title="Interceptors">Interceptors</a></li>
+<li> <a href="Action Chaining.html" title="Action Chaining">Action Chaining</a></li>
 <li> <a href="Inversion of Control.html" title="Inversion of Control">Inversion of Control</a></li>
 <li> <a href="JSP Tags.html" title="JSP Tags">JSP Tags</a></li>
 <li> <a href="JSP Expression Language Comparison with WebWork 1.x.html" title="JSP Expression Language Comparison with WebWork 1.x">JSP Expression Language Comparison with WebWork 1.x</a></li>
-<li> <a href="Resources Available to Velocity Views.html" title="Resources Available to Velocity Views">Resources Available to Velocity Views</a></li>
+<li> <a href="WebWork Freemarker Support.html" title="WebWork Freemarker Support">WebWork Freemarker Support</a></li>
 <li> <a href="Result Types.html" title="Result Types">Result Types</a></li>
 <li> <a href="Type Conversion.html" title="Type Conversion">Type Conversion</a></li>
 <li> <a href="Validation.html" title="Validation">Validation</a></li>
 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/ExecuteAndWaitInterceptor.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example.html

+<html>
+    <head>
+        <title>WebWork 2 : Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Exposing webwork objects to JSTL, with a JSTL and DisplayTag Example
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 30, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <div class="code"><div class="codeContent">
+<pre>&lt;ww:set name=<span class="java&#45;quote">&quot;jobz&quot;</span> value=<span class="java&#45;quote">&quot;jobs&quot;</span> scope=<span class="java&#45;quote">&quot;request&quot;</span> /&gt;</pre>
+</div></div><br/>
+The full example below shows a webwork variable &quot;jobs&quot; being exposed as &quot;jobz&quot; to the request scope and being used with jstl and the display tag.
+<div class="code"><div class="codeContent">
+<pre>&lt;&#37;&#64; taglib uri=<span class="java&#45;quote">&quot;/WEB&#45;INF/tlds/c.tld&quot;</span> prefix=<span class="java&#45;quote">&quot;c&quot;</span> &#37;&gt;&#10;&lt;&#37;&#64; taglib uri=<span class="java&#45;quote">&quot;/WEB&#45;INF/tlds/fmt.tld&quot;</span> prefix=<span class="java&#45;quote">&quot;fmt&quot;</span> &#37;&gt;&#10;&lt;&#37;&#64; taglib uri=<span class="java&#45;quote">&quot;/WEB&#45;INF/tlds/displaytag&#45;el&#45;12.tld&quot;</span> prefix=<span class="java&#45;quote">&quot;display&quot;</span> &#37;&gt;&#10;&lt;&#37;&#64; taglib uri=<span class="java&#45;quote">&quot;/WEB&#45;INF/tlds/webwork.tld&quot;</span> prefix=<span class="java&#45;quote">&quot;ww&quot;</span> &#37;&gt;&#10;&#10;&lt;ww:set name=<span class="java&#45;quote">&quot;jobz&quot;</span> value=<span class="java&#45;quote">&quot;jobs&quot;</span> scope=<span class="java&#45;quote">&quot;request&quot;</span> /&gt;&#10;&#10;&lt;h1&gt;&lt;fmt:message key=<span class="java&#45;quote">&quot;title.listAllJobs&quot;</span>/&gt;&lt;/h1&gt;&#10;&lt;display:table name=<span class="java&#45;quote">&quot;jobz&quot;</span> class=<span class="java&#45;quote">&quot;simple&quot;</span> id=<span class="java&#45;quote">&quot;row&quot;</span> &gt;&#10;  &lt;display:column  titleKey=<span class="java&#45;quote">&quot;label.global.actions&quot;</span> &gt;&#10;  		&lt;c:url <span class="java&#45;keyword">var</span>=<span class="java&#45;quote">&quot;viewurl&quot;</span> value=<span class="java&#45;quote">&quot;/viewJobDetail.action&quot;</span>&gt;&#10;			&lt;c:param name=<span class="java&#45;quote">&quot;name&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.name&#125;&quot;</span>/&gt;&#10;  			&lt;c:param name=<span class="java&#45;quote">&quot;groupName&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.group&#125;&quot;</span>/&gt;&#10;		&lt;/c:url&gt;&#10;  		&lt;c:url <span class="java&#45;keyword">var</span>=<span class="java&#45;quote">&quot;exeurl&quot;</span> value=<span class="java&#45;quote">&quot;/viewJobDetail.action&quot;</span>&gt;&#10;			&lt;c:param name=<span class="java&#45;quote">&quot;name&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.name&#125;&quot;</span>/&gt;&#10;  			&lt;c:param name=<span class="java&#45;quote">&quot;groupName&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.group&#125;&quot;</span>/&gt;&#10;  			&lt;c:param name=<span class="java&#45;quote">&quot;executeJobAction&quot;</span> value=<span class="java&#45;quote">&quot;execute&quot;</span>/&gt;&#10;		&lt;/c:url&gt;&#10;  		&lt;c:url <span class="java&#45;keyword">var</span>=<span class="java&#45;quote">&quot;editurl&quot;</span> value=<span class="java&#45;quote">&quot;/viewJobDetail.action&quot;</span>&gt;&#10;			&lt;c:param name=<span class="java&#45;quote">&quot;name&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.name&#125;&quot;</span>/&gt;&#10;  			&lt;c:param name=<span class="java&#45;quote">&quot;groupName&quot;</span> value=<span class="java&#45;quote">&quot;$&#123;row.group&#125;&quot;</span>/&gt;&#10;  			&lt;c:param name=<span class="java&#45;quote">&quot;editAction&quot;</span> value=<span class="java&#45;quote">&quot;edit&quot;</span>/&gt;&#10;		&lt;/c:url&gt;&#10;	&lt;a href=&#039;&lt;c:out value=<span class="java&#45;quote">&quot;$&#123;viewurl&#125;&quot;</span>/&gt;&#039;&gt;&lt;fmt:message key=<span class="java&#45;quote">&quot;label.global.view&quot;</span>/&gt;&lt;/a&gt; |&#10;	&lt;a href=&#039;&lt;c:out value=<span class="java&#45;quote">&quot;$&#123;editurl&#125;&quot;</span>/&gt;&#039;&gt;&lt;fmt:message key=<span class="java&#45;quote">&quot;label.global.edit&quot;</span>/&gt;&lt;/a&gt; |&#10;	&lt;a href=&#039;&lt;c:out value=<span class="java&#45;quote">&quot;$&#123;exeurl&#125;&quot;</span>/&gt;&#039;&gt;&lt;fmt:message key=<span class="java&#45;quote">&quot;label.global.execute&quot;</span>/&gt;&lt;/a&gt; &nbsp;&#10;  &lt;/display:column&gt; &#10;&#10;  &lt;display:column property=<span class="java&#45;quote">&quot;group&quot;</span> titleKey=<span class="java&#45;quote">&quot;label.job.group&quot;</span> sortable=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">true</span>&quot;</span>   /&gt;&#10;  &lt;display:column property=<span class="java&#45;quote">&quot;name&quot;</span> titleKey=<span class="java&#45;quote">&quot;label.job.name&quot;</span> sortable=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">true</span>&quot;</span>  /&gt;&#10;  &lt;display:column property=<span class="java&#45;quote">&quot;description&quot;</span> titleKey=<span class="java&#45;quote">&quot;label.job.description&quot;</span> /&gt;&#10;  &lt;display:column property=<span class="java&#45;quote">&quot;jobClass&quot;</span> titleKey=<span class="java&#45;quote">&quot;label.job.jobClass&quot;</span> sortable=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">true</span>&quot;</span>  /&gt;&#10;&#10;&lt;/display:table&gt;</pre>
+</div></div><br/>
+Please note, at the time of this writing the &quot;titleKey&quot; attribute of the display tag&#039;s column tag is not yet released into a final version. It is a feature that is currently, only available through cvs.
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/FAQ.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/File Upload Interceptor.html

+<html>
+    <head>
+        <title>WebWork 2 : File Upload Interceptor</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : File Upload Interceptor
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Nov 30, 2004 by <font color="#0050B2">jcarreira</font>.
+				    </div>
+
+				    <p class="paragraph">We can create a nice <b class="strong">reusable</b> Interceptor  which can hadle file uploads absolutely transparently and Action will not know anything about web-app and just gets its files:
+<ol>
+<li> <b class="strong">Before</b> further invocation it scans multipart request for files, and if content-type and size is acceptable it puts collected java.io.File instance to invocationContext.parameters Map named according to their &lt;input&gt; names.</li>
+<li> In Action we can just declare properties of type File which will be set by parameters Inteceptor, in execute() we can move file with aFile.renameTo(...) to the right place, or just read the it and leave alone.</li>
+<li> <b class="strong">After</b> invocation it removes all uploaded files via aFile.delete(). (Action should not care for iles uploaded waste disk space)</li>
+</ol><br/>
+This Interceptor may be configured to filter files with certain mime type or size, and of course to be applied to any action(s) or even included into stack.</p><div class="code"><div class="codeContent">
+<pre>&lt;interceptor name=<span class="java&#45;quote">&quot;fileUpload&quot;</span> class=<span class="java&#45;quote">&quot;neuro.util.xwork.FileUploadInterceptor&quot;</span>&gt;&#10;    &lt;param name=<span class="java&#45;quote">&quot;allowedTypes&quot;</span>&gt;image/jpeg&lt;/param&gt;&#10;    &lt;param name=<span class="java&#45;quote">&quot;maximumSize&quot;</span>&gt;8192&lt;/param&gt;&#10;&lt;/interceptor&gt;</pre>
+</div></div><p class="paragraph">This removes (duplicate) web-app specific code from Action and gives ua a nice reusable component that handles 90% of all typical file upload tasks. Neat. Also illustrates power of Interceptor concept of <a href="http://wiki.opensymphony.com//display/XW/XWork" title="XWork">XW:XWork</a>/<a href="WebWork.html" title="WebWork">WW:WebWork</a>. Try to do this in Struts. 8)</p>Things to improve: error handling, reporting &amp; i18n.<br/>
+
+<div class="code"><div class="codeContent">
+<pre><span class="java&#45;comment">//FileUploadInterceptor.java</span>&#10;&#10;<span class="java&#45;keyword">package</span> neuro.util.xwork;&#10;&#10;<span class="java&#45;keyword">import</span> com.opensymphony.webwork.ServletActionContext;&#10;<span class="java&#45;keyword">import</span> com.opensymphony.webwork.dispatcher.multipart.MultiPartRequestWrapper;&#10;<span class="java&#45;keyword">import</span> com.opensymphony.xwork.ActionInvocation;&#10;<span class="java&#45;keyword">import</span> com.opensymphony.xwork.interceptor.Interceptor;&#10;<span class="java&#45;keyword">import</span> org.apache.commons.logging.Log;&#10;<span class="java&#45;keyword">import</span> org.apache.commons.logging.LogFactory;&#10;&#10;<span class="java&#45;keyword">import</span> java.io.File;&#10;<span class="java&#45;keyword">import</span> java.util.Collection;&#10;<span class="java&#45;keyword">import</span> java.util.Enumeration;&#10;<span class="java&#45;keyword">import</span> java.util.Iterator;&#10;&#10;/&#42;&#42;&#10; &#42;&#10; &#42;/&#10;<span class="java&#45;keyword">public</span> class FileUploadInterceptor <span class="java&#45;keyword">implements</span> Interceptor &#123;&#10;    <span class="java&#45;keyword">protected</span>&#160;<span class="java&#45;keyword">static</span>&#160;<span class="java&#45;keyword">final</span> Log log = LogFactory.getLog(FileUploadInterceptor.class);&#10;&#10;    <span class="java&#45;keyword">protected</span>&#160;<span class="java&#45;object">String</span> allowedTypes;&#10;    <span class="java&#45;keyword">protected</span>&#160;<span class="java&#45;object">String</span> disallowedTypes;&#10;    <span class="java&#45;keyword">protected</span>&#160;<span class="java&#45;object">Long</span> maximumSize;&#10;&#10;    /&#42;&#42;&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> FileUploadInterceptor() &#123;&#10;        <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;<span class="java&#45;keyword">new</span> FileUploadInterceptor()&quot;</span>);&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> void init() &#123;&#10;        <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;init()&quot;</span>);&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> void destroy() &#123;&#10;        <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;destroy()&quot;</span>);&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42; list of allowed mime&#45;types, optional&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> void setAllowedTypes(<span class="java&#45;object">String</span> allowedTypes) &#123;&#10;        <span class="java&#45;keyword">this</span>.allowedTypes = allowedTypes;&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42; list of diallowed mime&#45;types, optional&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> void setDisallowedTypes(<span class="java&#45;object">String</span> disallowedTypes) &#123;&#10;        <span class="java&#45;keyword">this</span>.disallowedTypes = disallowedTypes;&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42; maximum file Size, optional&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span> void setMaximumSize(<span class="java&#45;object">Long</span> maximumSize) &#123;&#10;        <span class="java&#45;keyword">this</span>.maximumSize = maximumSize;&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42;&#10;     &#42; TODO: i18n&#33;&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span>&#160;<span class="java&#45;object">String</span> intercept(ActionInvocation invocation) <span class="java&#45;keyword">throws</span> Exception &#123;&#10;        <span class="java&#45;keyword">if</span> (&#33;(ServletActionContext.getRequest() <span class="java&#45;keyword">instanceof</span> MultiPartRequestWrapper)) &#123;&#10;            <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;bypass &quot;</span> &#43; invocation.getProxy().getNamespace() &#43; <span class="java&#45;quote">&quot;/&quot;</span> &#43; invocation.getProxy().getActionName());&#10;            <span class="java&#45;keyword">return</span> invocation.invoke();&#10;        &#125;&#10;        MultiPartRequestWrapper multiWrapper = (MultiPartRequestWrapper) ServletActionContext.getRequest();&#10;        <span class="java&#45;keyword">if</span> (multiWrapper.hasErrors()) &#123;&#10;            Collection errors = multiWrapper.getErrors();&#10;            Iterator i = errors.iterator();&#10;            <span class="java&#45;keyword">while</span> (i.hasNext()) &#123;&#10;                <span class="java&#45;comment">//how to get to addError() from here&#63;</span>&#10;                log.error((<span class="java&#45;object">String</span>) i.next());&#10;            &#125;&#10;        &#125;&#10;&#10;        Enumeration e = multiWrapper.getFileNames();&#10;&#10;        <span class="java&#45;comment">//Bind allowed Files</span>&#10;        <span class="java&#45;keyword">while</span> (e.hasMoreElements()) &#123;&#10;            <span class="java&#45;comment">// get the value of <span class="java&#45;keyword">this</span> input tag</span>&#10;            <span class="java&#45;object">String</span> inputName = (<span class="java&#45;object">String</span>) e.nextElement();&#10;            <span class="java&#45;comment">// get the content type</span>&#10;            <span class="java&#45;object">String</span> contentType = multiWrapper.getContentType(inputName);&#10;            <span class="java&#45;comment">// get the name of the file from the input tag</span>&#10;            <span class="java&#45;object">String</span> fileName = multiWrapper.getFilesystemName(inputName);&#10;            <span class="java&#45;comment">// Get a File object <span class="java&#45;keyword">for</span> the uploaded File</span>&#10;            File file = multiWrapper.getFile(inputName);&#10;&#10;            log.info(<span class="java&#45;quote">&quot;file &quot;</span> &#43; inputName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; contentType &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; fileName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file);&#10;&#10;            <span class="java&#45;comment">// If it&#039;s <span class="java&#45;keyword">null</span> the upload failed</span>&#10;            <span class="java&#45;keyword">if</span> (file == <span class="java&#45;keyword">null</span>) &#123;&#10;                log.error(<span class="java&#45;quote">&quot;Error uploading: &quot;</span> &#43; fileName);&#10;            &#125; <span class="java&#45;keyword">else</span> &#123;&#10;                <span class="java&#45;keyword">if</span> (acceptFile(file, contentType, inputName))&#10;                    invocation.getInvocationContext().getParameters().put(inputName, file);&#10;                <span class="java&#45;comment">// Do additional processing/logging...</span>&#10;            &#125;&#10;        &#125;&#10;&#10;        <span class="java&#45;comment">//Invoke Action</span>&#10;        <span class="java&#45;object">String</span> result = invocation.invoke();&#10;&#10;        <span class="java&#45;comment">//Cleanup</span>&#10;        e = multiWrapper.getFileNames();&#10;        <span class="java&#45;keyword">while</span> (e.hasMoreElements()) &#123;&#10;            <span class="java&#45;object">String</span> inputValue = (<span class="java&#45;object">String</span>) e.nextElement();&#10;            File file = multiWrapper.getFile(inputValue);&#10;            log.info(<span class="java&#45;quote">&quot;removing file &quot;</span> &#43; inputValue &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file);&#10;            <span class="java&#45;keyword">if</span> (file &#33;= <span class="java&#45;keyword">null</span> &amp;&amp; file.isFile()) file.delete();&#10;        &#125;&#10;&#10;        <span class="java&#45;keyword">return</span> result;&#10;    &#125;&#10;&#10;    <span class="java&#45;comment">//overload <span class="java&#45;keyword">this</span> method to modify accept behaviour</span>&#10;    <span class="java&#45;comment">//TODO: addErrors&#63;</span>&#10;    <span class="java&#45;comment">//TODO: i18n&#33;</span>&#10;    <span class="java&#45;keyword">protected</span>&#160;<span class="java&#45;object">boolean</span> acceptFile(File file, <span class="java&#45;object">String</span> contentType, <span class="java&#45;object">String</span> inputName) &#123;&#10;        <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;checking&quot;</span> &#43; inputName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.getName() &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.length() &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; contentType);&#10;        <span class="java&#45;keyword">if</span> (maximumSize &#33;= <span class="java&#45;keyword">null</span> &amp;&amp; maximumSize.longValue() &lt; file.length())&#10;            log.error(<span class="java&#45;quote">&quot;file is too <span class="java&#45;object">long</span>:&quot;</span> &#43; inputName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.getName() &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.length());&#10;        <span class="java&#45;keyword">else</span>&#160;<span class="java&#45;keyword">if</span> (allowedTypes &#33;= <span class="java&#45;keyword">null</span> &amp;&amp; allowedTypes.indexOf(contentType) &lt; 0)&#10;            log.error(<span class="java&#45;quote">&quot;Content&#45;Type not allowed:&quot;</span> &#43; inputName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.getName() &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; contentType);&#10;        <span class="java&#45;keyword">else</span>&#160;<span class="java&#45;keyword">if</span> (disallowedTypes &#33;= <span class="java&#45;keyword">null</span> &amp;&amp; disallowedTypes.indexOf(contentType) &gt;= 0)&#10;            log.error(<span class="java&#45;quote">&quot;Content&#45;Type disallowed:&quot;</span> &#43; inputName &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; file.getName() &#43; <span class="java&#45;quote">&quot; &quot;</span> &#43; contentType);&#10;        <span class="java&#45;comment">//somehow we need to set error messages here...</span>&#10;        <span class="java&#45;keyword">else</span> &#123;&#10;            <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;accepted&quot;</span>);&#10;            <span class="java&#45;keyword">return</span>&#160;<span class="java&#45;keyword">true</span>;&#10;        &#125;&#10;        <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;not accepted&quot;</span>);&#10;        <span class="java&#45;keyword">return</span>&#160;<span class="java&#45;keyword">false</span>;&#10;    &#125;&#10;&#10;&#125;</pre>
+</div></div><br/>
+Example Page code:
+<div class="code"><div class="codeContent">
+<pre>&lt;form .... enctype=<span class="java&#45;quote">&quot;multipart/form&#45;data&quot;</span>&gt;&#10;    ....&#10;    select user icon:&#10;    &lt;input type=<span class="java&#45;quote">&quot;file&quot;</span> name=<span class="java&#45;quote">&quot;picture&quot;</span>&gt;&#10;&lt;form&gt;</pre>
+</div></div><br/>
+Example Action code:
+<div class="code"><div class="codeContent">
+<pre>/&#42;&#42;&#10;     &#42;/&#10;    <span class="java&#45;keyword">protected</span> File picture;&#10;&#10;    <span class="java&#45;keyword">public</span> void setPicture(File picture) &#123;&#10;        <span class="java&#45;keyword">this</span>.picture = picture;&#10;    &#125;&#10;&#10;    /&#42;&#42;&#10;     &#42;/&#10;    <span class="java&#45;keyword">public</span>&#160;<span class="java&#45;object">String</span> execute() &#123;&#10;        <span class="java&#45;keyword">if</span> (picture &#33;= <span class="java&#45;keyword">null</span> &amp;&amp; picture.isFile()) &#123;&#10;            <span class="java&#45;keyword">final</span> File target = <span class="java&#45;keyword">new</span> File(<span class="java&#45;quote">&quot;...&quot;</span>);&#10;            <span class="java&#45;keyword">if</span> (target.exists()) &#123;&#10;                <span class="java&#45;keyword">if</span> (log.isDebugEnabled()) log.debug(<span class="java&#45;quote">&quot;Removed previous picture version&quot;</span>);&#10;                target.delete();&#10;            &#125;&#10;            picture.renameTo(target);&#10;        &#125;&#10;    &#125;</pre>
+</div></div><p class="paragraph"><em class="emphasis">If this Interceptor considered generally useful - may be it will be incorporated into WW2 codebase?</em></p>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/File tag.html

+<html>
+    <head>
+        <title>WebWork 2 : File tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : File tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Filetag-%26lt%3Bww%3Afile%2F%26gt%3B"> &lt;ww:file /&gt;  </a></h3></p>File upload form tag.<p class="paragraph"><b class="strong">Sample Usages</b>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;ww:file name=<span class="xml&#45;quote">&quot;&#039;uploadedFile&#039;&quot;</span> /&gt;</span></pre>
+</div></div></p><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as field value	</td>
+</tr><tr>
+<td>	label			</td><td>	no			</td><td>	Text used as label in template	</td>
+</tr><tr>
+<td>	labelposition	</td><td>	no			</td><td>	Alignment of label (left,right,center)	</td>
+</tr><tr>
+<td>	required		</td><td>	no			</td><td>	Is field required for form submission	</td>
+</tr><tr>
+<td>	accept			</td><td>	no			</td><td>	HTML accept attribute: list of file types to accept	</td>
+</tr><tr>
+<td>	onchange		</td><td>	no			</td><td>	HTML onchange attribute	</td>
+</tr><tr>
+<td>	onclick 		</td><td>	no			</td><td>	HTML onclick attribute	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use	</td>
+</tr>
+</table>
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Form tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Form tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Form tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Formtag-%26lt%3Bww%3Aform%2F%26gt%3B"> &lt;ww:form /&gt;  </a></h3></p>An HTML form. <p class="paragraph"><b class="strong">Sample Usages</b>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;ww:form name=<span class="xml&#45;quote">&quot;&#039;myForm&#039;&quot;</span> action=<span class="xml&#45;quote">&quot;&#039;submit.action&#039;&quot;</span>&gt;</span>&#10;...&#10;<span class="xml&#45;tag">&lt;/ww:form&gt;</span></pre>
+</div></div></p><div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;ww:form name=<span class="xml&#45;quote">&quot;&#039;myForm&#039;&quot;</span> action=<span class="xml&#45;quote">&quot;&#039;submit&#039;&quot;</span> namespace=<span class="xml&#45;quote">&quot;&#039;/foo&#039;&quot;</span>&gt;</span>&#10;...&#10;<span class="xml&#45;tag">&lt;/ww:form&gt;</span></pre>
+</div></div>
+<p class="paragraph"><b class="strong">Attributes</b>
+<table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as field value	</td>
+</tr><tr>
+<td>	openTemplate	</td><td>	no			</td><td>	Template to use for the open form tag	</td>
+</tr><tr>
+<td>	action			</td><td>	<b class="strong">yes</b>		</td><td>	HTML action attribute </td>
+</tr><tr>
+<td>	namespace		</td><td>	no			</td><td>	Namespace of action</td>
+</tr><tr></p></tr><tr>
+<td>	target			</td><td>	no		    </td><td>	HTML target attribute </td><td>	</td>
+</tr><tr>
+<td>	method			</td><td>	no			</td><td>	&#039;GET&#039; or &#039;POST&#039;	</td>
+</tr><tr>
+<td>	enctype			</td><td>	no			</td><td>	HTML enctype attribute	</td>
+</tr><tr>
+<td>	validate		</td><td>	no			</td><td>	Whether to use client-side validation	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use for the closing form tag	</td>
+</tr>
+</table><br/>
+<b class="strong">Note</b>: The <b class="strong">action</b> attribute works in two different ways. The original (and deprecated) format is shown in the first sample usage. The newer format allows you to specify just the action name (as well as a namespace, if there is one) as defined in xwork.xml. This is <b class="strong">required</b> if you wish to do any form of <a href="Client-Side Validation.html" title="Client-Side Validation">Client-Side Validation</a><br/>
+
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/FreeMarker Result.html

+<html>
+    <head>
+        <title>WebWork 2 : FreeMarker Result</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : FreeMarker Result
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">cameronbraid</font>.
+				    </div>
+
+				    <p class="paragraph"><h4 style="margin: 4px 0px 4px 0px;" class="heading4"><a name="FreeMarkerResult-FreeMarker"> FreeMarker </a></h4>
+<table class="wikitable">
+<tr>
+<th>Parameters </th><th> Required </th><th> Description </th>
+</tr><tr>
+<td> location </td><td> <b class="strong">yes</b></td><td>  the <a href="#FreeMarkerResult-locationofthetemplate" title="location of the template on FreeMarker Result">location of the template</a> to process  </td>
+</tr><tr>
+<td> parse </td><td> no </td><td> true by default. If set to false, the location param will not be parsed for Ognl expressions </td>
+</tr><tr>
+<td> contentType </td><td> no </td><td> defaults to &quot;text/html&quot; unless specified </td>
+</tr>
+</table>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;freemarker&quot;</span>&gt;</span>foo.ftl<span class="xml&#45;tag">&lt;/result&gt;</span></pre>
+</div></div></p><a name="FreeMarkerResult-locationofthetemplate"></a>
+<h4 class="heading4"><a name="FreeMarkerResult-LocationoftheTemplate"> Location of the Template</a></h4>
+The FreemarkarManager class configures the template loaders so that the template location can be either
+<ul class="star">
+<li> relative to the web root folder.  eg /WEB-INF/views/home.ftl</li>
+<li> a classpath resuorce. eg com/company/web/views/home.ftl</li>
+</ul>
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/Getting Started.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Global results.html

                                                     </span>
 				    </div>
 				    <div class="pagesubheading">
-					    This page last changed on Jun 16, 2004 by <font color="#0050B2">casey</font>.
+					    This page last changed on Dec 13, 2004 by <font color="#0050B2">casey</font>.
 				    </div>
 
 				    <p class="paragraph">Global results allows you to define result mappings which will be used as defaults for all action configurations and will be automatically inherited by all action configurations in this package and all packages which extend this package.  In other words, if you have the same result specified within multiple actions, then you can define it as a global result.
 <h5 class="heading5"><a name="Globalresults-globalresultsexample"> global results example</a></h5>
 <div class="code"><div class="codeContent">
-<pre>&lt;<span class="java&#45;keyword">package</span> name=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">default</span>&quot;</span>&gt;&#10;....&#10;&lt;global&#45;results&gt; &#10;    &lt;result name=<span class="java&#45;quote">&quot;login&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt; &#10;        &lt;param name=<span class="java&#45;quote">&quot;location&quot;</span>&gt;login.jsp&lt;/param&gt; &#10;    &lt;/result&gt; &#10;&lt;/global&#45;results&gt; &#10;&lt;action name=<span class="java&#45;quote">&quot;foo&quot;</span>  class=<span class="java&#45;quote">&quot;mypackage.fooAction&quot;</span>&gt;&#10;    &lt;result name=<span class="java&#45;quote">&quot;success&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;bar.jsp&lt;/result&gt; &#10;&lt;/action&gt;&#10;&lt;action name=<span class="java&#45;quote">&quot;submitForm&quot;</span>  class=<span class="java&#45;quote">&quot;mypackage.submitFormAction&quot;</span>&gt;&#10;    &lt;result name=<span class="java&#45;quote">&quot;success&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;submitSuccess.jsp&lt;/result&gt; &#10;&lt;/action&gt;&#10;...&#10;&lt;/<span class="java&#45;keyword">package</span>&gt;</pre>
+<pre><span class="xml&#45;tag">&lt;package name=<span class="xml&#45;quote">&quot;default&quot;</span>&gt;</span>&#10;....&#10;<span class="xml&#45;tag">&lt;global&#45;results&gt;</span> &#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;login&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span> &#10;        <span class="xml&#45;tag">&lt;param name=<span class="xml&#45;quote">&quot;location&quot;</span>&gt;</span>login.jsp<span class="xml&#45;tag">&lt;/param&gt;</span> &#10;    <span class="xml&#45;tag">&lt;/result&gt;</span> &#10;<span class="xml&#45;tag">&lt;/global&#45;results&gt;</span> &#10;<span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;foo&quot;</span>  class=<span class="xml&#45;quote">&quot;mypackage.fooAction&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>bar.jsp<span class="xml&#45;tag">&lt;/result&gt;</span> &#10;<span class="xml&#45;tag">&lt;/action&gt;</span>&#10;<span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;submitForm&quot;</span>  class=<span class="xml&#45;quote">&quot;mypackage.submitFormAction&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>submitSuccess.jsp<span class="xml&#45;tag">&lt;/result&gt;</span> &#10;<span class="xml&#45;tag">&lt;/action&gt;</span>&#10;...&#10;<span class="xml&#45;tag">&lt;/package&gt;</span></pre>
 </div></div><br/>
 Same thing
 <div class="code"><div class="codeContent">
-<pre>&lt;<span class="java&#45;keyword">package</span> name=<span class="java&#45;quote">&quot;<span class="java&#45;keyword">default</span>&quot;</span>&gt;&#10;....&#10;&lt;action name=<span class="java&#45;quote">&quot;foo&quot;</span>  class=<span class="java&#45;quote">&quot;mypackage.fooAction&quot;</span>&gt;&#10;    &lt;result name=<span class="java&#45;quote">&quot;success&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;bar.jsp&lt;/result&gt; &#10;    &lt;result name=<span class="java&#45;quote">&quot;login&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;login.jsp&lt;/result&gt; &#10;&lt;/action&gt;&#10;&lt;action name=<span class="java&#45;quote">&quot;submitForm&quot;</span>  class=<span class="java&#45;quote">&quot;mypackage.submitFormAction&quot;</span>&gt;&#10;    &lt;result name=<span class="java&#45;quote">&quot;success&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;submitSuccess.jsp&lt;/result&gt;&#10;    &lt;result name=<span class="java&#45;quote">&quot;login&quot;</span> type=<span class="java&#45;quote">&quot;dispatcher&quot;</span>&gt;login.jsp&lt;/result&gt;  &#10;&lt;/action&gt;&#10;...&#10;&lt;/<span class="java&#45;keyword">package</span>&gt;</pre>
+<pre><span class="xml&#45;tag">&lt;package name=<span class="xml&#45;quote">&quot;default&quot;</span>&gt;</span>&#10;....&#10;<span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;foo&quot;</span>  class=<span class="xml&#45;quote">&quot;mypackage.fooAction&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>bar.jsp<span class="xml&#45;tag">&lt;/result&gt;</span> &#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;login&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>login.jsp<span class="xml&#45;tag">&lt;/result&gt;</span> &#10;<span class="xml&#45;tag">&lt;/action&gt;</span>&#10;<span class="xml&#45;tag">&lt;action name=<span class="xml&#45;quote">&quot;submitForm&quot;</span>  class=<span class="xml&#45;quote">&quot;mypackage.submitFormAction&quot;</span>&gt;</span>&#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;success&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>submitSuccess.jsp<span class="xml&#45;tag">&lt;/result&gt;</span>&#10;    <span class="xml&#45;tag">&lt;result name=<span class="xml&#45;quote">&quot;login&quot;</span> type=<span class="xml&#45;quote">&quot;dispatcher&quot;</span>&gt;</span>login.jsp<span class="xml&#45;tag">&lt;/result&gt;</span>  &#10;<span class="xml&#45;tag">&lt;/action&gt;</span>&#10;...&#10;<span class="xml&#45;tag">&lt;/package&gt;</span></pre>
 </div></div></p>
 
 				    
 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Hibernate.html

 				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
 			</tr>
 		    <tr>
-			    <td align="center"><font color="grey">Document generated by Confluence on Nov 14, 2004 19:46</font></td>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
 		    </tr>
 	    </table>
     </body>

File docs/wikidocs/Hidden tag.html

+<html>
+    <head>
+        <title>WebWork 2 : Hidden tag</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <div class="pageheader">
+					    <span class="pagetitle">
+                            WebWork 2 : Hidden tag
+                                                    </span>
+				    </div>
+				    <div class="pagesubheading">
+					    This page last changed on Dec 14, 2004 by <font color="#0050B2">casey</font>.
+				    </div>
+
+				    <p class="paragraph"><h3 style="margin: 4px 0px 4px 0px;" class="heading3"><a name="Hiddentag-%26lt%3Bww%3Ahidden%2F%26gt%3B"> &lt;ww:hidden /&gt;</a></h3></p>An HTML input tag of type &quot;hidden&quot;.<p class="paragraph"><b class="strong">Sample Usages</b>
+<div class="code"><div class="codeContent">
+<pre><span class="xml&#45;tag">&lt;ww:hidden name=<span class="xml&#45;quote">&quot;&#039;someName&#039;&quot;</span> value=<span class="xml&#45;quote">&quot;value&quot;</span>/&gt;</span></pre>
+</div></div></p><table class="wikitable">
+<tr>
+<th>	Name			</th><th>	Required	</th><th>	Description	</th>
+</tr><tr>
+<td>	id				</td><td>	no			</td><td>	HTML id attribute	</td>
+</tr><tr>
+<td>	name 			</td><td>	<b class="strong">yes</b>		</td><td>	HTML name attribute	</td>
+</tr><tr>
+<td>	value			</td><td>	no			</td><td>	Data to pass as text	</td>
+</tr><tr>
+<td>	cssClass		</td><td>	no			</td><td>	HTML class attribute	</td>
+</tr><tr>
+<td>	cssStyle		</td><td>	no			</td><td>	HTML style attribute	</td>
+</tr><tr>
+<td>	theme			</td><td>	no			</td><td>	Theme to use	</td>
+</tr><tr>
+<td>	template		</td><td>	no			</td><td>	Name of template to use	</td>
+</tr>
+</table>
+
+
+				    
+                    			    </td>
+		    </tr>
+	    </table>
+	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
+			<tr>
+				<td height="12" background="border/border_bottom.gif"><img src="border/spacer.gif" width="1" height="1" border="0"/></td>
+			</tr>
+		    <tr>
+			    <td align="center"><font color="grey">Document generated by Confluence on Dec 14, 2004 16:36</font></td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/How do I populate a form bean and get the value using the taglib.html

+<html>
+    <head>
+        <title>WebWork 2 : How do I populate a form bean and get the value using the taglib</title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">	    
+    </head>