Updates configuration and replaces jsp with action
Project: http://git-wip-us.apache.org/repos/asf/struts/repo Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/d0c90dda Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/d0c90dda Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/d0c90dda Branch: refs/heads/develop Commit: d0c90dda952ccd4539c6ecd912bce7a0f97aa014 Parents: c0a312a Author: Lukasz Lenart <lukaszlen...@apache.org> Authored: Mon Mar 3 21:52:54 2014 +0100 Committer: Lukasz Lenart <lukaszlen...@apache.org> Committed: Mon Mar 3 21:52:54 2014 +0100 ---------------------------------------------------------------------- .../showcase/src/main/resources/struts-ajax.xml | 27 +++++++++++ .../src/main/resources/struts-conversion.xml | 4 ++ .../src/main/resources/struts-filedownload.xml | 4 ++ .../src/main/resources/struts-integration.xml | 2 +- .../src/main/resources/struts-interactive.xml | 5 ++ apps/showcase/src/main/resources/struts-jsf.xml | 4 ++ .../src/main/resources/struts-tags-non-ui.xml | 3 ++ .../src/main/resources/struts-tags-ui.xml | 16 +++++++ .../src/main/resources/struts-validation.xml | 7 +++ .../showcase/src/main/resources/struts-wait.xml | 12 +++++ apps/showcase/src/main/resources/struts.xml | 23 +++++----- .../webapp/WEB-INF/ajax/autocompleter/index.jsp | 28 ++++++++---- .../main/webapp/WEB-INF/ajax/commonInclude.jsp | 2 +- .../src/main/webapp/WEB-INF/ajax/footer.jsp | 2 +- .../src/main/webapp/WEB-INF/ajax/index.jsp | 24 ---------- .../customTheme/ftlCustomTemplate.ftl | 7 --- .../customTheme/jspCustomTemplate.jsp | 8 ---- .../src/main/webapp/WEB-INF/decorators/main.jsp | 34 +++++++------- .../main/webapp/WEB-INF/empmanager/index.jsp | 1 - .../src/main/webapp/WEB-INF/person/index.jsp | 1 - .../WEB-INF/template/xhtml/mytemplate.jsp | 9 ---- apps/showcase/src/main/webapp/WEB-INF/tiles.xml | 18 ++++---- .../main/webapp/WEB-INF/token/doublePost.jsp | 2 +- .../src/main/webapp/WEB-INF/token/index.jsp | 48 -------------------- .../main/webapp/WEB-INF/token/transferDone.jsp | 2 +- .../main/webapp/WEB-INF/validation/index.jsp | 2 +- .../src/main/webapp/WEB-INF/wait/complete.jsp | 2 +- .../src/main/webapp/WEB-INF/wait/index.jsp | 34 -------------- .../src/main/webapp/WEB-INF/wait/wait.jsp | 2 +- apps/showcase/src/main/webapp/ajax/index.html | 24 ++++++++++ .../customTheme/ftlCustomTemplate.ftl | 7 +++ .../customTheme/jspCustomTemplate.jsp | 8 ++++ apps/showcase/src/main/webapp/person/index.html | 10 ++++ apps/showcase/src/main/webapp/skill/index.html | 10 ++++ .../main/webapp/template/xhtml/mytemplate.jsp | 9 ++++ apps/showcase/src/main/webapp/token/index.html | 47 +++++++++++++++++++ apps/showcase/src/main/webapp/wait/index.html | 33 ++++++++++++++ 37 files changed, 294 insertions(+), 187 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-ajax.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-ajax.xml b/apps/showcase/src/main/resources/struts-ajax.xml index 43d0876..a5ce83c 100644 --- a/apps/showcase/src/main/resources/struts-ajax.xml +++ b/apps/showcase/src/main/resources/struts-ajax.xml @@ -54,6 +54,33 @@ <result>/WEB-INF/ajax/tabbedpanel/example5Ok.jsp</result> </action> </package> + + <package name="ajax-examples" namespace="/ajax" extends="struts-default"> + <action name="bind"> + <result>/WEB-INF/ajax/bind/index.jsp</result> + </action> + <action name="autocompleter"> + <result>/WEB-INF/ajax/autocompleter/index.jsp</result> + </action> + <action name="remotebutton"> + <result>/WEB-INF/ajax/remotebutton/index.jsp</result> + </action> + <action name="remotediv"> + <result>/WEB-INF/ajax/remotediv/index.jsp</result> + </action> + <action name="remotelink"> + <result>/WEB-INF/ajax/remotelink/index.jsp</result> + </action> + <action name="tabbedpanel"> + <result>/WEB-INF/ajax/tabbedpanel/index.jsp</result> + </action> + <action name="remoteforms"> + <result>/WEB-INF/ajax/remoteforms/index.jsp</result> + </action> + <action name="widgets"> + <result>/WEB-INF/ajax/widgets/index.jsp</result> + </action> + </package> <package name="ajaxNoDecorate" namespace="/nodecorate" extends="json-default"> <!-- example 4 --> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-conversion.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-conversion.xml b/apps/showcase/src/main/resources/struts-conversion.xml index 27dd687..cfbac4a 100644 --- a/apps/showcase/src/main/resources/struts-conversion.xml +++ b/apps/showcase/src/main/resources/struts-conversion.xml @@ -6,6 +6,10 @@ <struts> <package name="conversion" namespace="/conversion" extends="struts-default"> + <action name="index"> + <result>/WEB-INF/conversion/index.jsp</result> + </action> + <!-- Example populating a List inside an Action --> <action name="enterPersonsInfo" method="input" class="org.apache.struts2.showcase.conversion.PersonAction"> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-filedownload.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-filedownload.xml b/apps/showcase/src/main/resources/struts-filedownload.xml index a647e23..f05b4a4 100644 --- a/apps/showcase/src/main/resources/struts-filedownload.xml +++ b/apps/showcase/src/main/resources/struts-filedownload.xml @@ -8,6 +8,10 @@ <default-action-ref name="download"/> + <action name="index"> + <result>/WEB-INF/filedownload/index.jsp</result> + </action> + <action name="download" class="org.apache.struts2.showcase.filedownload.FileDownloadAction"> <param name="inputPath">/images/struts.gif</param> <result name="success" type="stream"> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-integration.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-integration.xml b/apps/showcase/src/main/resources/struts-integration.xml index d251f72..ffff4ac 100644 --- a/apps/showcase/src/main/resources/struts-integration.xml +++ b/apps/showcase/src/main/resources/struts-integration.xml @@ -32,7 +32,7 @@ <!-- Display entry page that uses Model-Driven technique --> <action name="editGangster" class="org.apache.struts2.s1.Struts1Action"> <param name="className">org.apache.struts2.showcase.integration.EditGangsterAction</param> - <result>modelDriven.jsp</result> + <result>/WEB-INF/integration/modelDriven.jsp</result> </action> <!-- Display the result page whose content is populated using the Model-Driven technique --> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-interactive.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-interactive.xml b/apps/showcase/src/main/resources/struts-interactive.xml index 424aabb..24b28b7 100644 --- a/apps/showcase/src/main/resources/struts-interactive.xml +++ b/apps/showcase/src/main/resources/struts-interactive.xml @@ -4,6 +4,11 @@ "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> + <package name="interactive" namespace="/interactive" extends="struts-default"> + <action name="index"> + <result>/WEB-INF/interactive/index.jsp</result> + </action> + </package> <package name="ognl" namespace="/nodecorate" extends="struts-default"> <action name="jspEval" class="org.apache.struts2.showcase.action.JSPEvalAction"> <interceptor-ref name="params"/> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-jsf.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-jsf.xml b/apps/showcase/src/main/resources/struts-jsf.xml index 431c701..baa458a 100644 --- a/apps/showcase/src/main/resources/struts-jsf.xml +++ b/apps/showcase/src/main/resources/struts-jsf.xml @@ -20,6 +20,10 @@ <default-interceptor-ref name="jsfFullStack"/> + <action name="index"> + <result>/WEB-INF/jsf/index.jsp</result> + </action> + </package> <package name="jsf.employee" extends="jsf" namespace="/jsf/employee"> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-tags-non-ui.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-tags-non-ui.xml b/apps/showcase/src/main/resources/struts-tags-non-ui.xml index c296fd2..9722b52 100644 --- a/apps/showcase/src/main/resources/struts-tags-non-ui.xml +++ b/apps/showcase/src/main/resources/struts-tags-non-ui.xml @@ -128,6 +128,9 @@ <!-- === Package for Debug Tag === --> <!-- ========================================== --> <package name="debugTagPackage" extends="struts-default" namespace="/tags/non-ui"> + <action name="date"> + <result>/WEB-INF/tags/non-ui/date.jsp</result> + </action> <action name="debugTagDemo"> <result>/WEB-INF/tags/non-ui/debug.jsp</result> </action> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-tags-ui.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-tags-ui.xml b/apps/showcase/src/main/resources/struts-tags-ui.xml index 563fbc1..cc779e5 100644 --- a/apps/showcase/src/main/resources/struts-tags-ui.xml +++ b/apps/showcase/src/main/resources/struts-tags-ui.xml @@ -46,10 +46,18 @@ <!-- END SNIPPET: treeExampleDynamicXWorkXml --> + <action name="treeExampleStatic"> + <result>/WEB-INF/tags/ui/treeExampleStatic.jsp</result> + </action> + <action name="showDynamicAjaxTreeAction"> <result>/WEB-INF/tags/ui/treeExampleAjaxDynamic.jsp</result> </action> + <action name="componentTagExample"> + <result>/WEB-INF/tags/ui/componentTagExample.jsp</result> + </action> + <action name="showComponentTagExampleCode"> <result type="plainText">/WEB-INF/tags/ui/componentTagExample.jsp</result> </action> @@ -58,6 +66,14 @@ <result>/WEB-INF/tags/ui/actionTagExampleCalled.jsp</result> <result name="input">/WEB-INF/tags/ui/actionTagExampleCalling.jsp</result> </action> + + <action name="datepicker"> + <result>/WEB-INF/tags/ui/datepicker/index.jsp</result> + </action> + + <action name="timepicker"> + <result>/WEB-INF/tags/ui/timepicker/index.jsp</result> + </action> </package> <!-- START SNIPPET: treeExampleXWorkXml --> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-validation.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-validation.xml b/apps/showcase/src/main/resources/struts-validation.xml index 778a210..ee40dc9 100755 --- a/apps/showcase/src/main/resources/struts-validation.xml +++ b/apps/showcase/src/main/resources/struts-validation.xml @@ -5,6 +5,10 @@ <struts> <package name="validation" extends="json-default" namespace="/validation"> + <action name="index"> + <result>/WEB-INF/validation/index.jsp</result> + </action> + <action name="quizBasic" class="org.apache.struts2.showcase.validation.QuizAction"> <result name="input">quiz-basic.jsp</result> <result>quiz-success.jsp</result> @@ -111,6 +115,9 @@ </interceptor-ref> <result>/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp</result> </action> + <action name="storeErrorsAcrossRequestExample"> + <result>/WEB-INF/validation/storeErrorsAcrossRequestExample.jsp</result> + </action> <action name="applicationOk" class="org.apache.struts2.showcase.validation.SubmitApplication" method="applicationOk"> <interceptor-ref name="store"> <param name="operationMode">RETRIEVE</param> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts-wait.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts-wait.xml b/apps/showcase/src/main/resources/struts-wait.xml index 8ea2911..0e09f49 100644 --- a/apps/showcase/src/main/resources/struts-wait.xml +++ b/apps/showcase/src/main/resources/struts-wait.xml @@ -6,6 +6,18 @@ <struts> <package name="wait" extends="struts-default" namespace="/wait"> + <action name="example1"> + <result>/WEB-INF/wait/example1.jsp</result> + </action> + + <action name="example2"> + <result>/WEB-INF/wait/example2.jsp</result> + </action> + + <action name="example3"> + <result>/WEB-INF/wait/example3.jsp</result> + </action> + <action name="longProcess1" class="org.apache.struts2.showcase.wait.LongProcessAction"> <interceptor-ref name="defaultStack"/> <interceptor-ref name="execAndWait"/> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/resources/struts.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/resources/struts.xml b/apps/showcase/src/main/resources/struts.xml index 74c59c6..2df1d0f 100644 --- a/apps/showcase/src/main/resources/struts.xml +++ b/apps/showcase/src/main/resources/struts.xml @@ -9,13 +9,14 @@ <!-- Some or all of these can be flipped to true for debugging --> <constant name="struts.i18n.reload" value="false" /> + <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <constant name="struts.devMode" value="false" /> <constant name="struts.configuration.xml.reload" value="false" /> <constant name="struts.custom.i18n.resources" value="globalMessages" /> <constant name="struts.action.extension" value="action,," /> <constant name="struts.convention.package.locators.basePackage" value="org.apache.struts2.showcase.person" /> - <constant name="struts.convention.result.path" value="/" /> + <constant name="struts.convention.result.path" value="/WEB-INF" /> <!-- Necessary for Showcase because default includes org.apache.struts2.* --> <constant name="struts.convention.exclude.packages" value="org.apache.struts.*,org.springframework.web.struts.*,org.springframework.web.struts2.*,org.hibernate.*"/> @@ -75,11 +76,11 @@ <default-action-ref name="showcase" /> <action name="showcase"> - <result>../webapp/WEB-INF/showcase.jsp</result> + <result>/WEB-INF/showcase.jsp</result> </action> <action name="viewSource" class="org.apache.struts2.showcase.source.ViewSourceAction"> - <result>../webapp/WEB-INF/viewSource.jsp</result> + <result>/WEB-INF/viewSource.jsp</result> </action> <action name="date" class="org.apache.struts2.showcase.DateAction" method="browse"> @@ -92,20 +93,20 @@ <default-interceptor-ref name="crudStack"/> <action name="list" class="org.apache.struts2.showcase.action.SkillAction" method="list"> - <result>/empmanager/listSkills.jsp</result> + <result>/WEB-INF/empmanager/listSkills.jsp</result> <interceptor-ref name="basicStack"/> </action> <action name="edit" class="org.apache.struts2.showcase.action.SkillAction"> - <result>/empmanager/editSkill.jsp</result> + <result>/WEB-INF/empmanager/editSkill.jsp</result> <interceptor-ref name="params" /> <interceptor-ref name="basicStack"/> </action> <action name="save" class="org.apache.struts2.showcase.action.SkillAction" method="save"> - <result name="input">/empmanager/editSkill.jsp</result> + <result name="input">/WEB-INF/empmanager/editSkill.jsp</result> <result type="redirect">list.action</result> </action> <action name="delete" class="org.apache.struts2.showcase.action.SkillAction" method="delete"> - <result name="error">/empmanager/editSkill.jsp</result> + <result name="error">/WEB-INF/empmanager/editSkill.jsp</result> <result type="redirect">list.action</result> </action> </package> @@ -114,20 +115,20 @@ <default-interceptor-ref name="crudStack"/> <action name="list" class="org.apache.struts2.showcase.action.EmployeeAction" method="list"> - <result>/empmanager/listEmployees.jsp</result> + <result>/WEB-INF/empmanager/listEmployees.jsp</result> <interceptor-ref name="basicStack"/> </action> <action name="edit-*" class="org.apache.struts2.showcase.action.EmployeeAction"> <param name="empId">{1}</param> - <result>/empmanager/editEmployee.jsp</result> + <result>/WEB-INF/empmanager/editEmployee.jsp</result> <interceptor-ref name="crudStack"><param name="validation.excludeMethods">execute</param></interceptor-ref> </action> <action name="save" class="org.apache.struts2.showcase.action.EmployeeAction" method="save"> - <result name="input">/empmanager/editEmployee.jsp</result> + <result name="input">/WEB-INF/empmanager/editEmployee.jsp</result> <result type="redirect">list.action</result> </action> <action name="delete" class="org.apache.struts2.showcase.action.EmployeeAction" method="delete"> - <result name="error">/empmanager/editEmployee.jsp</result> + <result name="error">/WEB-INF/empmanager/editEmployee.jsp</result> <result type="redirect">list.action</result> </action> </package> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/ajax/autocompleter/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/ajax/autocompleter/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/ajax/autocompleter/index.jsp index c67257f..0d29a64 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/ajax/autocompleter/index.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/ajax/autocompleter/index.jsp @@ -6,7 +6,7 @@ <title>Ajax Examples</title> <!--// START SNIPPET: common-include--> - <jsp:include page="/WEB-INF/ajax/commonInclude.jsplude.jsp"/> + <jsp:include page="/WEB-INF/ajax/commonInclude.jsp"/> <!--// END SNIPPET: common-include--> </head> @@ -49,7 +49,8 @@ Using a JSON list returned from an action (href="/JSONList.action"), without autoComplete (autoComplete="false"), use indicator, search substring (searchType="substring") <br/> -<sx:autocompleter +<sx:autocompleter + id="auto1" indicator="indicator1" href="%{jsonList}" cssStyle="width: 200px;" @@ -77,7 +78,8 @@ Reload on type (loadOnTextChange="true"), after 3 characters (loadMinimumCount=" Using a JSON list returned from an action (href="/JSONList.action"), with autoComplete (autoComplete="true") <br/> -<sx:autocompleter +<sx:autocompleter + id="auto3" name="auto3" href="%{#jsonList}" cssStyle="width: 200px;" @@ -87,13 +89,14 @@ Using a JSON list returned from an action (href="/JSONList.action"), with autoCo Using a local list (list="%{'apple','banana','grape','pear'}") <br/> -<sx:autocompleter list="{'apple','banana','grape','pear'}" cssStyle="width: 150px;"/> +<sx:autocompleter id="auto-list" list="{'apple','banana','grape','pear'}" cssStyle="width: 150px;"/> <br/><br/> Force valid options (forceValidOption="true") <br/> -<sx:autocompleter +<sx:autocompleter + id="auto4" name="auto4" href="%{#jsonList}" cssStyle="width: 200px;" @@ -105,8 +108,9 @@ Force valid options (forceValidOption="true") Make dropdown's height to 180px (dropdownHeight="180") <br/> <sx:autocompleter + id="auto5" name="auto5" - href="%{#jsonList}" + href="%{#jsonList}" cssStyle="width: 200px;" dropdownHeight="180"/> @@ -116,8 +120,9 @@ Make dropdown's height to 180px (dropdownHeight="180") Disabled combobox (disabled="true") <br/> <sx:autocompleter + id="auto6" name="auto6" - href="%{#jsonList}" + href="%{#jsonList}" cssStyle="width: 200px;" disabled="true"/> @@ -133,8 +138,9 @@ Link two autocompleter elements. When the selected value in 'Autocompleter 1' ch <p> Autocompleter 1 <sx:autocompleter - name="select" - list="{'fruits','colors'}" + id="auto7" + name="select" + list="{'fruits','colors'}" value="colors" valueNotifyTopics="/Changed" forceValidOption="true"/> @@ -142,6 +148,7 @@ Link two autocompleter elements. When the selected value in 'Autocompleter 1' ch </form> Autocompleter 2 <sx:autocompleter + id="auto8" name="auto8" href="%{#autoex}" autoComplete="false" @@ -154,8 +161,9 @@ Autocompleter 2 Publish before/after/value notify topics <br/> <sx:autocompleter + id="auto9" name="auto9" - href="%{#jsonList}" + href="%{#jsonList}" listenTopics="/reload" beforeNotifyTopics="/before" afterNotifyTopics="/after" http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/ajax/commonInclude.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/ajax/commonInclude.jsp b/apps/showcase/src/main/webapp/WEB-INF/ajax/commonInclude.jsp index 8be4022..32ea69e 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/ajax/commonInclude.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/ajax/commonInclude.jsp @@ -1,5 +1,5 @@ <%@ taglib prefix="s" uri="/struts-tags" %> <%@ taglib prefix="sx" uri="/struts-dojo-tags" %> <!--// START SNIPPET: common-include--> -<sx:head cache="true"/> +<sx:head cache="false"/> <!--// END SNIPPET: common-include--> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/ajax/footer.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/ajax/footer.jsp b/apps/showcase/src/main/webapp/WEB-INF/ajax/footer.jsp index 5521cb4..12854b5 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/ajax/footer.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/ajax/footer.jsp @@ -2,7 +2,7 @@ <hr/> -<s:url var="backToAjaxExamples" value="../../index.jsp" /> +<s:url var="backToAjaxExamples" value="/ajax/index.html" /> <s:a href="%{backToAjaxExamples}">Back To AJAX Examples</s:a> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/ajax/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/ajax/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/ajax/index.jsp deleted file mode 100644 index 8791fa3..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/ajax/index.jsp +++ /dev/null @@ -1,24 +0,0 @@ -<html> -<head><title>AJAX Examples</title></head> - -<body> - -<h1>AJAX Example</h1> - -<p> -Note: The Ajax tags are experimental. These examples have only been tested under FireFox 1.5 and IE 6. -</p> - -<ul> - <li><a href="bind/index.jsp">Bind tag</a></li> - <li><a href="autocompleter/index.jsp">Autocompleter combobox tag</a></li> - <li><a href="remotebutton/index.jsp">Remote button tag</a></li> - <li><a href="remotediv/index.jsp">Remote div tag</a></li> - <li><a href="remotelink/index.jsp">Remote link tag</a></li> - <li><a href="tabbedpanel/index.jsp">Tabbed panel</a></li> - <li><a href="remoteforms/index.jsp">Remote forms</a></li> - <li><a href="widgets/index.jsp">Widgets </a> (may not work in all browsers!) - see the <a href="http://www.dojotoolkit.org">dojo website</a> for more information</li> -</ul> -</body> -</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/ftlCustomTemplate.ftl ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/ftlCustomTemplate.ftl b/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/ftlCustomTemplate.ftl deleted file mode 100644 index 4152334..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/ftlCustomTemplate.ftl +++ /dev/null @@ -1,7 +0,0 @@ -<div style="background-color:yellow;"> -<p> -Freemarker Custom Template - -parameter 'paramName' - ${parameters.paramName} -</p> -</div> - http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/jspCustomTemplate.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/jspCustomTemplate.jsp b/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/jspCustomTemplate.jsp deleted file mode 100644 index 311c329..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/customTemplateDir/customTheme/jspCustomTemplate.jsp +++ /dev/null @@ -1,8 +0,0 @@ -<%@taglib prefix="s" uri="/struts-tags" %> - -<div style="background-color:yellow;"> -<p> -JSP Custom Template - -parameter 'paramName' - <s:property value="%{top.parameters.paramName}" /> -</p> -</div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp index 462bd4d..1ca02cc 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/decorators/main.jsp @@ -95,7 +95,7 @@ <li><s:a action="index" namespace="/config-browser" includeParams="none">Config Browser</s:a></li> <li><s:a value="/conversion/index.jsp">Conversion</s:a></li> - <li><s:a value="/person/index.jsp">Person Manager ( by Conventions )</s:a></li> + <li><s:a value="/person/index.html">Person Manager ( by Conventions )</s:a></li> </ul> </li> <li class="dropdown"> @@ -106,7 +106,7 @@ <ul class="dropdown-menu"> <li><s:url var="url" action="showActionTagDemo" namespace="/tags/non-ui/actionTag"/><s:a href="%{url}">Action Tag</s:a></li> - <li><s:url var="url" value="/tags/non-ui/date.jsp"/><s:a + <li><s:url var="url" namespace="/tags/non-ui" action="date"/><s:a href="%{url}">Date Tag</s:a></li> <li><s:url var="url" action="debugTagDemo" namespace="/tags/non-ui"/><s:a href="%{url}">Debug Tag</s:a></li> @@ -149,7 +149,7 @@ <li><s:url var="url" namespace="/tags/ui" action="moreSelects" method="input"/><s:a href="%{url}">More Select Box UI Examples</s:a></li> <li> - <s:url var="url" namespace="/tags/ui" value="/tags/ui/treeExampleStatic.jsp"/> + <s:url var="url" namespace="/tags/ui" action="treeExampleStatic"/> <s:a href="%{url}">Tree Example (static)</s:a> <li> <s:url var="url" namespace="/tags/ui" action="showDynamicTreeAction"/> @@ -158,13 +158,13 @@ <s:url var="url" namespace="/tags/ui" action="showDynamicAjaxTreeAction"/> <s:a href="%{url}">Tree Example (dynamic ajax loading)</s:a> <li> - <s:url var="url" value="/tags/ui/componentTagExample.jsp"/> + <s:url var="url" namespace="/tags/ui" action="componentTagExample"/> <s:a href="%{#url}">Component Tag Example</s:a> <li><s:url var="url" namespace="/tags/ui" action="actionTagExample" method="input"/><s:a href="%{url}">Action Tag Example</s:a></li> - <li><s:url var="url" value="/tags/ui/datepicker/index.jsp"/><s:a + <li><s:url var="url" namespace="/tags/ui" action="datepicker"/><s:a href="%{#url}">DateTime picker tag - Pick a date</s:a></li> - <li><s:url var="url" value="/tags/ui/timepicker/index.jsp"/><s:a + <li><s:url var="url" namespace="/tags/ui" action="timepicker"/><s:a href="%{#url}">DateTime picker tag - Pick a time</s:a></li> <%--li><s:url var="url" namespace="/tags/ui" action="populateUsingIterator" method="input" /><s:a href="%{url}">UI population using iterator tag</s:a></li--%> </ul> @@ -174,7 +174,7 @@ <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">File<b class="caret"></b></a> <ul class="dropdown-menu"> - <li><s:a value="/filedownload/index.jsp">File Download</s:a></li> + <li><s:a namespace="/filedownload" action="index">File Download</s:a></li> <li class="dropdown-submenu"> <a href="#">File Upload</a> <ul class="dropdown-menu"> @@ -207,11 +207,11 @@ href="%{url}">Hangman (Ajax - Experimental)</s:a></li> </ul> </li> - <li><s:a value="/person/index.jsp">Person Manager</s:a></li> - <li><s:a value="/empmanager/index.jsp">CRUD</s:a></li> - <li><s:a value="/wait/index.jsp">Execute & Wait</s:a></li> - <li><s:a value="/token/index.jsp">Token</s:a></li> - <li><s:a value="/validation/index.jsp">Validation</s:a></li> + <li><s:a value="/person/index.html">Person Manager</s:a></li> + <li><s:a value="/skill/index.html">CRUD</s:a></li> + <li><s:a value="/wait/index.html">Execute & Wait</s:a></li> + <li><s:a value="/token/index.html">Token</s:a></li> + <li><s:a value="/validation/index.action">Validation</s:a></li> <li><s:url var="url" namespace="/modelDriven" action="modelDriven"/><s:a href="%{url}">Model Driven</s:a></li> </ul> @@ -232,19 +232,19 @@ </li> </ul> </li> - <li><s:a value="/jsf/index.jsp">JavaServer Faces</s:a></li> - <li><s:a value="/integration/editGangster">Struts 1 Integration</s:a></li> + <li><s:a namespace="/jsf" action="index">JavaServer Faces</s:a></li> + <li><s:a namespace="/integration" action="editGangster">Struts 1 Integration</s:a></li> <li><s:a value="/tiles/index.action">Tiles</s:a></li> </ul> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">AJAX<b class="caret"></b></a> <ul class="dropdown-menu"> - <li><s:a value="/ajax/index.jsp">Ajax plugin</s:a></li> - <li><s:a value="/chat/index.jsp">Ajax Chat</s:a></li> + <li><s:a value="/ajax/index.html">Ajax plugin</s:a></li> + <li><s:a value="/chat/index.html">Ajax Chat</s:a></li> </ul> </li> - <li><s:a value="/interactive/index.jsp">Interactive Demo</s:a></li> + <li><s:a value="/interactive/index.action">Interactive Demo</s:a></li> </ul> <ul class="nav pull-right"> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/empmanager/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/empmanager/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/empmanager/index.jsp deleted file mode 100644 index 0da9091..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/empmanager/index.jsp +++ /dev/null @@ -1 +0,0 @@ -<% response.sendRedirect("../employee/list.action"); %> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/person/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/person/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/person/index.jsp deleted file mode 100644 index f7db6cf..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/person/index.jsp +++ /dev/null @@ -1 +0,0 @@ -<% response.sendRedirect("list-people.action"); %> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/template/xhtml/mytemplate.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/template/xhtml/mytemplate.jsp b/apps/showcase/src/main/webapp/WEB-INF/template/xhtml/mytemplate.jsp deleted file mode 100644 index 7ebb967..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/template/xhtml/mytemplate.jsp +++ /dev/null @@ -1,9 +0,0 @@ - -<%@taglib prefix="s" uri="/struts-tags" %> - -<div style="background-color:yellow;"> -<p> -JSP Custom Template - -parameter 'paramName' - <s:property value="%{parameters.paramName}" /> -</p> -</div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/tiles.xml ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/tiles.xml b/apps/showcase/src/main/webapp/WEB-INF/tiles.xml index 01af051..7c7057f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/tiles.xml +++ b/apps/showcase/src/main/webapp/WEB-INF/tiles.xml @@ -27,22 +27,22 @@ <tiles-definitions> - <definition name="showcase.index" template="/tiles/layout.jsp"> + <definition name="showcase.index" template="/WEB-INF/tiles/layout.jsp"> <put-attribute name="title" value="Tiles Showcase"/> - <put-attribute name="header" value="/tiles/header.jsp"/> - <put-attribute name="body" value="/tiles/body.jsp"/> + <put-attribute name="header" value="/WEB-INF/tiles/header.jsp"/> + <put-attribute name="body" value="/WEB-INF/tiles/body.jsp"/> </definition> - <definition name="showcase.freemarker" template="/tiles/layout.jsp"> + <definition name="showcase.freemarker" template="/WEB-INF/tiles/layout.jsp"> <put-attribute name="title" value="Tiles/Freemarker Showcase"/> - <put-attribute name="header" value="/tiles/header.jsp"/> - <put-attribute name="body" value="/tiles/body.ftl"/> + <put-attribute name="header" value="/WEB-INF/tiles/header.jsp"/> + <put-attribute name="body" value="/WEB-INF/tiles/body.ftl"/> </definition> - <definition name="showcase.freemarkerLayout" template="/tiles/layout.ftl"> + <definition name="showcase.freemarkerLayout" template="/WEB-INF/tiles/layout.ftl"> <put-attribute name="title" value="Tiles/Freemarker Showcase"/> - <put-attribute name="header" value="/tiles/header.jsp"/> - <put-attribute name="body" value="/tiles/body.ftl"/> + <put-attribute name="header" value="/WEB-INF/tiles/header.jsp"/> + <put-attribute name="body" value="/WEB-INF/tiles/body.ftl"/> </definition> </tiles-definitions> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp index 761d44b..15dab33 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/doublePost.jsp @@ -20,7 +20,7 @@ <p/> Click here to - <s:url var="back" value="/token/index.jsp"/><s:a href="%{back}">return</s:a>. + <s:url var="back" value="/token/index.html"/><s:a href="%{back}">return</s:a>. </div> </div> </div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/token/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/index.jsp deleted file mode 100644 index b65ff4e..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/token/index.jsp +++ /dev/null @@ -1,48 +0,0 @@ -<%@ taglib prefix="s" uri="/struts-tags" %> -<html> -<head> - <title>Struts2 Showcase - Token Examples (double post)</title> -</head> - -<body> -<div class="page-header"> - <h1>Token Examples</h1> -</div> - - -<div class="container-fluid"> - <div class="row-fluid"> - <div class="span12" style="text-align: center;"> - - <p> - These examples illustrate Struts build in support of using tokens to prevent double post. - <p/> - <p> - You have a web page where user can input data and press a button to submit. - There could be a problem that the user submit the data many times, by either clicking the - button many times, or use the browser back button and then submit the form again. - <br/> A good solution is to use a hidden token in the form. The token is autogenerated and unique - from time to time. This token is then validated with the HttpSession that it is the first time - it is submitted, if not we have a double post and therefore can prevent the second submit action. - <p/> - <p> - For more information check out javadoc for org.apache.struts2.interceptor.TokenInterceptor - and org.apache.struts2.interceptor.TokenSessionStoreInterceptor. - <p/> - - <br/> - <br/><a href="tokenPrepare!input.action">Example 1 (token based .jsp example)</a> - - <br/> - <br/><a href="tokenPrepare2!input.action">Example 2 (as example 1 with redirect after post)</a> - - <br/> - <br/><a href="tokenPrepare3!input.action">Example 3 (token-session based .jsp example)</a> - - <br/> - <br/><a href="tokenPrepare4!input.action">Example 4 (token based freemarker example)</a> - </div> - </div> -</div> -</body> -</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp b/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp index a67078c..2a1ab8f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/token/transferDone.jsp @@ -40,7 +40,7 @@ <p/> Click here to - <s:url var="back" value="/token/index.jsp"/><s:a href="%{back}">return</s:a>. + <s:url var="back" value="/token/index.html"/><s:a href="%{back}">return</s:a>. </div> </div> </div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/validation/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/validation/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/validation/index.jsp index 661d032..96a331f 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/validation/index.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/validation/index.jsp @@ -30,7 +30,7 @@ <s:url var="visitorValidatorUrl" action="showVisitorValidatorsExamples" namespace="/validation"/> <s:url var="clientSideValidationUrl" action="clientSideValidationExample" namespace="/validation"/> <s:url var="backToShowcase" action="showcase" namespace="/"/> - <s:url var="storeMessageAcrossRequestExample" value="/validation/storeErrorsAcrossRequestExample.jsp"/> + <s:url var="storeMessageAcrossRequestExample" namespace="/validation" action="storeErrorsAcrossRequestExample"/> <ul> <li><s:a href="%{fieldValidatorUrl}">Field Validators</s:a></li> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp index 9ab7b78..6389d51 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/complete.jsp @@ -16,7 +16,7 @@ <b>We have processed your request.</b> <p/> - Click here to <s:url var="back" value="/wait/index.jsp"/><s:a href="%{back}" cssClass="btn btn-link">return</s:a>. + Click here to <s:url var="back" value="/wait/index.html"/><s:a href="%{back}" cssClass="btn btn-link">return</s:a>. </div> </div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/wait/index.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/index.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/index.jsp deleted file mode 100644 index 14f4e19..0000000 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/index.jsp +++ /dev/null @@ -1,34 +0,0 @@ -<%@ taglib prefix="s" uri="/struts-tags" %> -<html> -<head> - <title>Struts2 Showcase - Execute and Wait Examples</title> -</head> - -<body> -<div class="page-header"> - <h1>Execute and Wait Examples</h1> -</div> - - - -<div class="container-fluid"> - <div class="row-fluid"> - <div class="span12" style="text-align: center;"> - - <p> - These examples illustrate Struts build in support for execute and wait. - <p/> - <p> - When you have a process that takes a long time your users can be impatient and starts to submit/click again. - <br/> A good solution is to show the user a progress page (wait page) while the process takes it time. - <p/> - - <br/> - <br/><a href="example1.jsp">Example 1 (no delay)</a> - <br/><a href="example2.jsp">Example 2 (with delay)</a> - <br/><a href="example3.jsp">Example 3 (with longer check delay)</a> - </div> - </div> -</div> -</body> -</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp b/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp index deb8151..59bb91b 100644 --- a/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp +++ b/apps/showcase/src/main/webapp/WEB-INF/wait/wait.jsp @@ -27,7 +27,7 @@ <b>We have processed your request.</b> <p/> - Click here to <s:url var="back" value="/wait/index.jsp"/><s:a href="%{back}" cssClass="btn btn-link">return</s:a>. + Click here to <s:url var="back" value="/wait/index.html"/><s:a href="%{back}" cssClass="btn btn-link">return</s:a>. </div> </div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/ajax/index.html ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/ajax/index.html b/apps/showcase/src/main/webapp/ajax/index.html new file mode 100644 index 0000000..175fd9a --- /dev/null +++ b/apps/showcase/src/main/webapp/ajax/index.html @@ -0,0 +1,24 @@ +<html> +<head><title>AJAX Examples</title></head> + +<body> + +<h1>AJAX Example</h1> + +<p> +Note: The Ajax tags are experimental. These examples have only been tested under FireFox 1.5 and IE 6. +</p> + +<ul> + <li><a href="bind.action">Bind tag</a></li> + <li><a href="autocompleter.action">Autocompleter combobox tag</a></li> + <li><a href="remotebutton.action">Remote button tag</a></li> + <li><a href="remotediv.action">Remote div tag</a></li> + <li><a href="remotelink.action">Remote link tag</a></li> + <li><a href="tabbedpanel.action">Tabbed panel</a></li> + <li><a href="remoteforms.action">Remote forms</a></li> + <li><a href="widgets.action">Widgets </a> (may not work in all browsers!) + see the <a href="http://www.dojotoolkit.org">dojo website</a> for more information</li> +</ul> +</body> +</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl new file mode 100644 index 0000000..4152334 --- /dev/null +++ b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/ftlCustomTemplate.ftl @@ -0,0 +1,7 @@ +<div style="background-color:yellow;"> +<p> +Freemarker Custom Template - +parameter 'paramName' - ${parameters.paramName} +</p> +</div> + http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/customTemplateDir/customTheme/jspCustomTemplate.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/customTemplateDir/customTheme/jspCustomTemplate.jsp b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/jspCustomTemplate.jsp new file mode 100644 index 0000000..311c329 --- /dev/null +++ b/apps/showcase/src/main/webapp/customTemplateDir/customTheme/jspCustomTemplate.jsp @@ -0,0 +1,8 @@ +<%@taglib prefix="s" uri="/struts-tags" %> + +<div style="background-color:yellow;"> +<p> +JSP Custom Template - +parameter 'paramName' - <s:property value="%{top.parameters.paramName}" /> +</p> +</div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/person/index.html ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/person/index.html b/apps/showcase/src/main/webapp/person/index.html new file mode 100644 index 0000000..bc92398 --- /dev/null +++ b/apps/showcase/src/main/webapp/person/index.html @@ -0,0 +1,10 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> + <META HTTP-EQUIV="Refresh" CONTENT="0;URL=list-people.action"> +</head> + +<body> +<p>Loading ...</p> +</body> +</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/skill/index.html ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/skill/index.html b/apps/showcase/src/main/webapp/skill/index.html new file mode 100644 index 0000000..fd10066 --- /dev/null +++ b/apps/showcase/src/main/webapp/skill/index.html @@ -0,0 +1,10 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> + <META HTTP-EQUIV="Refresh" CONTENT="0;URL=list.action"> +</head> + +<body> +<p>Loading ...</p> +</body> +</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp b/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp new file mode 100644 index 0000000..7ebb967 --- /dev/null +++ b/apps/showcase/src/main/webapp/template/xhtml/mytemplate.jsp @@ -0,0 +1,9 @@ + +<%@taglib prefix="s" uri="/struts-tags" %> + +<div style="background-color:yellow;"> +<p> +JSP Custom Template - +parameter 'paramName' - <s:property value="%{parameters.paramName}" /> +</p> +</div> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/token/index.html ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/token/index.html b/apps/showcase/src/main/webapp/token/index.html new file mode 100644 index 0000000..f8d0f8f --- /dev/null +++ b/apps/showcase/src/main/webapp/token/index.html @@ -0,0 +1,47 @@ +<html> +<head> + <title>Struts2 Showcase - Token Examples (double post)</title> +</head> + +<body> +<div class="page-header"> + <h1>Token Examples</h1> +</div> + + +<div class="container-fluid"> + <div class="row-fluid"> + <div class="span12" style="text-align: center;"> + + <p> + These examples illustrate Struts build in support of using tokens to prevent double post. + <p/> + <p> + You have a web page where user can input data and press a button to submit. + There could be a problem that the user submit the data many times, by either clicking the + button many times, or use the browser back button and then submit the form again. + <br/> A good solution is to use a hidden token in the form. The token is autogenerated and unique + from time to time. This token is then validated with the HttpSession that it is the first time + it is submitted, if not we have a double post and therefore can prevent the second submit action. + <p/> + <p> + For more information check out javadoc for org.apache.struts2.interceptor.TokenInterceptor + and org.apache.struts2.interceptor.TokenSessionStoreInterceptor. + <p/> + + <br/> + <br/><a href="tokenPrepare!input.action">Example 1 (token based .jsp example)</a> + + <br/> + <br/><a href="tokenPrepare2!input.action">Example 2 (as example 1 with redirect after post)</a> + + <br/> + <br/><a href="tokenPrepare3!input.action">Example 3 (token-session based .jsp example)</a> + + <br/> + <br/><a href="tokenPrepare4!input.action">Example 4 (token based freemarker example)</a> + </div> + </div> +</div> +</body> +</html> http://git-wip-us.apache.org/repos/asf/struts/blob/d0c90dda/apps/showcase/src/main/webapp/wait/index.html ---------------------------------------------------------------------- diff --git a/apps/showcase/src/main/webapp/wait/index.html b/apps/showcase/src/main/webapp/wait/index.html new file mode 100644 index 0000000..d354965 --- /dev/null +++ b/apps/showcase/src/main/webapp/wait/index.html @@ -0,0 +1,33 @@ +<html> +<head> + <title>Struts2 Showcase - Execute and Wait Examples</title> +</head> + +<body> +<div class="page-header"> + <h1>Execute and Wait Examples</h1> +</div> + + + +<div class="container-fluid"> + <div class="row-fluid"> + <div class="span12" style="text-align: center;"> + + <p> + These examples illustrate Struts build in support for execute and wait. + <p/> + <p> + When you have a process that takes a long time your users can be impatient and starts to submit/click again. + <br/> A good solution is to show the user a progress page (wait page) while the process takes it time. + <p/> + + <br/> + <br/><a href="example1.action">Example 1 (no delay)</a> + <br/><a href="example2.action">Example 2 (with delay)</a> + <br/><a href="example3.action">Example 3 (with longer check delay)</a> + </div> + </div> +</div> +</body> +</html>