You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by jo...@apache.org on 2015/06/14 12:53:26 UTC
[14/16] struts-examples git commit: Unify artifact names and use "-"
instead of "_"
Unify artifact names and use "-" instead of "_"
Project: http://git-wip-us.apache.org/repos/asf/struts-examples/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts-examples/commit/433ea016
Tree: http://git-wip-us.apache.org/repos/asf/struts-examples/tree/433ea016
Diff: http://git-wip-us.apache.org/repos/asf/struts-examples/diff/433ea016
Branch: refs/heads/master
Commit: 433ea016258c4928b214ad3d99933abb9df211bb
Parents: 33bf8f2
Author: Johannes Geppert <jo...@apache.org>
Authored: Sun Jun 14 12:38:45 2015 +0200
Committer: Johannes Geppert <jo...@apache.org>
Committed: Sun Jun 14 12:38:46 2015 +0200
----------------------------------------------------------------------
blank/pom.xml | 7 -
exception-handling/README.txt | 16 +
exception-handling/pom.xml | 23 ++
.../helloworld/action/HelloWorldAction.java | 79 +++++
.../struts/helloworld/model/MessageStore.java | 31 ++
.../apache/struts/register/action/Register.java | 60 ++++
.../exceptions/SecurityBreachException.java | 19 ++
.../apache/struts/register/model/Person.java | 62 ++++
exception-handling/src/main/resources/log4j.dtd | 227 ++++++++++++++
exception-handling/src/main/resources/log4j.xml | 28 ++
.../src/main/resources/struts.xml | 78 +++++
.../src/main/webapp/HelloWorld.jsp | 16 +
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/WEB-INF/web.xml | 19 ++
exception-handling/src/main/webapp/error.jsp | 24 ++
exception-handling/src/main/webapp/index.jsp | 39 +++
exception-handling/src/main/webapp/login.jsp | 17 ++
exception-handling/src/main/webapp/register.jsp | 26 ++
.../src/main/webapp/securityerror.jsp | 24 ++
exception-handling/src/main/webapp/thankyou.jsp | 19 ++
exception_handling/README.txt | 16 -
exception_handling/pom.xml | 23 --
.../helloworld/action/HelloWorldAction.java | 80 -----
.../struts/helloworld/model/MessageStore.java | 31 --
.../apache/struts/register/action/Register.java | 61 ----
.../exceptions/SecurityBreachException.java | 19 --
.../apache/struts/register/model/Person.java | 62 ----
exception_handling/src/main/resources/log4j.dtd | 227 --------------
exception_handling/src/main/resources/log4j.xml | 28 --
.../src/main/resources/struts.xml | 78 -----
.../src/main/webapp/HelloWorld.jsp | 16 -
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/WEB-INF/web.xml | 19 --
exception_handling/src/main/webapp/error.jsp | 24 --
exception_handling/src/main/webapp/index.jsp | 39 ---
exception_handling/src/main/webapp/login.jsp | 17 --
exception_handling/src/main/webapp/register.jsp | 26 --
.../src/main/webapp/securityerror.jsp | 24 --
exception_handling/src/main/webapp/thankyou.jsp | 19 --
exclude-parameters/README.txt | 19 ++
exclude-parameters/pom.xml | 24 ++
.../apache/struts/edit/action/EditAction.java | 95 ++++++
.../org/apache/struts/edit/model/Person.java | 121 ++++++++
.../org/apache/struts/edit/model/State.java | 39 +++
.../struts/edit/service/CarModelsService.java | 18 ++
.../edit/service/CarModelsServiceHardCoded.java | 22 ++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 60 ++++
.../src/main/resources/log4j2.xml | 16 +
.../edit/action/EditAction-validation.xml | 35 +++
.../struts/edit/action/EditAction.properties | 10 +
.../src/main/resources/struts.xml | 42 +++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/WEB-INF/web.xml | 19 ++
exclude-parameters/src/main/webapp/edit.jsp | 30 ++
exclude-parameters/src/main/webapp/index.jsp | 16 +
exclude-parameters/src/main/webapp/thankyou.jsp | 21 ++
exclude_parameters/README.txt | 19 --
exclude_parameters/pom.xml | 24 --
.../apache/struts/edit/action/EditAction.java | 95 ------
.../org/apache/struts/edit/model/Person.java | 121 --------
.../org/apache/struts/edit/model/State.java | 39 ---
.../struts/edit/service/CarModelsService.java | 18 --
.../edit/service/CarModelsServiceHardCoded.java | 22 --
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 60 ----
.../src/main/resources/log4j2.xml | 16 -
.../edit/action/EditAction-validation.xml | 35 ---
.../struts/edit/action/EditAction.properties | 10 -
.../src/main/resources/struts.xml | 42 ---
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/WEB-INF/web.xml | 19 --
exclude_parameters/src/main/webapp/edit.jsp | 30 --
exclude_parameters/src/main/webapp/index.jsp | 16 -
exclude_parameters/src/main/webapp/thankyou.jsp | 21 --
form-processing/README.txt | 16 +
form-processing/pom.xml | 22 ++
.../helloworld/action/HelloWorldAction.java | 79 +++++
.../struts/helloworld/model/MessageStore.java | 31 ++
.../apache/struts/register/action/Register.java | 39 +++
.../apache/struts/register/model/Person.java | 62 ++++
form-processing/src/main/resources/log4j.dtd | 227 ++++++++++++++
form-processing/src/main/resources/log4j.xml | 28 ++
form-processing/src/main/resources/struts.xml | 31 ++
form-processing/src/main/webapp/HelloWorld.jsp | 16 +
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
form-processing/src/main/webapp/WEB-INF/web.xml | 19 ++
form-processing/src/main/webapp/index.jsp | 30 ++
form-processing/src/main/webapp/register.jsp | 26 ++
form-processing/src/main/webapp/thankyou.jsp | 19 ++
form-tags/README.txt | 16 +
form-tags/pom.xml | 24 ++
.../apache/struts/edit/action/EditAction.java | 95 ++++++
.../org/apache/struts/edit/model/Person.java | 96 ++++++
.../org/apache/struts/edit/model/State.java | 39 +++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 51 ++++
form-tags/src/main/resources/log4j.dtd | 227 ++++++++++++++
form-tags/src/main/resources/log4j.xml | 28 ++
.../struts/edit/action/EditAction.properties | 8 +
form-tags/src/main/resources/struts.xml | 29 ++
form-tags/src/main/webapp/META-INF/MANIFEST.MF | 3 +
form-tags/src/main/webapp/WEB-INF/web.xml | 19 ++
form-tags/src/main/webapp/edit.jsp | 28 ++
form-tags/src/main/webapp/index.jsp | 16 +
form-tags/src/main/webapp/thankyou.jsp | 21 ++
form-validation/README.txt | 16 +
form-validation/pom.xml | 24 ++
.../helloworld/action/HelloWorldAction.java | 79 +++++
.../struts/helloworld/model/MessageStore.java | 31 ++
.../apache/struts/register/action/Register.java | 64 ++++
.../apache/struts/register/model/Person.java | 62 ++++
form-validation/src/main/resources/log4j.dtd | 227 ++++++++++++++
form-validation/src/main/resources/log4j.xml | 28 ++
form-validation/src/main/resources/struts.xml | 32 ++
form-validation/src/main/webapp/HelloWorld.jsp | 16 +
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/META-INF/context.xml | 2 +
form-validation/src/main/webapp/WEB-INF/web.xml | 19 ++
form-validation/src/main/webapp/index.jsp | 30 ++
form-validation/src/main/webapp/register.jsp | 27 ++
form-validation/src/main/webapp/thankyou.jsp | 19 ++
form-xml-validation/README.txt | 16 +
form-xml-validation/pom.xml | 23 ++
.../apache/struts/edit/action/EditAction.java | 95 ++++++
.../org/apache/struts/edit/model/Person.java | 121 ++++++++
.../org/apache/struts/edit/model/State.java | 39 +++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 60 ++++
.../src/main/resources/log4j.dtd | 227 ++++++++++++++
.../src/main/resources/log4j.xml | 28 ++
.../edit/action/EditAction-validation.xml | 34 +++
.../struts/edit/action/EditAction.properties | 10 +
.../src/main/resources/struts.xml | 30 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/META-INF/context.xml | 2 +
.../src/main/webapp/WEB-INF/web.xml | 19 ++
form-xml-validation/src/main/webapp/edit.jsp | 30 ++
form-xml-validation/src/main/webapp/index.jsp | 16 +
.../src/main/webapp/thankyou.jsp | 21 ++
form_processing/README.txt | 16 -
form_processing/pom.xml | 21 --
.../helloworld/action/HelloWorldAction.java | 80 -----
.../struts/helloworld/model/MessageStore.java | 31 --
.../apache/struts/register/action/Register.java | 40 ---
.../apache/struts/register/model/Person.java | 62 ----
form_processing/src/main/resources/log4j.dtd | 227 --------------
form_processing/src/main/resources/log4j.xml | 28 --
form_processing/src/main/resources/struts.xml | 31 --
form_processing/src/main/webapp/HelloWorld.jsp | 16 -
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
form_processing/src/main/webapp/WEB-INF/web.xml | 19 --
form_processing/src/main/webapp/index.jsp | 30 --
form_processing/src/main/webapp/register.jsp | 26 --
form_processing/src/main/webapp/thankyou.jsp | 19 --
form_tags/README.txt | 16 -
form_tags/pom.xml | 22 --
.../apache/struts/edit/action/EditAction.java | 96 ------
.../org/apache/struts/edit/model/Person.java | 96 ------
.../org/apache/struts/edit/model/State.java | 39 ---
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 51 ----
form_tags/src/main/resources/log4j.dtd | 227 --------------
form_tags/src/main/resources/log4j.xml | 28 --
.../struts/edit/action/EditAction.properties | 8 -
form_tags/src/main/resources/struts.xml | 29 --
form_tags/src/main/webapp/META-INF/MANIFEST.MF | 3 -
form_tags/src/main/webapp/WEB-INF/web.xml | 19 --
form_tags/src/main/webapp/edit.jsp | 28 --
form_tags/src/main/webapp/index.jsp | 16 -
form_tags/src/main/webapp/thankyou.jsp | 21 --
form_validation/README.txt | 16 -
form_validation/pom.xml | 23 --
.../helloworld/action/HelloWorldAction.java | 80 -----
.../struts/helloworld/model/MessageStore.java | 31 --
.../apache/struts/register/action/Register.java | 65 ----
.../apache/struts/register/model/Person.java | 62 ----
form_validation/src/main/resources/log4j.dtd | 227 --------------
form_validation/src/main/resources/log4j.xml | 28 --
form_validation/src/main/resources/struts.xml | 32 --
form_validation/src/main/webapp/HelloWorld.jsp | 16 -
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/META-INF/context.xml | 2 -
form_validation/src/main/webapp/WEB-INF/web.xml | 19 --
form_validation/src/main/webapp/index.jsp | 30 --
form_validation/src/main/webapp/register.jsp | 27 --
form_validation/src/main/webapp/thankyou.jsp | 19 --
form_xml_validation/README.txt | 16 -
form_xml_validation/pom.xml | 23 --
.../apache/struts/edit/action/EditAction.java | 96 ------
.../org/apache/struts/edit/model/Person.java | 121 --------
.../org/apache/struts/edit/model/State.java | 39 ---
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 60 ----
.../src/main/resources/log4j.dtd | 227 --------------
.../src/main/resources/log4j.xml | 28 --
.../edit/action/EditAction-validation.xml | 34 ---
.../struts/edit/action/EditAction.properties | 10 -
.../src/main/resources/struts.xml | 30 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/META-INF/context.xml | 2 -
.../src/main/webapp/WEB-INF/web.xml | 19 --
form_xml_validation/src/main/webapp/edit.jsp | 30 --
form_xml_validation/src/main/webapp/index.jsp | 16 -
.../src/main/webapp/thankyou.jsp | 21 --
helloworld/README.txt | 2 +-
helloworld/pom.xml | 35 ++-
http-session/README.txt | 16 +
http-session/pom.xml | 23 ++
.../helloworld/action/HelloWorldAction.java | 120 ++++++++
.../struts/helloworld/model/MessageStore.java | 31 ++
http-session/src/main/resources/log4j.dtd | 227 ++++++++++++++
http-session/src/main/resources/log4j.xml | 28 ++
http-session/src/main/resources/struts.xml | 45 +++
http-session/src/main/webapp/HelloWorld.jsp | 17 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
http-session/src/main/webapp/WEB-INF/web.xml | 19 ++
http-session/src/main/webapp/index.jsp | 28 ++
http_session/README.txt | 16 -
http_session/pom.xml | 23 --
.../helloworld/action/HelloWorldAction.java | 121 --------
.../struts/helloworld/model/MessageStore.java | 31 --
http_session/src/main/resources/log4j.dtd | 227 --------------
http_session/src/main/resources/log4j.xml | 28 --
http_session/src/main/resources/struts.xml | 45 ---
http_session/src/main/webapp/HelloWorld.jsp | 17 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
http_session/src/main/webapp/WEB-INF/web.xml | 19 --
http_session/src/main/webapp/index.jsp | 28 --
interceptors/pom.xml | 39 +--
jboss-blank/pom.xml | 7 -
mailreader/pom.xml | 5 -
message-resource/README.txt | 16 +
message-resource/pom.xml | 24 ++
.../helloworld/action/HelloWorldAction.java | 79 +++++
.../struts/helloworld/model/MessageStore.java | 31 ++
.../apache/struts/register/action/Register.java | 64 ++++
.../apache/struts/register/model/Person.java | 62 ++++
.../src/main/resources/global.properties | 1 +
.../src/main/resources/global_es.properties | 1 +
message-resource/src/main/resources/log4j.dtd | 227 ++++++++++++++
message-resource/src/main/resources/log4j.xml | 28 ++
.../org/apache/struts/package.properties | 2 +
.../org/apache/struts/package_es.properties | 2 +
.../struts/register/action/Register.properties | 6 +
.../register/action/Register_es.properties | 6 +
message-resource/src/main/resources/struts.xml | 37 +++
message-resource/src/main/webapp/HelloWorld.jsp | 19 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/WEB-INF/web.xml | 19 ++
message-resource/src/main/webapp/index.jsp | 43 +++
message-resource/src/main/webapp/register.jsp | 29 ++
message-resource/src/main/webapp/thankyou.jsp | 20 ++
message_resource/README.txt | 16 -
message_resource/pom.xml | 23 --
.../helloworld/action/HelloWorldAction.java | 80 -----
.../struts/helloworld/model/MessageStore.java | 31 --
.../apache/struts/register/action/Register.java | 65 ----
.../apache/struts/register/model/Person.java | 62 ----
.../src/main/resources/global.properties | 1 -
.../src/main/resources/global_es.properties | 1 -
message_resource/src/main/resources/log4j.dtd | 227 --------------
message_resource/src/main/resources/log4j.xml | 28 --
.../org/apache/struts/package.properties | 2 -
.../org/apache/struts/package_es.properties | 2 -
.../struts/register/action/Register.properties | 6 -
.../register/action/Register_es.properties | 6 -
message_resource/src/main/resources/struts.xml | 37 ---
message_resource/src/main/webapp/HelloWorld.jsp | 19 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/WEB-INF/web.xml | 19 --
message_resource/src/main/webapp/index.jsp | 42 ---
message_resource/src/main/webapp/register.jsp | 29 --
message_resource/src/main/webapp/thankyou.jsp | 20 --
pom.xml | 28 +-
preparable-interface/README.txt | 16 +
preparable-interface/pom.xml | 24 ++
.../apache/struts/edit/action/EditAction.java | 96 ++++++
.../org/apache/struts/edit/model/Person.java | 121 ++++++++
.../org/apache/struts/edit/model/State.java | 35 +++
.../struts/edit/service/CarModelsService.java | 18 ++
.../edit/service/CarModelsServiceHardCoded.java | 22 ++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 60 ++++
.../src/main/resources/log4j2.xml | 16 +
.../edit/action/EditAction-validation.xml | 35 +++
.../struts/edit/action/EditAction.properties | 10 +
.../src/main/resources/struts.xml | 30 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/WEB-INF/web.xml | 19 ++
preparable-interface/src/main/webapp/edit.jsp | 30 ++
preparable-interface/src/main/webapp/index.jsp | 16 +
.../src/main/webapp/thankyou.jsp | 21 ++
preparable_interface/README.txt | 16 -
preparable_interface/pom.xml | 24 --
.../apache/struts/edit/action/EditAction.java | 96 ------
.../org/apache/struts/edit/model/Person.java | 121 --------
.../org/apache/struts/edit/model/State.java | 35 ---
.../struts/edit/service/CarModelsService.java | 18 --
.../edit/service/CarModelsServiceHardCoded.java | 22 --
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 60 ----
.../src/main/resources/log4j2.xml | 16 -
.../edit/action/EditAction-validation.xml | 35 ---
.../struts/edit/action/EditAction.properties | 10 -
.../src/main/resources/struts.xml | 30 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/WEB-INF/web.xml | 19 --
preparable_interface/src/main/webapp/edit.jsp | 30 --
preparable_interface/src/main/webapp/index.jsp | 16 -
.../src/main/webapp/thankyou.jsp | 21 --
restful2actionmapper/pom.xml | 38 ++-
spring-struts/README.txt | 16 +
spring-struts/pom.xml | 29 ++
.../apache/struts/edit/action/EditAction.java | 106 +++++++
.../org/apache/struts/edit/model/Person.java | 96 ++++++
.../org/apache/struts/edit/model/State.java | 39 +++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 51 ++++
spring-struts/src/main/resources/log4j.dtd | 227 ++++++++++++++
spring-struts/src/main/resources/log4j.xml | 28 ++
.../struts/edit/action/EditAction.properties | 8 +
spring-struts/src/main/resources/struts.xml | 29 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../main/webapp/WEB-INF/applicationContext.xml | 10 +
spring-struts/src/main/webapp/WEB-INF/web.xml | 25 ++
spring-struts/src/main/webapp/edit.jsp | 29 ++
spring-struts/src/main/webapp/index.jsp | 16 +
spring-struts/src/main/webapp/thankyou.jsp | 21 ++
spring_struts/README.txt | 16 -
spring_struts/pom.xml | 28 --
.../apache/struts/edit/action/EditAction.java | 108 -------
.../org/apache/struts/edit/model/Person.java | 96 ------
.../org/apache/struts/edit/model/State.java | 39 ---
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 51 ----
spring_struts/src/main/resources/log4j.dtd | 227 --------------
spring_struts/src/main/resources/log4j.xml | 28 --
.../struts/edit/action/EditAction.properties | 8 -
spring_struts/src/main/resources/struts.xml | 29 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../main/webapp/WEB-INF/applicationContext.xml | 10 -
spring_struts/src/main/webapp/WEB-INF/web.xml | 25 --
spring_struts/src/main/webapp/edit.jsp | 29 --
spring_struts/src/main/webapp/index.jsp | 16 -
spring_struts/src/main/webapp/thankyou.jsp | 21 --
themes-override/README.txt | 16 +
themes-override/pom.xml | 40 +++
.../apache/struts/edit/action/EditAction.java | 95 ++++++
.../org/apache/struts/edit/model/Person.java | 96 ++++++
.../org/apache/struts/edit/model/State.java | 39 +++
.../apache/struts/edit/service/EditService.java | 12 +
.../edit/service/EditServiceInMemory.java | 51 ++++
themes-override/src/main/resources/log4j.dtd | 227 ++++++++++++++
themes-override/src/main/resources/log4j.xml | 28 ++
.../struts/edit/action/EditAction.properties | 8 +
themes-override/src/main/resources/struts.xml | 30 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../webapp/WEB-INF/template/simple/a-close.ftl | 45 +++
.../main/webapp/WEB-INF/template/simple/a.ftl | 22 ++
.../WEB-INF/template/simple/actionerror.ftl | 43 +++
.../WEB-INF/template/simple/actionmessage.ftl | 43 +++
.../webapp/WEB-INF/template/simple/checkbox.ftl | 50 +++
.../WEB-INF/template/simple/checkboxlist.ftl | 113 +++++++
.../webapp/WEB-INF/template/simple/combobox.ftl | 103 +++++++
.../template/simple/common-attributes.ftl | 25 ++
.../WEB-INF/template/simple/controlfooter.ftl | 22 ++
.../WEB-INF/template/simple/controlheader.ftl | 22 ++
.../main/webapp/WEB-INF/template/simple/css.ftl | 35 +++
.../webapp/WEB-INF/template/simple/debug.ftl | 82 +++++
.../WEB-INF/template/simple/div-close.ftl | 23 ++
.../main/webapp/WEB-INF/template/simple/div.ftl | 32 ++
.../WEB-INF/template/simple/doubleselect.ftl | 198 ++++++++++++
.../template/simple/dynamic-attributes.ftl | 34 +++
.../webapp/WEB-INF/template/simple/empty.ftl | 22 ++
.../WEB-INF/template/simple/fielderror.ftl | 82 +++++
.../webapp/WEB-INF/template/simple/file.ftl | 48 +++
.../WEB-INF/template/simple/form-close.ftl | 113 +++++++
.../WEB-INF/template/simple/form-common.ftl | 67 +++++
.../webapp/WEB-INF/template/simple/form.ftl | 27 ++
.../webapp/WEB-INF/template/simple/head.ftl | 23 ++
.../webapp/WEB-INF/template/simple/hidden.ftl | 41 +++
.../template/simple/inputtransferselect.ftl | 124 ++++++++
.../webapp/WEB-INF/template/simple/label.ftl | 45 +++
.../webapp/WEB-INF/template/simple/optgroup.ftl | 51 ++++
.../template/simple/optiontransferselect.ftl | 301 +++++++++++++++++++
.../webapp/WEB-INF/template/simple/password.ftl | 53 ++++
.../webapp/WEB-INF/template/simple/radiomap.ftl | 94 ++++++
.../webapp/WEB-INF/template/simple/reset.ftl | 76 +++++
.../template/simple/scripting-events.ftl | 64 ++++
.../webapp/WEB-INF/template/simple/select.ftl | 140 +++++++++
.../WEB-INF/template/simple/submit-close.ftl | 6 +
.../webapp/WEB-INF/template/simple/submit.ftl | 93 ++++++
.../webapp/WEB-INF/template/simple/table.ftl | 76 +++++
.../webapp/WEB-INF/template/simple/text.ftl | 54 ++++
.../webapp/WEB-INF/template/simple/textarea.ftl | 53 ++++
.../webapp/WEB-INF/template/simple/token.ftl | 24 ++
.../WEB-INF/template/simple/updownselect.ftl | 57 ++++
.../webapp/WEB-INF/template/xhtml/checkbox.ftl | 129 ++++++++
.../WEB-INF/template/xhtml/checkboxlist.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/combobox.ftl | 25 ++
.../WEB-INF/template/xhtml/control-close.ftl | 23 ++
.../webapp/WEB-INF/template/xhtml/control.ftl | 26 ++
.../WEB-INF/template/xhtml/controlfooter.ftl | 38 +++
.../template/xhtml/controlheader-core.ftl | 81 +++++
.../WEB-INF/template/xhtml/controlheader.ftl | 28 ++
.../WEB-INF/template/xhtml/doubleselect.ftl | 25 ++
.../main/webapp/WEB-INF/template/xhtml/file.ftl | 25 ++
.../template/xhtml/form-close-validate.ftl | 158 ++++++++++
.../WEB-INF/template/xhtml/form-close.ftl | 35 +++
.../WEB-INF/template/xhtml/form-validate.ftl | 31 ++
.../main/webapp/WEB-INF/template/xhtml/form.ftl | 33 ++
.../main/webapp/WEB-INF/template/xhtml/head.ftl | 24 ++
.../webapp/WEB-INF/template/xhtml/hidden.ftl | 27 ++
.../template/xhtml/inputtransferselect.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/label.ftl | 25 ++
.../template/xhtml/optiontransferselect.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/password.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/radiomap.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/reset.ftl | 31 ++
.../webapp/WEB-INF/template/xhtml/select.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/styles.css | 29 ++
.../WEB-INF/template/xhtml/submit-close.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/submit.ftl | 29 ++
.../main/webapp/WEB-INF/template/xhtml/text.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/textarea.ftl | 25 ++
.../WEB-INF/template/xhtml/theme.properties | 21 ++
.../webapp/WEB-INF/template/xhtml/tooltip.ftl | 41 +++
.../WEB-INF/template/xhtml/updownselect.ftl | 25 ++
.../webapp/WEB-INF/template/xhtml/validation.js | 139 +++++++++
themes-override/src/main/webapp/WEB-INF/web.xml | 19 ++
themes-override/src/main/webapp/edit.jsp | 29 ++
themes-override/src/main/webapp/index.jsp | 16 +
themes-override/src/main/webapp/thankyou.jsp | 21 ++
themes_override/README.txt | 16 -
themes_override/pom.xml | 42 ---
.../apache/struts/edit/action/EditAction.java | 96 ------
.../org/apache/struts/edit/model/Person.java | 96 ------
.../org/apache/struts/edit/model/State.java | 39 ---
.../apache/struts/edit/service/EditService.java | 12 -
.../edit/service/EditServiceInMemory.java | 51 ----
themes_override/src/main/resources/log4j.dtd | 227 --------------
themes_override/src/main/resources/log4j.xml | 28 --
.../struts/edit/action/EditAction.properties | 8 -
themes_override/src/main/resources/struts.xml | 30 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../webapp/WEB-INF/template/simple/a-close.ftl | 45 ---
.../main/webapp/WEB-INF/template/simple/a.ftl | 22 --
.../WEB-INF/template/simple/actionerror.ftl | 43 ---
.../WEB-INF/template/simple/actionmessage.ftl | 43 ---
.../webapp/WEB-INF/template/simple/checkbox.ftl | 50 ---
.../WEB-INF/template/simple/checkboxlist.ftl | 113 -------
.../webapp/WEB-INF/template/simple/combobox.ftl | 103 -------
.../template/simple/common-attributes.ftl | 25 --
.../WEB-INF/template/simple/controlfooter.ftl | 22 --
.../WEB-INF/template/simple/controlheader.ftl | 22 --
.../main/webapp/WEB-INF/template/simple/css.ftl | 35 ---
.../webapp/WEB-INF/template/simple/debug.ftl | 82 -----
.../WEB-INF/template/simple/div-close.ftl | 23 --
.../main/webapp/WEB-INF/template/simple/div.ftl | 32 --
.../WEB-INF/template/simple/doubleselect.ftl | 198 ------------
.../template/simple/dynamic-attributes.ftl | 34 ---
.../webapp/WEB-INF/template/simple/empty.ftl | 22 --
.../WEB-INF/template/simple/fielderror.ftl | 82 -----
.../webapp/WEB-INF/template/simple/file.ftl | 48 ---
.../WEB-INF/template/simple/form-close.ftl | 113 -------
.../WEB-INF/template/simple/form-common.ftl | 67 -----
.../webapp/WEB-INF/template/simple/form.ftl | 27 --
.../webapp/WEB-INF/template/simple/head.ftl | 23 --
.../webapp/WEB-INF/template/simple/hidden.ftl | 41 ---
.../template/simple/inputtransferselect.ftl | 124 --------
.../webapp/WEB-INF/template/simple/label.ftl | 45 ---
.../webapp/WEB-INF/template/simple/optgroup.ftl | 51 ----
.../template/simple/optiontransferselect.ftl | 301 -------------------
.../webapp/WEB-INF/template/simple/password.ftl | 53 ----
.../webapp/WEB-INF/template/simple/radiomap.ftl | 94 ------
.../webapp/WEB-INF/template/simple/reset.ftl | 76 -----
.../template/simple/scripting-events.ftl | 64 ----
.../webapp/WEB-INF/template/simple/select.ftl | 140 ---------
.../WEB-INF/template/simple/submit-close.ftl | 6 -
.../webapp/WEB-INF/template/simple/submit.ftl | 93 ------
.../webapp/WEB-INF/template/simple/table.ftl | 76 -----
.../webapp/WEB-INF/template/simple/text.ftl | 54 ----
.../webapp/WEB-INF/template/simple/textarea.ftl | 53 ----
.../webapp/WEB-INF/template/simple/token.ftl | 24 --
.../WEB-INF/template/simple/updownselect.ftl | 57 ----
.../webapp/WEB-INF/template/xhtml/checkbox.ftl | 129 --------
.../WEB-INF/template/xhtml/checkboxlist.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/combobox.ftl | 25 --
.../WEB-INF/template/xhtml/control-close.ftl | 23 --
.../webapp/WEB-INF/template/xhtml/control.ftl | 26 --
.../WEB-INF/template/xhtml/controlfooter.ftl | 38 ---
.../template/xhtml/controlheader-core.ftl | 81 -----
.../WEB-INF/template/xhtml/controlheader.ftl | 28 --
.../WEB-INF/template/xhtml/doubleselect.ftl | 25 --
.../main/webapp/WEB-INF/template/xhtml/file.ftl | 25 --
.../template/xhtml/form-close-validate.ftl | 158 ----------
.../WEB-INF/template/xhtml/form-close.ftl | 35 ---
.../WEB-INF/template/xhtml/form-validate.ftl | 31 --
.../main/webapp/WEB-INF/template/xhtml/form.ftl | 33 --
.../main/webapp/WEB-INF/template/xhtml/head.ftl | 24 --
.../webapp/WEB-INF/template/xhtml/hidden.ftl | 27 --
.../template/xhtml/inputtransferselect.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/label.ftl | 25 --
.../template/xhtml/optiontransferselect.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/password.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/radiomap.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/reset.ftl | 31 --
.../webapp/WEB-INF/template/xhtml/select.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/styles.css | 29 --
.../WEB-INF/template/xhtml/submit-close.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/submit.ftl | 29 --
.../main/webapp/WEB-INF/template/xhtml/text.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/textarea.ftl | 25 --
.../WEB-INF/template/xhtml/theme.properties | 21 --
.../webapp/WEB-INF/template/xhtml/tooltip.ftl | 41 ---
.../WEB-INF/template/xhtml/updownselect.ftl | 25 --
.../webapp/WEB-INF/template/xhtml/validation.js | 139 ---------
themes_override/src/main/webapp/WEB-INF/web.xml | 19 --
themes_override/src/main/webapp/edit.jsp | 29 --
themes_override/src/main/webapp/index.jsp | 16 -
themes_override/src/main/webapp/thankyou.jsp | 21 --
unit-testing/README.txt | 18 ++
unit-testing/pom.xml | 45 +++
.../apache/struts/register/action/Register.java | 64 ++++
.../apache/struts/register/model/Person.java | 62 ++++
unit-testing/src/main/resources/log4j.dtd | 227 ++++++++++++++
unit-testing/src/main/resources/log4j.xml | 28 ++
unit-testing/src/main/resources/struts.xml | 27 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
unit-testing/src/main/webapp/WEB-INF/web.xml | 19 ++
unit-testing/src/main/webapp/index.jsp | 17 ++
unit-testing/src/main/webapp/register.jsp | 27 ++
unit-testing/src/main/webapp/thankyou.jsp | 19 ++
.../struts/register/action/RegisterTest.java | 80 +++++
unit_testing/README.txt | 18 --
unit_testing/pom.xml | 45 ---
.../apache/struts/register/action/Register.java | 65 ----
.../apache/struts/register/model/Person.java | 62 ----
unit_testing/src/main/resources/log4j.dtd | 227 --------------
unit_testing/src/main/resources/log4j.xml | 28 --
unit_testing/src/main/resources/struts.xml | 27 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
unit_testing/src/main/webapp/WEB-INF/web.xml | 19 --
unit_testing/src/main/webapp/index.jsp | 17 --
unit_testing/src/main/webapp/register.jsp | 27 --
unit_testing/src/main/webapp/thankyou.jsp | 19 --
.../struts/register/action/RegisterTest.java | 82 -----
using-tags/README.txt | 16 +
using-tags/pom.xml | 23 ++
.../helloworld/action/HelloWorldAction.java | 62 ++++
.../helloworld/model/MessageStore.java | 31 ++
using-tags/src/main/resources/log4j.dtd | 227 ++++++++++++++
using-tags/src/main/resources/log4j.xml | 28 ++
using-tags/src/main/resources/struts.xml | 27 ++
using-tags/src/main/webapp/HelloWorld.jsp | 15 +
using-tags/src/main/webapp/WEB-INF/web.xml | 19 ++
using-tags/src/main/webapp/index.jsp | 28 ++
using_tags/README.txt | 16 -
using_tags/pom.xml | 21 --
.../helloworld/action/HelloWorldAction.java | 64 ----
.../helloworld/model/MessageStore.java | 31 --
using_tags/src/main/resources/log4j.dtd | 227 --------------
using_tags/src/main/resources/log4j.xml | 28 --
using_tags/src/main/resources/struts.xml | 27 --
using_tags/src/main/webapp/HelloWorld.jsp | 15 -
using_tags/src/main/webapp/WEB-INF/web.xml | 19 --
using_tags/src/main/webapp/index.jsp | 28 --
wildcard-method-selection/README.txt | 16 +
wildcard-method-selection/pom.xml | 39 +++
.../wildcardmethod/action/PersonAction.java | 93 ++++++
.../tutorials/wildcardmethod/model/Person.java | 55 ++++
.../wildcardmethod/service/PersonService.java | 88 ++++++
.../src/main/resources/log4j2.xml | 16 +
.../src/main/resources/struts.xml | 26 ++
.../src/main/webapp/META-INF/MANIFEST.MF | 3 +
.../src/main/webapp/WEB-INF/web.xml | 20 ++
.../src/main/webapp/index.jsp | 1 +
.../src/main/webapp/input.jsp | 40 +++
.../src/main/webapp/view.jsp | 60 ++++
wildcard_method_selection/README.txt | 16 -
wildcard_method_selection/pom.xml | 40 ---
.../wildcardmethod/action/PersonAction.java | 93 ------
.../tutorials/wildcardmethod/model/Person.java | 55 ----
.../wildcardmethod/service/PersonService.java | 88 ------
.../src/main/resources/log4j2.xml | 16 -
.../src/main/resources/struts.xml | 26 --
.../src/main/webapp/META-INF/MANIFEST.MF | 3 -
.../src/main/webapp/WEB-INF/web.xml | 20 --
.../src/main/webapp/index.jsp | 1 -
.../src/main/webapp/input.jsp | 40 ---
.../src/main/webapp/view.jsp | 60 ----
592 files changed, 13116 insertions(+), 13138 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/blank/pom.xml
----------------------------------------------------------------------
diff --git a/blank/pom.xml b/blank/pom.xml
index 0f51076..78f467c 100644
--- a/blank/pom.xml
+++ b/blank/pom.xml
@@ -49,13 +49,6 @@
<scope>provided</scope>
</dependency>
- <!-- Logging -->
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-core</artifactId>
- <version>${log4j2.version}</version>
- </dependency>
-
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-junit-plugin</artifactId>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/README.txt
----------------------------------------------------------------------
diff --git a/exception-handling/README.txt b/exception-handling/README.txt
new file mode 100644
index 0000000..de86365
--- /dev/null
+++ b/exception-handling/README.txt
@@ -0,0 +1,16 @@
+This is the example project referred to in the
+Struts 2 documentation, Exception Handling tutorial.
+See: http://struts.apache.org.
+
+To build the application's war file run mvn clean package
+from the project's root folder.
+
+The war file is created in the target sub-folder.
+
+Copy the war file to your Servlet container (e.g. Tomcat, GlassFish) and
+then startup the Servlet container.
+
+In a web browser go to: http://localhost:8080/exception-handling/index.action.
+
+You should see a web page with Welcome to Struts 2!
+
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/pom.xml
----------------------------------------------------------------------
diff --git a/exception-handling/pom.xml b/exception-handling/pom.xml
new file mode 100644
index 0000000..86a555d
--- /dev/null
+++ b/exception-handling/pom.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>struts.apache.org</groupId>
+ <artifactId>struts2examples</artifactId>
+ <version>1.0.0</version>
+ </parent>
+
+ <artifactId>exception-handling</artifactId>
+
+ <name>Exception handling</name>
+
+ <description>Exception handling example application for the Struts 2 getting started tutorials</description>
+ <packaging>war</packaging>
+
+ <build>
+ <finalName>exception-handling</finalName>
+ </build>
+
+</project>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java b/exception-handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
new file mode 100644
index 0000000..1285010
--- /dev/null
+++ b/exception-handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
@@ -0,0 +1,79 @@
+package org.apache.struts.helloworld.action;
+
+import com.opensymphony.xwork2.ActionSupport;
+import org.apache.struts.helloworld.model.MessageStore;
+
+/**
+ * Acts as a Struts 2 controller that responds
+ * to a user action by setting the value
+ * of the Message model class, and returns a String
+ * result.
+ * @author Bruce Phillips
+ *
+ */
+public class HelloWorldAction extends ActionSupport {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * The model class that stores the message
+ * to display in the view.
+ */
+ private MessageStore messageStore;
+
+ private static int helloCount = 0;
+
+ public int getHelloCount() {
+ return helloCount;
+ }
+
+ public void setHelloCount(int helloCount) {
+ HelloWorldAction.helloCount = helloCount;
+ }
+
+ private String userName;
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ /*
+ * Creates the MessageStore model object,
+ * increase helloCount by 1 and
+ * returns success. The MessageStore model
+ * object will be available to the view.
+ * (non-Javadoc)
+ * @see com.opensymphony.xwork2.ActionSupport#execute()
+ */
+ public String execute() throws Exception {
+
+ messageStore = new MessageStore() ;
+
+ //Action included a query string parameter of userName
+ //or a form field with name of userName
+ if (userName != null) {
+
+ messageStore.setMessage( messageStore.getMessage() + " " + userName);
+
+ }
+
+ helloCount++;
+
+ return SUCCESS;
+ }
+
+ public MessageStore getMessageStore() {
+ return messageStore;
+ }
+
+ public void setMessageStore(MessageStore messageStore) {
+ this.messageStore = messageStore;
+ }
+
+
+
+}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java b/exception-handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
new file mode 100644
index 0000000..b7fceeb
--- /dev/null
+++ b/exception-handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
@@ -0,0 +1,31 @@
+package org.apache.struts.helloworld.model;
+
+/**
+ * Model class that stores a message.
+ * @author Bruce Phillips
+ *
+ */
+public class MessageStore {
+
+ private String message;
+
+ public MessageStore() {
+
+ setMessage("Hello Struts User");
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public String toString() {
+
+ return message + " (from toString)";
+
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/java/org/apache/struts/register/action/Register.java
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/java/org/apache/struts/register/action/Register.java b/exception-handling/src/main/java/org/apache/struts/register/action/Register.java
new file mode 100644
index 0000000..991416b
--- /dev/null
+++ b/exception-handling/src/main/java/org/apache/struts/register/action/Register.java
@@ -0,0 +1,60 @@
+package org.apache.struts.register.action;
+
+import com.opensymphony.xwork2.ActionSupport;
+import org.apache.struts.register.exceptions.SecurityBreachException;
+import org.apache.struts.register.model.Person;
+
+
+
+/**
+ * Acts as a controller to handle actions related to registering a user.
+ *
+ * @author bruce phillips
+ *
+ */
+public class Register extends ActionSupport {
+
+ private static final long serialVersionUID = 1L;
+
+ private Person personBean;
+
+ @Override
+ public String execute() throws Exception {
+
+ // call Service class to store personBean's state in database
+
+ return SUCCESS;
+
+ }
+
+ public void throwException() throws Exception {
+
+ throw new Exception("Exception thrown from throwException");
+
+ }
+
+ public void throwNullPointerException() throws NullPointerException {
+
+ throw new NullPointerException("Null Pointer Exception thrown from "
+ + Register.class.toString());
+ }
+
+ public void throwSecurityException() throws SecurityBreachException {
+
+ throw new SecurityBreachException(
+ "Security breach exception thrown from throwSecurityException");
+ }
+
+ public Person getPersonBean() {
+
+ return personBean;
+
+ }
+
+ public void setPersonBean(Person person) {
+
+ personBean = person;
+
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java b/exception-handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
new file mode 100644
index 0000000..127c3bd
--- /dev/null
+++ b/exception-handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
@@ -0,0 +1,19 @@
+package org.apache.struts.register.exceptions;
+
+public class SecurityBreachException extends Exception {
+
+ private static final long serialVersionUID = -1232121594261703341L;
+
+ public SecurityBreachException() {
+
+ super("Security Exception");
+
+
+ }
+
+ public SecurityBreachException(String message) {
+
+ super(message);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/java/org/apache/struts/register/model/Person.java
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/java/org/apache/struts/register/model/Person.java b/exception-handling/src/main/java/org/apache/struts/register/model/Person.java
new file mode 100644
index 0000000..3020bbb
--- /dev/null
+++ b/exception-handling/src/main/java/org/apache/struts/register/model/Person.java
@@ -0,0 +1,62 @@
+package org.apache.struts.register.model;
+
+
+/**
+ * Models a Person who registers.
+ * @author bruce phillips
+ *
+ */
+public class Person
+{
+ private String firstName;
+ private String lastName;
+ private String email;
+ private int age;
+
+ public String getFirstName()
+ {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName)
+ {
+ this.firstName = firstName;
+ }
+
+ public String getLastName()
+ {
+ return lastName;
+ }
+
+ public void setLastName(String lastName)
+ {
+ this.lastName = lastName;
+ }
+
+ public String getEmail()
+ {
+ return email;
+ }
+
+ public void setEmail(String email)
+ {
+ this.email = email;
+ }
+
+ public int getAge()
+ {
+ return age;
+ }
+
+ public void setAge( int age)
+ {
+ this.age = age;
+ }
+
+
+ public String toString()
+ {
+ return "First Name: " + getFirstName() + " Last Name: " + getLastName() +
+ " Email: " + getEmail() + " Age: " + getAge() ;
+ }
+}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/resources/log4j.dtd
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/resources/log4j.dtd b/exception-handling/src/main/resources/log4j.dtd
new file mode 100644
index 0000000..1aabd96
--- /dev/null
+++ b/exception-handling/src/main/resources/log4j.dtd
@@ -0,0 +1,227 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Authors: Chris Taylor, Ceki Gulcu. -->
+
+<!-- Version: 1.2 -->
+
+<!-- A configuration element consists of optional renderer
+elements,appender elements, categories and an optional root
+element. -->
+
+<!ELEMENT log4j:configuration (renderer*, appender*,plugin*, (category|logger)*,root?,
+ (categoryFactory|loggerFactory)?)>
+
+<!-- The "threshold" attribute takes a level value below which -->
+<!-- all logging statements are disabled. -->
+
+<!-- Setting the "debug" enable the printing of internal log4j logging -->
+<!-- statements. -->
+
+<!-- By default, debug attribute is "null", meaning that we not do touch -->
+<!-- internal log4j logging settings. The "null" value for the threshold -->
+<!-- attribute can be misleading. The threshold field of a repository -->
+<!-- cannot be set to null. The "null" value for the threshold attribute -->
+<!-- simply means don't touch the threshold field, the threshold field -->
+<!-- keeps its old value. -->
+
+<!ATTLIST log4j:configuration
+ xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
+ threshold (all|trace|debug|info|warn|error|fatal|off|null) "null"
+ debug (true|false|null) "null"
+ reset (true|false) "false"
+>
+
+<!-- renderer elements allow the user to customize the conversion of -->
+<!-- message objects to String. -->
+
+<!ELEMENT renderer EMPTY>
+<!ATTLIST renderer
+ renderedClass CDATA #REQUIRED
+ renderingClass CDATA #REQUIRED
+>
+
+<!-- Appenders must have a name and a class. -->
+<!-- Appenders may contain an error handler, a layout, optional parameters -->
+<!-- and filters. They may also reference (or include) other appenders. -->
+<!ELEMENT appender (errorHandler?, param*,
+ rollingPolicy?, triggeringPolicy?, connectionSource?,
+ layout?, filter*, appender-ref*)>
+<!ATTLIST appender
+ name CDATA #REQUIRED
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT layout (param*)>
+<!ATTLIST layout
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT filter (param*)>
+<!ATTLIST filter
+ class CDATA #REQUIRED
+>
+
+<!-- ErrorHandlers can be of any class. They can admit any number of -->
+<!-- parameters. -->
+
+<!ELEMENT errorHandler (param*, root-ref?, logger-ref*, appender-ref?)>
+<!ATTLIST errorHandler
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT root-ref EMPTY>
+
+<!ELEMENT logger-ref EMPTY>
+<!ATTLIST logger-ref
+ ref CDATA #REQUIRED
+>
+
+<!ELEMENT param EMPTY>
+<!ATTLIST param
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+
+<!-- The priority class is org.apache.log4j.Level by default -->
+<!ELEMENT priority (param*)>
+<!ATTLIST priority
+ class CDATA #IMPLIED
+ value CDATA #REQUIRED
+>
+
+<!-- The level class is org.apache.log4j.Level by default -->
+<!ELEMENT level (param*)>
+<!ATTLIST level
+ class CDATA #IMPLIED
+ value CDATA #REQUIRED
+>
+
+
+<!-- If no level element is specified, then the configurator MUST not -->
+<!-- touch the level of the named category. -->
+<!ELEMENT category (param*,(priority|level)?,appender-ref*)>
+<!ATTLIST category
+ class CDATA #IMPLIED
+ name CDATA #REQUIRED
+ additivity (true|false) "true"
+>
+
+<!-- If no level element is specified, then the configurator MUST not -->
+<!-- touch the level of the named logger. -->
+<!ELEMENT logger (level?,appender-ref*)>
+<!ATTLIST logger
+ name CDATA #REQUIRED
+ additivity (true|false) "true"
+>
+
+
+<!ELEMENT categoryFactory (param*)>
+<!ATTLIST categoryFactory
+ class CDATA #REQUIRED>
+
+<!ELEMENT loggerFactory (param*)>
+<!ATTLIST loggerFactory
+ class CDATA #REQUIRED>
+
+<!ELEMENT appender-ref EMPTY>
+<!ATTLIST appender-ref
+ ref CDATA #REQUIRED
+>
+
+<!-- plugins must have a name and class and can have optional parameters -->
+<!ELEMENT plugin (param*, connectionSource?)>
+<!ATTLIST plugin
+ name CDATA #REQUIRED
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT connectionSource (dataSource?, param*)>
+<!ATTLIST connectionSource
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT dataSource (param*)>
+<!ATTLIST dataSource
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT triggeringPolicy ((param|filter)*)>
+<!ATTLIST triggeringPolicy
+ name CDATA #IMPLIED
+ class CDATA #REQUIRED
+>
+
+<!ELEMENT rollingPolicy (param*)>
+<!ATTLIST rollingPolicy
+ name CDATA #IMPLIED
+ class CDATA #REQUIRED
+>
+
+
+<!-- If no priority element is specified, then the configurator MUST not -->
+<!-- touch the priority of root. -->
+<!-- The root category always exists and cannot be subclassed. -->
+<!ELEMENT root (param*, (priority|level)?, appender-ref*)>
+
+
+<!-- ==================================================================== -->
+<!-- A logging event -->
+<!-- ==================================================================== -->
+<!ELEMENT log4j:eventSet (log4j:event*)>
+<!ATTLIST log4j:eventSet
+ xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
+ version (1.1|1.2) "1.2"
+ includesLocationInfo (true|false) "true"
+>
+
+
+
+<!ELEMENT log4j:event (log4j:message, log4j:NDC?, log4j:throwable?,
+ log4j:locationInfo?, log4j:properties?) >
+
+<!-- The timestamp format is application dependent. -->
+<!ATTLIST log4j:event
+ logger CDATA #REQUIRED
+ level CDATA #REQUIRED
+ thread CDATA #REQUIRED
+ timestamp CDATA #REQUIRED
+ time CDATA #IMPLIED
+>
+
+<!ELEMENT log4j:message (#PCDATA)>
+<!ELEMENT log4j:NDC (#PCDATA)>
+
+<!ELEMENT log4j:throwable (#PCDATA)>
+
+<!ELEMENT log4j:locationInfo EMPTY>
+<!ATTLIST log4j:locationInfo
+ class CDATA #REQUIRED
+ method CDATA #REQUIRED
+ file CDATA #REQUIRED
+ line CDATA #REQUIRED
+>
+
+<!ELEMENT log4j:properties (log4j:data*)>
+
+<!ELEMENT log4j:data EMPTY>
+<!ATTLIST log4j:data
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/resources/log4j.xml b/exception-handling/src/main/resources/log4j.xml
new file mode 100644
index 0000000..2100cb2
--- /dev/null
+++ b/exception-handling/src/main/resources/log4j.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd">
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
+
+ <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
+ <layout class="org.apache.log4j.PatternLayout">
+ <param name="ConversionPattern" value="%d %-5p %c.%M:%L - %m%n"/>
+ </layout>
+ </appender>
+
+ <!-- specify the logging level for loggers from other libraries -->
+ <logger name="com.opensymphony">
+ <level value="DEBUG" />
+ </logger>
+
+ <logger name="org.apache.struts2">
+ <level value="DEBUG" />
+ </logger>
+
+ <!-- for all other loggers log only debug and above log messages -->
+ <root>
+ <priority value="INFO"/>
+ <appender-ref ref="STDOUT" />
+ </root>
+
+</log4j:configuration>
+
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/resources/struts.xml
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/resources/struts.xml b/exception-handling/src/main/resources/struts.xml
new file mode 100644
index 0000000..c77b0de
--- /dev/null
+++ b/exception-handling/src/main/resources/struts.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE struts PUBLIC
+ "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
+ "http://struts.apache.org/dtds/struts-2.0.dtd">
+
+<struts>
+
+ <constant name="struts.devMode" value="true" />
+
+ <package name="basicstruts2" extends="struts-default">
+
+ <!-- setup the default-stack exception mapping interceptor
+ so that any exceptions not caught by this application
+ will be logged and then handled by the global exception
+ mapping -->
+ <interceptors>
+ <interceptor-stack name="appDefault">
+ <interceptor-ref name="defaultStack">
+ <param name="exception.logEnabled">true</param>
+ <param name="exception.logLevel">ERROR</param>
+ </interceptor-ref>
+ </interceptor-stack>
+ </interceptors>
+
+ <default-interceptor-ref name="appDefault" />
+
+ <global-results>
+ <result name="error">/error.jsp</result>
+ <result name="securityerror">/securityerror.jsp</result>
+ </global-results>
+
+
+ <global-exception-mappings>
+ <exception-mapping exception="org.apache.struts.register.exceptions.SecurityBreachException" result="securityerror" />
+ <exception-mapping exception="java.lang.Exception" result="error" />
+ </global-exception-mappings>
+
+
+
+ <action name="causesecurityexception" class="org.apache.struts.register.action.Register" method="throwSecurityException">
+ <result>/register.jsp</result>
+ </action>
+
+ <action name="causeexception" class="org.apache.struts.register.action.Register" method="throwException">
+ <result>/register.jsp</result>
+ </action>
+
+ <action name="causenullpointerexception" class="org.apache.struts.register.action.Register" method="throwNullPointerException">
+ <result>/register.jsp</result>
+ </action>
+
+ <action name="actionspecificexception" class="org.apache.struts.register.action.Register" method="throwSecurityException">
+ <exception-mapping exception="org.apache.struts.register.exceptions.SecurityBreachException"
+ result="login" />
+ <result>/register.jsp</result>
+ <result name="login">/login.jsp</result>
+ </action>
+
+ <!-- If no class attribute is specified the framework will assume success and
+ render the result index.jsp -->
+ <!-- If no name value for the result node is specified the success value is the default -->
+ <action name="index">
+ <result>/index.jsp</result>
+ </action>
+
+ <!-- If the URL is hello.action the call the execute method of class HelloWorldAction.
+ If the result returned by the execute method is success render the HelloWorld.jsp -->
+ <action name="hello" class="org.apache.struts.helloworld.action.HelloWorldAction" method="execute">
+ <result name="success">/HelloWorld.jsp</result>
+ </action>
+
+ <action name="register" class="org.apache.struts.register.action.Register" method="execute">
+ <result name="success">/thankyou.jsp</result>
+ </action>
+
+ </package>
+
+</struts>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/HelloWorld.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/HelloWorld.jsp b/exception-handling/src/main/webapp/HelloWorld.jsp
new file mode 100644
index 0000000..286a6ab
--- /dev/null
+++ b/exception-handling/src/main/webapp/HelloWorld.jsp
@@ -0,0 +1,16 @@
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Hello World!</title>
+</head>
+<body>
+<h2><s:property value="messageStore.message" /></h2>
+<p>I've said hello <s:property value="helloCount" /> times!</p>
+<p><s:property value="messageStore" /></p>
+<p><a href="<s:url action='index' />" >Return to home page</a>.</p>
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/META-INF/MANIFEST.MF
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/META-INF/MANIFEST.MF b/exception-handling/src/main/webapp/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..254272e
--- /dev/null
+++ b/exception-handling/src/main/webapp/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/WEB-INF/web.xml b/exception-handling/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..abfd1f4
--- /dev/null
+++ b/exception-handling/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+<display-name>Exception Handling</display-name>
+ <welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ </welcome-file-list>
+
+
+ <filter>
+ <filter-name>struts2</filter-name>
+ <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
+ </filter>
+
+ <filter-mapping>
+ <filter-name>struts2</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+
+</web-app>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/error.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/error.jsp b/exception-handling/src/main/webapp/error.jsp
new file mode 100644
index 0000000..d33d2e4
--- /dev/null
+++ b/exception-handling/src/main/webapp/error.jsp
@@ -0,0 +1,24 @@
+<%@ page contentType="text/html; charset=UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<html>
+
+ <head>
+ <title>Error</title>
+ </head>
+
+ <body>
+ <h4>The application has malfunctioned.</h4>
+ <p> Please contact technical support with the following information:</p>
+
+ <!-- the exception and exceptionStack bean properties
+ were created by Struts2's Exception Intercepter -->
+ <h4>Exception Name: <s:property value="exception" /> </h4>
+ <h4>Exception Details: <s:property value="exceptionStack" /></h4>
+
+
+ <p><a href="index.jsp">Return to the home page.</a></p>
+
+
+ </body>
+
+</html>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/index.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/index.jsp b/exception-handling/src/main/webapp/index.jsp
new file mode 100644
index 0000000..0e38bcc
--- /dev/null
+++ b/exception-handling/src/main/webapp/index.jsp
@@ -0,0 +1,39 @@
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Exception Handling Struts 2 Application - Welcome</title>
+</head>
+<body>
+<h1>Welcome To Struts 2!</h1>
+<p><a href="<s:url action='hello'/>">Hello World</a></p>
+<s:url action="hello" var="helloLink">
+ <s:param name="userName">Bruce Phillips</s:param>
+</s:url>
+<p><a href="${helloLink}">Hello Bruce Phillips</a></p>
+
+<p>Get your own personal hello by filling out and submitting this form.</p>
+
+<s:form action="hello">
+
+ <s:textfield name="userName" label="Your name" />
+
+ <s:submit value="Submit" />
+
+</s:form>
+
+<p><a href="register.jsp">Please register</a> for our prize drawing.</p>
+
+<p><a href='<s:url action="causeexception" />' >Cause Exception</a></p>
+
+<p><a href='<s:url action="causenullpointerexception" />' >Cause Null Pointer Exception</a></p>
+
+<p><a href='<s:url action="causesecurityexception" />' >Cause Global Security Exception</a></p>
+
+<p><a href='<s:url action="actionspecificexception" />' >Cause ActionSpecific Security Exception</a></p>
+
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/login.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/login.jsp b/exception-handling/src/main/webapp/login.jsp
new file mode 100644
index 0000000..1b59392
--- /dev/null
+++ b/exception-handling/src/main/webapp/login.jsp
@@ -0,0 +1,17 @@
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Exception Handling Struts 2 Application - Login</title>
+</head>
+<body>
+<h1>You Must Login</h1>
+<p>Please login</p>
+
+<p><a href="index.jsp">Return to the home page.</a></p>
+
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/register.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/register.jsp b/exception-handling/src/main/webapp/register.jsp
new file mode 100644
index 0000000..0adac76
--- /dev/null
+++ b/exception-handling/src/main/webapp/register.jsp
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Register</title>
+</head>
+<body>
+<h3>Register for a prize by completing this form.</h3>
+
+<s:form action="register">
+
+ <s:textfield name="personBean.firstName" label="First name" />
+ <s:textfield name="personBean.lastName" label="Last name" />
+ <s:textfield name="personBean.email" label ="Email"/>
+ <s:textfield name="personBean.age" label="Age" />
+
+ <s:submit/>
+
+</s:form>
+
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/securityerror.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/securityerror.jsp b/exception-handling/src/main/webapp/securityerror.jsp
new file mode 100644
index 0000000..ed6204d
--- /dev/null
+++ b/exception-handling/src/main/webapp/securityerror.jsp
@@ -0,0 +1,24 @@
+<%@ page contentType="text/html; charset=UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<html>
+
+ <head>
+ <title>Security Error</title>
+ </head>
+
+ <body>
+ <h4>There has been a security error.</h4>
+ <p> Please contact technical support with the following information:</p>
+
+ <!-- the exception and exceptionStack bean properties
+ were created by Struts2's Exception Intercepter -->
+ <h4>Exception Name: <s:property value="exception" /> </h4>
+ <h4>Exception Details: <s:property value="exceptionStack" /></h4>
+
+
+ <p><a href="index.jsp">Return to the home page.</a></p>
+
+
+ </body>
+
+</html>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception-handling/src/main/webapp/thankyou.jsp
----------------------------------------------------------------------
diff --git a/exception-handling/src/main/webapp/thankyou.jsp b/exception-handling/src/main/webapp/thankyou.jsp
new file mode 100644
index 0000000..3c845bc
--- /dev/null
+++ b/exception-handling/src/main/webapp/thankyou.jsp
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
+ pageEncoding="ISO-8859-1"%>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Registration Successful</title>
+</head>
+<body>
+<h3>Thank you for registering for a prize.</h3>
+
+<p>Your registration information: <s:property value="personBean" /> </p>
+
+<p><a href="<s:url action='index' />" >Return to home page</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/README.txt
----------------------------------------------------------------------
diff --git a/exception_handling/README.txt b/exception_handling/README.txt
deleted file mode 100644
index ad79377..0000000
--- a/exception_handling/README.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-This is the example project referred to in the
-Struts 2 documentation, Exception Handling tutorial.
-See: http://struts.apache.org.
-
-To build the application's war file run mvn clean package
-from the project's root folder.
-
-The war file is created in the target sub-folder.
-
-Copy the war file to your Servlet container (e.g. Tomcat, GlassFish) and
-then startup the Servlet container.
-
-In a web browser go to: http://localhost:8080/exception_handling/index.action.
-
-You should see a web page with Welcome to Struts 2!
-
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/pom.xml
----------------------------------------------------------------------
diff --git a/exception_handling/pom.xml b/exception_handling/pom.xml
deleted file mode 100644
index 3456b62..0000000
--- a/exception_handling/pom.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>struts.apache.org</groupId>
- <artifactId>struts2examples</artifactId>
- <version>1.0.0</version>
- </parent>
-
- <artifactId>exception_handling</artifactId>
-
- <name>Exception handling</name>
-
-<description>Exception handling example application for the
- Struts 2 getting started tutorials</description>
- <packaging>war</packaging>
-
- <build>
- <finalName>exception_handling</finalName>
- </build>
-
-</project>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java b/exception_handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
deleted file mode 100644
index 92fda49..0000000
--- a/exception_handling/src/main/java/org/apache/struts/helloworld/action/HelloWorldAction.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package org.apache.struts.helloworld.action;
-
-import org.apache.struts.helloworld.model.MessageStore;
-
-import com.opensymphony.xwork2.ActionSupport;
-
-/**
- * Acts as a Struts 2 controller that responds
- * to a user action by setting the value
- * of the Message model class, and returns a String
- * result.
- * @author Bruce Phillips
- *
- */
-public class HelloWorldAction extends ActionSupport {
-
- private static final long serialVersionUID = 1L;
-
- /**
- * The model class that stores the message
- * to display in the view.
- */
- private MessageStore messageStore;
-
- private static int helloCount = 0;
-
- public int getHelloCount() {
- return helloCount;
- }
-
- public void setHelloCount(int helloCount) {
- HelloWorldAction.helloCount = helloCount;
- }
-
- private String userName;
-
- public String getUserName() {
- return userName;
- }
-
- public void setUserName(String userName) {
- this.userName = userName;
- }
-
- /*
- * Creates the MessageStore model object,
- * increase helloCount by 1 and
- * returns success. The MessageStore model
- * object will be available to the view.
- * (non-Javadoc)
- * @see com.opensymphony.xwork2.ActionSupport#execute()
- */
- public String execute() throws Exception {
-
- messageStore = new MessageStore() ;
-
- //Action included a query string parameter of userName
- //or a form field with name of userName
- if (userName != null) {
-
- messageStore.setMessage( messageStore.getMessage() + " " + userName);
-
- }
-
- helloCount++;
-
- return SUCCESS;
- }
-
- public MessageStore getMessageStore() {
- return messageStore;
- }
-
- public void setMessageStore(MessageStore messageStore) {
- this.messageStore = messageStore;
- }
-
-
-
-}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java b/exception_handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
deleted file mode 100644
index b7fceeb..0000000
--- a/exception_handling/src/main/java/org/apache/struts/helloworld/model/MessageStore.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.apache.struts.helloworld.model;
-
-/**
- * Model class that stores a message.
- * @author Bruce Phillips
- *
- */
-public class MessageStore {
-
- private String message;
-
- public MessageStore() {
-
- setMessage("Hello Struts User");
- }
-
- public String getMessage() {
- return message;
- }
-
- public void setMessage(String message) {
- this.message = message;
- }
-
- public String toString() {
-
- return message + " (from toString)";
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/java/org/apache/struts/register/action/Register.java
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/java/org/apache/struts/register/action/Register.java b/exception_handling/src/main/java/org/apache/struts/register/action/Register.java
deleted file mode 100644
index 698f0e2..0000000
--- a/exception_handling/src/main/java/org/apache/struts/register/action/Register.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package org.apache.struts.register.action;
-
-import org.apache.struts.register.exceptions.SecurityBreachException;
-import org.apache.struts.register.model.Person;
-
-import com.opensymphony.xwork2.ActionSupport;
-
-
-
-/**
- * Acts as a controller to handle actions related to registering a user.
- *
- * @author bruce phillips
- *
- */
-public class Register extends ActionSupport {
-
- private static final long serialVersionUID = 1L;
-
- private Person personBean;
-
- @Override
- public String execute() throws Exception {
-
- // call Service class to store personBean's state in database
-
- return SUCCESS;
-
- }
-
- public void throwException() throws Exception {
-
- throw new Exception("Exception thrown from throwException");
-
- }
-
- public void throwNullPointerException() throws NullPointerException {
-
- throw new NullPointerException("Null Pointer Exception thrown from "
- + Register.class.toString());
- }
-
- public void throwSecurityException() throws SecurityBreachException {
-
- throw new SecurityBreachException(
- "Security breach exception thrown from throwSecurityException");
- }
-
- public Person getPersonBean() {
-
- return personBean;
-
- }
-
- public void setPersonBean(Person person) {
-
- personBean = person;
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java b/exception_handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
deleted file mode 100644
index a22152d..0000000
--- a/exception_handling/src/main/java/org/apache/struts/register/exceptions/SecurityBreachException.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.apache.struts.register.exceptions;
-
-public class SecurityBreachException extends Exception {
-
- private static final long serialVersionUID = -1232121594261703341L;
-
- public SecurityBreachException() {
-
- super("Security Exception");
-
-
- }
-
- public SecurityBreachException(String message) {
-
- super(message);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/java/org/apache/struts/register/model/Person.java
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/java/org/apache/struts/register/model/Person.java b/exception_handling/src/main/java/org/apache/struts/register/model/Person.java
deleted file mode 100644
index 3020bbb..0000000
--- a/exception_handling/src/main/java/org/apache/struts/register/model/Person.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package org.apache.struts.register.model;
-
-
-/**
- * Models a Person who registers.
- * @author bruce phillips
- *
- */
-public class Person
-{
- private String firstName;
- private String lastName;
- private String email;
- private int age;
-
- public String getFirstName()
- {
- return firstName;
- }
-
- public void setFirstName(String firstName)
- {
- this.firstName = firstName;
- }
-
- public String getLastName()
- {
- return lastName;
- }
-
- public void setLastName(String lastName)
- {
- this.lastName = lastName;
- }
-
- public String getEmail()
- {
- return email;
- }
-
- public void setEmail(String email)
- {
- this.email = email;
- }
-
- public int getAge()
- {
- return age;
- }
-
- public void setAge( int age)
- {
- this.age = age;
- }
-
-
- public String toString()
- {
- return "First Name: " + getFirstName() + " Last Name: " + getLastName() +
- " Email: " + getEmail() + " Age: " + getAge() ;
- }
-}
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/resources/log4j.dtd
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/resources/log4j.dtd b/exception_handling/src/main/resources/log4j.dtd
deleted file mode 100644
index 1aabd96..0000000
--- a/exception_handling/src/main/resources/log4j.dtd
+++ /dev/null
@@ -1,227 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!-- Authors: Chris Taylor, Ceki Gulcu. -->
-
-<!-- Version: 1.2 -->
-
-<!-- A configuration element consists of optional renderer
-elements,appender elements, categories and an optional root
-element. -->
-
-<!ELEMENT log4j:configuration (renderer*, appender*,plugin*, (category|logger)*,root?,
- (categoryFactory|loggerFactory)?)>
-
-<!-- The "threshold" attribute takes a level value below which -->
-<!-- all logging statements are disabled. -->
-
-<!-- Setting the "debug" enable the printing of internal log4j logging -->
-<!-- statements. -->
-
-<!-- By default, debug attribute is "null", meaning that we not do touch -->
-<!-- internal log4j logging settings. The "null" value for the threshold -->
-<!-- attribute can be misleading. The threshold field of a repository -->
-<!-- cannot be set to null. The "null" value for the threshold attribute -->
-<!-- simply means don't touch the threshold field, the threshold field -->
-<!-- keeps its old value. -->
-
-<!ATTLIST log4j:configuration
- xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
- threshold (all|trace|debug|info|warn|error|fatal|off|null) "null"
- debug (true|false|null) "null"
- reset (true|false) "false"
->
-
-<!-- renderer elements allow the user to customize the conversion of -->
-<!-- message objects to String. -->
-
-<!ELEMENT renderer EMPTY>
-<!ATTLIST renderer
- renderedClass CDATA #REQUIRED
- renderingClass CDATA #REQUIRED
->
-
-<!-- Appenders must have a name and a class. -->
-<!-- Appenders may contain an error handler, a layout, optional parameters -->
-<!-- and filters. They may also reference (or include) other appenders. -->
-<!ELEMENT appender (errorHandler?, param*,
- rollingPolicy?, triggeringPolicy?, connectionSource?,
- layout?, filter*, appender-ref*)>
-<!ATTLIST appender
- name CDATA #REQUIRED
- class CDATA #REQUIRED
->
-
-<!ELEMENT layout (param*)>
-<!ATTLIST layout
- class CDATA #REQUIRED
->
-
-<!ELEMENT filter (param*)>
-<!ATTLIST filter
- class CDATA #REQUIRED
->
-
-<!-- ErrorHandlers can be of any class. They can admit any number of -->
-<!-- parameters. -->
-
-<!ELEMENT errorHandler (param*, root-ref?, logger-ref*, appender-ref?)>
-<!ATTLIST errorHandler
- class CDATA #REQUIRED
->
-
-<!ELEMENT root-ref EMPTY>
-
-<!ELEMENT logger-ref EMPTY>
-<!ATTLIST logger-ref
- ref CDATA #REQUIRED
->
-
-<!ELEMENT param EMPTY>
-<!ATTLIST param
- name CDATA #REQUIRED
- value CDATA #REQUIRED
->
-
-
-<!-- The priority class is org.apache.log4j.Level by default -->
-<!ELEMENT priority (param*)>
-<!ATTLIST priority
- class CDATA #IMPLIED
- value CDATA #REQUIRED
->
-
-<!-- The level class is org.apache.log4j.Level by default -->
-<!ELEMENT level (param*)>
-<!ATTLIST level
- class CDATA #IMPLIED
- value CDATA #REQUIRED
->
-
-
-<!-- If no level element is specified, then the configurator MUST not -->
-<!-- touch the level of the named category. -->
-<!ELEMENT category (param*,(priority|level)?,appender-ref*)>
-<!ATTLIST category
- class CDATA #IMPLIED
- name CDATA #REQUIRED
- additivity (true|false) "true"
->
-
-<!-- If no level element is specified, then the configurator MUST not -->
-<!-- touch the level of the named logger. -->
-<!ELEMENT logger (level?,appender-ref*)>
-<!ATTLIST logger
- name CDATA #REQUIRED
- additivity (true|false) "true"
->
-
-
-<!ELEMENT categoryFactory (param*)>
-<!ATTLIST categoryFactory
- class CDATA #REQUIRED>
-
-<!ELEMENT loggerFactory (param*)>
-<!ATTLIST loggerFactory
- class CDATA #REQUIRED>
-
-<!ELEMENT appender-ref EMPTY>
-<!ATTLIST appender-ref
- ref CDATA #REQUIRED
->
-
-<!-- plugins must have a name and class and can have optional parameters -->
-<!ELEMENT plugin (param*, connectionSource?)>
-<!ATTLIST plugin
- name CDATA #REQUIRED
- class CDATA #REQUIRED
->
-
-<!ELEMENT connectionSource (dataSource?, param*)>
-<!ATTLIST connectionSource
- class CDATA #REQUIRED
->
-
-<!ELEMENT dataSource (param*)>
-<!ATTLIST dataSource
- class CDATA #REQUIRED
->
-
-<!ELEMENT triggeringPolicy ((param|filter)*)>
-<!ATTLIST triggeringPolicy
- name CDATA #IMPLIED
- class CDATA #REQUIRED
->
-
-<!ELEMENT rollingPolicy (param*)>
-<!ATTLIST rollingPolicy
- name CDATA #IMPLIED
- class CDATA #REQUIRED
->
-
-
-<!-- If no priority element is specified, then the configurator MUST not -->
-<!-- touch the priority of root. -->
-<!-- The root category always exists and cannot be subclassed. -->
-<!ELEMENT root (param*, (priority|level)?, appender-ref*)>
-
-
-<!-- ==================================================================== -->
-<!-- A logging event -->
-<!-- ==================================================================== -->
-<!ELEMENT log4j:eventSet (log4j:event*)>
-<!ATTLIST log4j:eventSet
- xmlns:log4j CDATA #FIXED "http://jakarta.apache.org/log4j/"
- version (1.1|1.2) "1.2"
- includesLocationInfo (true|false) "true"
->
-
-
-
-<!ELEMENT log4j:event (log4j:message, log4j:NDC?, log4j:throwable?,
- log4j:locationInfo?, log4j:properties?) >
-
-<!-- The timestamp format is application dependent. -->
-<!ATTLIST log4j:event
- logger CDATA #REQUIRED
- level CDATA #REQUIRED
- thread CDATA #REQUIRED
- timestamp CDATA #REQUIRED
- time CDATA #IMPLIED
->
-
-<!ELEMENT log4j:message (#PCDATA)>
-<!ELEMENT log4j:NDC (#PCDATA)>
-
-<!ELEMENT log4j:throwable (#PCDATA)>
-
-<!ELEMENT log4j:locationInfo EMPTY>
-<!ATTLIST log4j:locationInfo
- class CDATA #REQUIRED
- method CDATA #REQUIRED
- file CDATA #REQUIRED
- line CDATA #REQUIRED
->
-
-<!ELEMENT log4j:properties (log4j:data*)>
-
-<!ELEMENT log4j:data EMPTY>
-<!ATTLIST log4j:data
- name CDATA #REQUIRED
- value CDATA #REQUIRED
->
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/exception_handling/src/main/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/exception_handling/src/main/resources/log4j.xml b/exception_handling/src/main/resources/log4j.xml
deleted file mode 100644
index 2100cb2..0000000
--- a/exception_handling/src/main/resources/log4j.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd">
-
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
-
- <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern" value="%d %-5p %c.%M:%L - %m%n"/>
- </layout>
- </appender>
-
- <!-- specify the logging level for loggers from other libraries -->
- <logger name="com.opensymphony">
- <level value="DEBUG" />
- </logger>
-
- <logger name="org.apache.struts2">
- <level value="DEBUG" />
- </logger>
-
- <!-- for all other loggers log only debug and above log messages -->
- <root>
- <priority value="INFO"/>
- <appender-ref ref="STDOUT" />
- </root>
-
-</log4j:configuration>
-