http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/controlheader.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/controlheader.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/controlheader.ftl deleted file mode 100644 index 4a15058..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/controlheader.ftl +++ /dev/null @@ -1,28 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader-core.ftl" /> - <td -<#if parameters.align??> - align="${parameters.align?html}"<#t/> -</#if> -><#t/>
http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/doubleselect.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/doubleselect.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/doubleselect.ftl deleted file mode 100644 index f923462..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/doubleselect.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/doubleselect.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/file.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/file.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/file.ftl deleted file mode 100644 index cae4a2e..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/file.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/file.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close-validate.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close-validate.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close-validate.ftl deleted file mode 100644 index f129156..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close-validate.ftl +++ /dev/null @@ -1,158 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#-- -START SNIPPET: supported-validators -Only the following validators are supported: -* required validator -* requiredstring validator -* stringlength validator -* regex validator -* email validator -* url validator -* int validator -* double validator -END SNIPPET: supported-validators ---> -<#if ((parameters.validate!false == true) && (parameters.performValidation!false == true))> -<script type="text/javascript"> - function validateForm_${parameters.id?replace('[^a-zA-Z0-9_]', '_', 'r')}() { - <#-- - In case of multiselect fields return only the first value. - --> - var getFieldValue = function(field) { - var type = field.type ? field.type : field[0].type; - if (type == 'select-one' || type == 'select-multiple') { - return (field.selectedIndex == -1 ? "" : field.options[field.selectedIndex].value); - } else if (type == 'checkbox' || type == 'radio') { - if (!field.length) { - field = [field]; - } - for (var i = 0; i < field.length; i++) { - if (field[i].checked) { - return field[i].value; - } - } - return ""; - } - return field.value; - } - form = document.getElementById("${parameters.id}"); - clearErrorMessages(form); - clearErrorLabels(form); - - var errors = false; - var continueValidation = true; - <#list parameters.tagNames as tagName> - <#list tag.getValidators("${tagName}") as aValidator> - // field name: ${aValidator.fieldName} - // validator name: ${aValidator.validatorType} - if (form.elements['${aValidator.fieldName}']) { - field = form.elements['${aValidator.fieldName}']; - <#if aValidator.validatorType = "field-visitor"> - <#assign validator = aValidator.fieldValidator > - //visitor validator switched to: ${validator.validatorType} - <#else> - <#assign validator = aValidator > - </#if> - - var error = "${validator.getMessage(action)?js_string}"; - var fieldValue = getFieldValue(field); - - <#if validator.validatorType = "required"> - if (fieldValue == "") { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - <#elseif validator.validatorType = "requiredstring"> - if (continueValidation && fieldValue != null && (fieldValue == "" || fieldValue.replace(/^\s+|\s+$/g,"").length == 0)) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - <#elseif validator.validatorType = "stringlength"> - if (continueValidation && fieldValue != null) { - var value = fieldValue; - <#if validator.trim> - //trim field value - while (value.substring(0,1) == ' ') - value = value.substring(1, value.length); - while (value.substring(value.length-1, value.length) == ' ') - value = value.substring(0, value.length-1); - </#if> - if ((${validator.minLength?c} > -1 && value.length < ${validator.minLength?c}) || - (${validator.maxLength?c} > -1 && value.length > ${validator.maxLength?c})) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - } - <#elseif validator.validatorType = "regex"> - if (continueValidation && fieldValue != null && !fieldValue.match("${validator.regex?js_string}")) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - <#elseif validator.validatorType = "email"> - if (continueValidation && fieldValue != null && fieldValue.length > 0 && fieldValue.match("${validator.regex?js_string}")==null) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - <#elseif validator.validatorType = "url"> - if (continueValidation && fieldValue != null && fieldValue.length > 0 && fieldValue.match("/${validator.urlRegex?js_string}/i")==null) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - <#elseif validator.validatorType = "int" || validator.validatorType = "short"> - if (continueValidation && fieldValue != null) { - if (<#if validator.min??>parseInt(fieldValue) < - ${validator.min?c}<#else>false</#if> || - <#if validator.max??>parseInt(fieldValue) > - ${validator.max?c}<#else>false</#if>) { - addError(field, error); - errors = true; - <#if validator.shortCircuit>continueValidation = false;</#if> - } - } - <#elseif validator.validatorType = "double"> - if (continueValidation && fieldValue != null) { - var value = parseFloat(fieldValue); - if (<#if validator.minInclusive??>value < ${validator.minInclusive?c}<#else>false</#if> || - <#if validator.maxInclusive??>value > ${validator.maxInclusive?c}<#else>false</#if> || - <#if validator.minExclusive??>value <= ${validator.minExclusive?c}<#else>false</#if> || - <#if validator.maxExclusive??>value >= ${validator.maxExclusive?c}<#else>false</#if>) { - addError(field, error); - errors = true; - } - } - </#if> - } - </#list> - </#list> - - return !errors; - } -</script> -</#if> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close.ftl deleted file mode 100644 index d783454..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-close.ftl +++ /dev/null @@ -1,35 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/control-close.ftl" /> -<#include "/${parameters.templateDir}/simple/form-close.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/form-close-validate.ftl" /> -<#if parameters.focusElement?if_exists != ""> -<script type="text/javascript"> - StrutsUtils.addOnLoad(function() { - var element = document.getElementById("${parameters.focusElement?html}"); - if(element) { - element.focus(); - } - }); -</script> -</#if> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-validate.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-validate.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-validate.ftl deleted file mode 100644 index 6597f4e..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form-validate.ftl +++ /dev/null @@ -1,31 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#if parameters.validate?default(false) == true> - <script type="text/javascript" src="${base}/struts/xhtml/validation.js"></script> - <script type="text/javascript" src="${base}/struts/utils.js"></script> - <#if parameters.onsubmit??> - ${tag.addParameter('onsubmit', "${parameters.onsubmit}; return validateForm_${parameters.id?replace('[^a-zA-Z0-9_]', '_', 'r')}();")} - <#else> - ${tag.addParameter('onsubmit', "return validateForm_${parameters.id?replace('[^a-zA-Z0-9_]', '_', 'r')}();")} - </#if> -</#if> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/form.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/form.ftl deleted file mode 100644 index 5a686dd..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/form.ftl +++ /dev/null @@ -1,33 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/form-validate.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/form-common.ftl" /> -<#if (parameters.validate?default(false))> - onreset="${parameters.onreset?default('clearErrorMessages(this);clearErrorLabels(this);')}" -<#else> - <#if parameters.onreset??> - onreset="${parameters.onreset?html}" - </#if> -</#if> -> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/control.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/head.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/head.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/head.ftl deleted file mode 100644 index e8a8fb8..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/head.ftl +++ /dev/null @@ -1,24 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<link rel="stylesheet" href="<@s.url value='/struts/xhtml/styles.css' includeParams='none' encode='false' />" type="text/css"/> -<#include "/${parameters.templateDir}/simple/head.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/hidden.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/hidden.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/hidden.ftl deleted file mode 100644 index 92881ab..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/hidden.ftl +++ /dev/null @@ -1,27 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<tr style="display:none;"> - <td colspan="2"> - <#include "/${parameters.templateDir}/simple/hidden.ftl" /> - </td> -</tr> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/inputtransferselect.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/inputtransferselect.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/inputtransferselect.ftl deleted file mode 100644 index f25a6ab..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/inputtransferselect.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/inputtransferselect.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/label.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/label.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/label.ftl deleted file mode 100644 index 8faf8d6..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/label.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/label.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/optiontransferselect.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/optiontransferselect.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/optiontransferselect.ftl deleted file mode 100644 index e1cd440..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/optiontransferselect.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/optiontransferselect.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/password.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/password.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/password.ftl deleted file mode 100644 index 202da51..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/password.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/password.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/radiomap.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/radiomap.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/radiomap.ftl deleted file mode 100644 index 008de45..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/radiomap.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/radiomap.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/reset.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/reset.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/reset.ftl deleted file mode 100644 index 8e6e2b5..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/reset.ftl +++ /dev/null @@ -1,31 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<tr> - <td colspan="2"><div <#rt/> -<#if parameters.align??> - align="${parameters.align?html}"<#t/> -</#if> -><#t/> -<#include "/${parameters.templateDir}/simple/reset.ftl" /> -</div><#t/> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/select.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/select.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/select.ftl deleted file mode 100644 index 9d07046..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/select.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/select.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/styles.css ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/styles.css b/themes_override/src/main/webapp/WEB-INF/template/xhtml/styles.css deleted file mode 100644 index dd54904..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/styles.css +++ /dev/null @@ -1,29 +0,0 @@ -/* - * $Id$ - * - * 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. - */ - -.wwFormTable {} -.label {font-style:italic; } -.errorLabel {font-style:italic; color:red; } -.errorMessage {font-weight:bold; color:red; } -.checkboxLabel {} -.checkboxErrorLabel {color:red; } -.required {color:red;} -.tdLabel {text-align:right; vertical-align:top; } http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit-close.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit-close.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit-close.ftl deleted file mode 100644 index faa551c..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit-close.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/simple/submit-close.ftl" /> -</div><#t/> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit.ftl deleted file mode 100644 index 7b82921..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/submit.ftl +++ /dev/null @@ -1,29 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<tr> - <td colspan="2"><div <#rt/> -<#if parameters.align??> - align="${parameters.align?html}"<#t/> -</#if> -><#t/> -<#include "/${parameters.templateDir}/simple/submit.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/text.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/text.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/text.ftl deleted file mode 100644 index 53f1647..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/text.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/text.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/textarea.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/textarea.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/textarea.ftl deleted file mode 100644 index 46f77d9..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/textarea.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/textarea.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/theme.properties ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/theme.properties b/themes_override/src/main/webapp/WEB-INF/template/xhtml/theme.properties deleted file mode 100644 index 84dc155..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/theme.properties +++ /dev/null @@ -1,21 +0,0 @@ -# -# $Id$ -# -# 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. -# -parent = simple http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/tooltip.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/tooltip.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/tooltip.ftl deleted file mode 100644 index 74938a8..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/tooltip.ftl +++ /dev/null @@ -1,41 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#if parameters.tooltip??><#t/> - <img - <#if parameters.tooltipIconPath??><#t/> - src='<@s.url value="${parameters.tooltipIconPath}" includeParams="none" encode="false" />' - <#else><#t/> - src='<@s.url value="/struts/tooltip.gif" includeParams="none" encode="false" />' - </#if><#t/> - <#if parameters.jsTooltipEnabled?default('false') == 'true'> - onmouseover="domTT_activate(this, event, 'content', '${parameters.tooltip}'<#t/> - <#if parameters.tooltipDelay??><#t/> - <#t/>,'delay', '${parameters.tooltipDelay}'<#t/> - </#if><#t/> - <#t/>,'styleClass', '${parameters.tooltipCssClass?default("StrutsTTClassic")}'<#t/> - <#t/>)" /> - <#else> - title="${parameters.tooltip?html}" - alt="${parameters.tooltip?html}" /> - </#if> -</#if><#t/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/updownselect.ftl ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/updownselect.ftl b/themes_override/src/main/webapp/WEB-INF/template/xhtml/updownselect.ftl deleted file mode 100644 index bd575f7..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/updownselect.ftl +++ /dev/null @@ -1,25 +0,0 @@ -<#-- -/* - * $Id$ - * - * 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. - */ ---> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlheader.ftl" /> -<#include "/${parameters.templateDir}/simple/updownselect.ftl" /> -<#include "/${parameters.templateDir}/${parameters.expandTheme}/controlfooter.ftl" /><#nt/> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/template/xhtml/validation.js ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/template/xhtml/validation.js b/themes_override/src/main/webapp/WEB-INF/template/xhtml/validation.js deleted file mode 100644 index e63751b..0000000 --- a/themes_override/src/main/webapp/WEB-INF/template/xhtml/validation.js +++ /dev/null @@ -1,139 +0,0 @@ -/* - * $Id$ - * - * 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. - */ - -function clearErrorMessagesXHTML(form) { - - // get field table - var table, i, r; - for (i = 0; i < form.childNodes.length; i++) { - if (form.childNodes[i].tagName !== undefined && form.childNodes[i].tagName.toLowerCase() === 'table') { - table = form.childNodes[i]; - break; - } - } - - if (table === null) { - return; - } - - // clear out any rows with an "errorFor" attribute - var rows = table.rows; - if (rows === null){ - return; - } - - var rowsToDelete = []; - for(i = 0; i < rows.length; i++) { - r = rows[i]; - // allow blank errorFor values on dojo markup - if (r.getAttribute("errorFor") !== null) { - rowsToDelete.push(r); - } - } - - // now delete the rows - for (i = 0; i < rowsToDelete.length; i++) { - r = rowsToDelete[i]; - table.deleteRow(r.rowIndex); - //table.removeChild(rowsToDelete[i]); - } -} - -function clearErrorMessages(form) { - clearErrorMessagesXHTML(form); -} - -function clearErrorLabelsXHTML(form) { - // set all labels back to the normal class - var i, elements = form.elements; - for (i = 0; i < elements.length; i++) { - - var parentEl = elements[i]; - // search for the parent table row, abort if the form is reached - // the form may contain "non-wrapped" inputs inserted by Dojo - while (parentEl.nodeName.toUpperCase() !== "TR" && parentEl.nodeName.toUpperCase() !== "FORM") { - parentEl = parentEl.parentNode; - } - if (parentEl.nodeName.toUpperCase() === "FORM") { - parentEl = null; - } - - //if labelposition is 'top' the label is on the row above - if(parentEl && parentEl.cells) { - var labelRow = parentEl.cells.length > 1 ? parentEl : StrutsUtils.previousElement(parentEl, "tr"); - if (labelRow) { - var cells = labelRow.cells; - if (cells && cells.length >= 1) { - var label = cells[0].getElementsByTagName("label")[0]; - if (label) { - label.setAttribute("class", "label"); - label.setAttribute("className", "label"); //ie hack cause ie does not support setAttribute - } - } - } - } - } - -} - -function clearErrorLabels(form) { - clearErrorLabelsXHTML(form); -} - -function addErrorXHTML(e, errorText) { - try { - var row = (e.type ? e : e[0]); - while(row.nodeName.toUpperCase() !== "TR") { - row = row.parentNode; - } - var table = row.parentNode; - var error = document.createTextNode(errorText); - var tr = document.createElement("tr"); - var td = document.createElement("td"); - var span = document.createElement("span"); - td.align = "center"; - td.valign = "top"; - td.colSpan = 2; - span.setAttribute("class", "errorMessage"); - span.setAttribute("className", "errorMessage"); //ie hack cause ie does not support setAttribute - span.appendChild(error); - td.appendChild(span); - tr.appendChild(td); - tr.setAttribute("errorFor", e.id); - table.insertBefore(tr, row); - - // update the label too - //if labelposition is 'top' the label is on the row above - var labelRow = row.cells.length > 1 ? row : StrutsUtils.previousElement(tr, "tr"); - var label = labelRow.cells[0].getElementsByTagName("label")[0]; - if (label) { - label.setAttribute("class", "errorLabel"); - label.setAttribute("className", "errorLabel"); //ie hack cause ie does not support setAttribute - } - } catch (err) { - alert(err); - } -} - -function addError(e, errorText) { - addErrorXHTML(e, errorText); -} - http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/WEB-INF/web.xml ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/WEB-INF/web.xml b/themes_override/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index a5fcf75..0000000 --- a/themes_override/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?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>Themes Struts 2</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/themes_override/src/main/webapp/edit.jsp ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/edit.jsp b/themes_override/src/main/webapp/edit.jsp deleted file mode 100644 index bb1ef76..0000000 --- a/themes_override/src/main/webapp/edit.jsp +++ /dev/null @@ -1,29 +0,0 @@ -<%@ 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> -<s:head /> -<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> -<title>Struts 2 Form Tags - Edit Person</title> - -</head> -<body> -<h1>Update Information</h1> - -<p>Use the form below to edit your information.</p> - -<s:form action="save" method="post"> -<s:textfield key="personBean.firstName" /> -<s:textfield key="personBean.lastName" /> -<s:select key="personBean.sport" list="sports" /> -<s:radio key="personBean.gender" list="genders" /> -<s:select key="personBean.residency" list="states" listKey="stateAbbr" listValue="stateName" /> -<s:checkbox key="personBean.over21" /> -<s:checkboxlist key="personBean.carModels" list="carModelsAvailable" /> -<s:submit key="submit" /> -</s:form> - -</body> -</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/index.jsp ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/index.jsp b/themes_override/src/main/webapp/index.jsp deleted file mode 100644 index 88209d8..0000000 --- a/themes_override/src/main/webapp/index.jsp +++ /dev/null @@ -1,16 +0,0 @@ -<%@ 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>Struts 2 Form Tags - Welcome</title> -</head> -<body> -<h1>Welcome To Struts 2!</h1> - -<p><a href='<s:url action="edit" />' >Edit your information</a></p> - -</body> -</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/themes_override/src/main/webapp/thankyou.jsp ---------------------------------------------------------------------- diff --git a/themes_override/src/main/webapp/thankyou.jsp b/themes_override/src/main/webapp/thankyou.jsp deleted file mode 100644 index 7c268ef..0000000 --- a/themes_override/src/main/webapp/thankyou.jsp +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="ISO-8859-1" ?> -<%@ 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 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>Update Successful</title> -</head> -<body> - -<h1>Updated Information</h1> - - -<p>Your 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/unit-testing/README.txt ---------------------------------------------------------------------- diff --git a/unit-testing/README.txt b/unit-testing/README.txt new file mode 100644 index 0000000..61377ee --- /dev/null +++ b/unit-testing/README.txt @@ -0,0 +1,18 @@ +This is the example project referred to in the +Struts 2 documentation, Unit Testing tutorial. +See: http://struts.apache.org. + +To build the application's war file run mvn clean package +from the project's root folder. + +As part of packaging the war file, Maven will run the unit test. + +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/unit-testing/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/unit-testing/pom.xml ---------------------------------------------------------------------- diff --git a/unit-testing/pom.xml b/unit-testing/pom.xml new file mode 100644 index 0000000..38ceeee --- /dev/null +++ b/unit-testing/pom.xml @@ -0,0 +1,45 @@ +<?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>unit-testing</artifactId> + + <name>Unit Testing</name> + + <build> + <finalName>unit-testing</finalName> + </build> + + <packaging>war</packaging> + + <dependencies> + <dependency> + <groupId>org.apache.struts</groupId> + <artifactId>struts2-junit-plugin</artifactId> + <version>${struts2.version}</version> + <type>jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.4</version> + <type>jar</type> + <scope>test</scope> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>jsp-api</artifactId> + <version>2.0</version> + <type>jar</type> + <scope>test</scope> + </dependency> + </dependencies> +</project> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit-testing/src/main/java/org/apache/struts/register/action/Register.java ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/java/org/apache/struts/register/action/Register.java b/unit-testing/src/main/java/org/apache/struts/register/action/Register.java new file mode 100644 index 0000000..cbdb5e9 --- /dev/null +++ b/unit-testing/src/main/java/org/apache/struts/register/action/Register.java @@ -0,0 +1,64 @@ +package org.apache.struts.register.action; + +import com.opensymphony.xwork2.ActionSupport; +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; + + + public String execute() throws Exception { + + //call Service class to store personBean's state in database + + return SUCCESS; + + } + + public void validate(){ + + if ( personBean.getFirstName() == null || personBean.getFirstName().length() == 0 ){ + + addFieldError( "personBean.firstName", "First name is required." ); + + } + + + if ( personBean.getEmail() == null || personBean.getEmail().length() == 0 ){ + + addFieldError( "personBean.email", "Email is required." ); + + } + + if ( personBean.getAge() < 18 ){ + + addFieldError( "personBean.age", "Age is required and must be 18 or older" ); + + } + + + } + + + public Person getPersonBean() { + + return personBean; + + } + + public void setPersonBean(Person person) { + + personBean = person; + + } + +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit-testing/src/main/java/org/apache/struts/register/model/Person.java ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/java/org/apache/struts/register/model/Person.java b/unit-testing/src/main/java/org/apache/struts/register/model/Person.java new file mode 100644 index 0000000..3020bbb --- /dev/null +++ b/unit-testing/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/unit-testing/src/main/resources/log4j.dtd ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/resources/log4j.dtd b/unit-testing/src/main/resources/log4j.dtd new file mode 100644 index 0000000..1aabd96 --- /dev/null +++ b/unit-testing/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/unit-testing/src/main/resources/log4j.xml ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/resources/log4j.xml b/unit-testing/src/main/resources/log4j.xml new file mode 100644 index 0000000..2100cb2 --- /dev/null +++ b/unit-testing/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/unit-testing/src/main/resources/struts.xml ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/resources/struts.xml b/unit-testing/src/main/resources/struts.xml new file mode 100644 index 0000000..21cc563 --- /dev/null +++ b/unit-testing/src/main/resources/struts.xml @@ -0,0 +1,27 @@ +<?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"> + + <!-- 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> + + + <action name="register" class="org.apache.struts.register.action.Register" method="execute"> + <result name="success">/thankyou.jsp</result> + <result name="input">/register.jsp</result> + </action> + + </package> + +</struts> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit-testing/src/main/webapp/META-INF/MANIFEST.MF ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/webapp/META-INF/MANIFEST.MF b/unit-testing/src/main/webapp/META-INF/MANIFEST.MF new file mode 100644 index 0000000..254272e --- /dev/null +++ b/unit-testing/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/unit-testing/src/main/webapp/WEB-INF/web.xml ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/webapp/WEB-INF/web.xml b/unit-testing/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..794e993 --- /dev/null +++ b/unit-testing/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>Struts 2 Unit Testing</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/unit-testing/src/main/webapp/index.jsp ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/webapp/index.jsp b/unit-testing/src/main/webapp/index.jsp new file mode 100644 index 0000000..48d3fc5 --- /dev/null +++ b/unit-testing/src/main/webapp/index.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>Basic Struts 2 Application - Welcome</title> +</head> +<body> +<h1>Welcome To Struts 2!</h1> + + + +<p><a href="register.jsp">Please register</a> for our prize drawing.</p> +</body> +</html> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit-testing/src/main/webapp/register.jsp ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/webapp/register.jsp b/unit-testing/src/main/webapp/register.jsp new file mode 100644 index 0000000..a4acb15 --- /dev/null +++ b/unit-testing/src/main/webapp/register.jsp @@ -0,0 +1,27 @@ +<?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> +<s:head /> +</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/unit-testing/src/main/webapp/thankyou.jsp ---------------------------------------------------------------------- diff --git a/unit-testing/src/main/webapp/thankyou.jsp b/unit-testing/src/main/webapp/thankyou.jsp new file mode 100644 index 0000000..3c845bc --- /dev/null +++ b/unit-testing/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/unit-testing/src/test/java/org/apache/struts/register/action/RegisterTest.java ---------------------------------------------------------------------- diff --git a/unit-testing/src/test/java/org/apache/struts/register/action/RegisterTest.java b/unit-testing/src/test/java/org/apache/struts/register/action/RegisterTest.java new file mode 100644 index 0000000..ae94936 --- /dev/null +++ b/unit-testing/src/test/java/org/apache/struts/register/action/RegisterTest.java @@ -0,0 +1,80 @@ +package org.apache.struts.register.action; + + +import com.opensymphony.xwork2.ActionProxy; +import com.opensymphony.xwork2.ActionSupport; +import org.apache.struts2.StrutsTestCase; +import org.junit.Test; + +public class RegisterTest extends StrutsTestCase { + + @Test + public void testExecuteValidationPasses() throws Exception { + + request.setParameter("personBean.firstName", "Bruce"); + + request.setParameter("personBean.lastName", "Phillips"); + + request.setParameter("personBean.email", "[email protected]"); + + request.setParameter("personBean.age", "19"); + + ActionProxy actionProxy = getActionProxy("/register.action") ; + + Register action = (Register) actionProxy.getAction(); + + assertNotNull("The action is null but should not be.", action); + + String result = actionProxy.execute(); + + assertEquals("The execute method did not return " + ActionSupport.SUCCESS + " but should have.", ActionSupport.SUCCESS, result); + + } + + @Test + public void testExecuteValidationFailsMissingFirstName() throws Exception { + + request.setParameter("personBean.firstName", "Bruce"); + + request.setParameter("personBean.lastName", "Phillips"); + + request.setParameter("personBean.email", "[email protected]"); + + request.setParameter("personBean.age", "17"); + + ActionProxy actionProxy = getActionProxy("/register.action") ; + + Register action = (Register) actionProxy.getAction(); + + assertNotNull("The action is null but should not be.", action); + + String result = actionProxy.execute(); + + assertEquals("The execute method did not return " + ActionSupport.INPUT + " but should have.", ActionSupport.INPUT, result); + + } + + + @Test + public void testExecuteValidationFailsAgeToYoung() throws Exception { + + + request.setParameter("personBean.lastName", "Phillips"); + + request.setParameter("personBean.email", "[email protected]"); + + request.setParameter("personBean.age", "19"); + + ActionProxy actionProxy = getActionProxy("/register.action") ; + + Register action = (Register) actionProxy.getAction(); + + assertNotNull("The action is null but should not be.", action); + + String result = actionProxy.execute(); + + assertEquals("The execute method did not return " + ActionSupport.INPUT + " but should have.", ActionSupport.INPUT, result); + + } + +} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit_testing/README.txt ---------------------------------------------------------------------- diff --git a/unit_testing/README.txt b/unit_testing/README.txt deleted file mode 100644 index 73a9989..0000000 --- a/unit_testing/README.txt +++ /dev/null @@ -1,18 +0,0 @@ -This is the example project referred to in the -Struts 2 documentation, Unit Testing tutorial. -See: http://struts.apache.org. - -To build the application's war file run mvn clean package -from the project's root folder. - -As part of packaging the war file, Maven will run the unit test. - -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/unit_testing/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/unit_testing/pom.xml ---------------------------------------------------------------------- diff --git a/unit_testing/pom.xml b/unit_testing/pom.xml deleted file mode 100644 index 624d0ee..0000000 --- a/unit_testing/pom.xml +++ /dev/null @@ -1,45 +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>unit_testing</artifactId> - - <name>Unit Testing</name> - - <build> - <finalName>unit_testing</finalName> - </build> - - <packaging>war</packaging> - - <dependencies> - <dependency> - <groupId>org.apache.struts</groupId> - <artifactId>struts2-junit-plugin</artifactId> - <version>${struts2.version}</version> - <type>jar</type> - <scope>test</scope> - </dependency> - <dependency> - <groupId>javax.servlet</groupId> - <artifactId>servlet-api</artifactId> - <version>2.4</version> - <type>jar</type> - <scope>test</scope> - </dependency> - <dependency> - <groupId>javax.servlet</groupId> - <artifactId>jsp-api</artifactId> - <version>2.0</version> - <type>jar</type> - <scope>test</scope> - </dependency> - </dependencies> -</project> http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit_testing/src/main/java/org/apache/struts/register/action/Register.java ---------------------------------------------------------------------- diff --git a/unit_testing/src/main/java/org/apache/struts/register/action/Register.java b/unit_testing/src/main/java/org/apache/struts/register/action/Register.java deleted file mode 100644 index 3a7f662..0000000 --- a/unit_testing/src/main/java/org/apache/struts/register/action/Register.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.apache.struts.register.action; - -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; - - - public String execute() throws Exception { - - //call Service class to store personBean's state in database - - return SUCCESS; - - } - - public void validate(){ - - if ( personBean.getFirstName() == null || personBean.getFirstName().length() == 0 ){ - - addFieldError( "personBean.firstName", "First name is required." ); - - } - - - if ( personBean.getEmail() == null || personBean.getEmail().length() == 0 ){ - - addFieldError( "personBean.email", "Email is required." ); - - } - - if ( personBean.getAge() < 18 ){ - - addFieldError( "personBean.age", "Age is required and must be 18 or older" ); - - } - - - } - - - public Person getPersonBean() { - - return personBean; - - } - - public void setPersonBean(Person person) { - - personBean = person; - - } - -} http://git-wip-us.apache.org/repos/asf/struts-examples/blob/433ea016/unit_testing/src/main/java/org/apache/struts/register/model/Person.java ---------------------------------------------------------------------- diff --git a/unit_testing/src/main/java/org/apache/struts/register/model/Person.java b/unit_testing/src/main/java/org/apache/struts/register/model/Person.java deleted file mode 100644 index 3020bbb..0000000 --- a/unit_testing/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() ; - } -}
