cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action DynaValidatorActionForm.java DynaValidatorForm.java ValidatorActionForm.java ValidatorForm.java
dwinterfeldt02/03/16 16:30:48 Modified:contrib/validator/src/share/org/apache/struts/validator/action ValidatorActionForm.java ValidatorForm.java Added: contrib/validator/src/share/org/apache/struts/validator/action DynaValidatorActionForm.java DynaValidatorForm.java Log: Moved Validator initialization so ValidatorForm and DynaActionForm can share the method. Revision ChangesPath 1.3 +11 -5 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorActionForm.java Index: ValidatorActionForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorActionForm.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ValidatorActionForm.java 26 Feb 2002 05:03:27 - 1.2 +++ ValidatorActionForm.java 17 Mar 2002 00:30:48 - 1.3 @@ -61,12 +61,13 @@ import javax.servlet.http.HttpServletRequest; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogSource; -import org.apache.struts.action.ActionErrors; -import org.apache.struts.action.ActionForm; -import org.apache.struts.action.ActionMapping; import org.apache.commons.validator.Validator; import org.apache.commons.validator.ValidatorException; import org.apache.commons.validator.ValidatorResources; +import org.apache.struts.action.ActionErrors; +import org.apache.struts.action.ActionForm; +import org.apache.struts.action.ActionMapping; +import org.apache.struts.validator.util.StrutsValidatorUtil; /** @@ -101,13 +102,18 @@ public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { +ServletContext application = getServlet().getServletContext(); ActionErrors errors = new ActionErrors(); - Validator validator = initValidator(mapping.getPath(), request, errors); + + Validator validator = StrutsValidatorUtil.initValidator(mapping.getAttribute(), + this, + application, request, + errors, page); try { validator.validate(); } catch (ValidatorException e) { -log.error(ValidatorActionForm::validate() - + e.getMessage(), e); +log.error(e.getMessage(), e); } return errors; 1.3 +16 -36 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorForm.java Index: ValidatorForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorForm.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ValidatorForm.java26 Feb 2002 05:03:27 - 1.2 +++ ValidatorForm.java17 Mar 2002 00:30:48 - 1.3 @@ -61,12 +61,12 @@ import javax.servlet.http.HttpServletRequest; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogSource; -import org.apache.struts.action.ActionErrors; -import org.apache.struts.action.ActionForm; -import org.apache.struts.action.ActionMapping; import org.apache.commons.validator.Validator; import org.apache.commons.validator.ValidatorException; import org.apache.commons.validator.ValidatorResources; +import org.apache.struts.action.ActionErrors; +import org.apache.struts.action.ActionForm; +import org.apache.struts.action.ActionMapping; import org.apache.struts.validator.util.StrutsValidatorUtil; @@ -122,46 +122,24 @@ public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { +ServletContext application = getServlet().getServletContext(); ActionErrors errors = new ActionErrors(); - Validator validator = initValidator(mapping.getAttribute(), request, errors); + + Validator validator = StrutsValidatorUtil.initValidator(mapping.getAttribute(), + this, + application, request, + errors, page); try { validator.validate(); } catch (ValidatorException e) { -log.error(ValidatorForm::validate() - + e.getMessage(), e); +log.error(e.getMessage(), e); } return errors; } /** - *
cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action ValidatorPlugIn.java ValidatorServlet.java
dwinterfeldt02/03/16 16:32:41 Modified:contrib/validator/src/share/org/apache/struts/validator/action ValidatorServlet.java Added: contrib/validator/src/share/org/apache/struts/validator/action ValidatorPlugIn.java Log: Added a ValidatorPlugin to use the new plugin interface. So ValidatorServlet is no longer necessary and ValidatorResources can be loaded by defining the plugin in struts-config.xml. Revision ChangesPath 1.4 +5 -2 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorServlet.java Index: ValidatorServlet.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorServlet.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ValidatorServlet.java 26 Feb 2002 05:03:27 - 1.3 +++ ValidatorServlet.java 17 Mar 2002 00:32:41 - 1.4 @@ -72,6 +72,9 @@ /** * pstrongValidatorServlet/strong loads validation values into application scope./p * + * @deprecated This is no longer needed. Use the Struts Plugin Interface + * (codeorg.apache.struts.action.PlugIn/code) instead. + * * @author David Winterfeldt */ @@ -244,7 +247,7 @@ // until second file is loaded ValidatorResourcesInitializer.initialize(resources, bis, false); } catch (Exception e) { - log.error(ValidatorServlet::initMapping - + e.getMessage(), e); + log.error(e.getMessage(), e); } } else { log.error(Skipping validation rules file from ' + configRules + '. No stream could be opened.); @@ -270,7 +273,7 @@ // pass in true so resources are processed ValidatorResourcesInitializer.initialize(resources, bis, true); } catch (Exception e) { - log.error(ValidatorServlet::initMapping - + e.getMessage(), e); + log.error(e.getMessage(), e); } } 1.1 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java Index: ValidatorPlugIn.java === /* * $Header: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java,v 1.1 2002/03/17 00:32:41 dwinterfeldt Exp $ * $Revision: 1.1 $ * $Date: 2002/03/17 00:32:41 $ * * * * The Apache Software License, Version 1.1 * * Copyright (c) 1999-2002 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. The end-user documentation included with the redistribution, if *any, must include the following acknowlegement: * This product includes software developed by the *Apache Software Foundation (http://www.apache.org/). *Alternately, this acknowlegement may appear in the software itself, *if and wherever such third-party acknowlegements normally appear. * * 4. The names The Jakarta Project, Struts, and Apache Software *Foundation must not be used to endorse or promote products derived *from this software without prior written permission. For written *permission, please contact [EMAIL PROTECTED] * * 5. Products derived from this software may not be called Apache *nor may Apache appear in their names without prior written *permission of the Apache Group. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE
cvs commit: jakarta-struts/contrib/validator/dist validator-rules.xml
dwinterfeldt02/03/16 16:33:39 Modified:contrib/validator/dist validator-rules.xml Log: Rules now explicitly state the method signiture they use to correspond to changes in the Commons Validator. Revision ChangesPath 1.2 +70 -0 jakarta-struts/contrib/validator/dist/validator-rules.xml Index: validator-rules.xml === RCS file: /home/cvs/jakarta-struts/contrib/validator/dist/validator-rules.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- validator-rules.xml 15 Jan 2002 06:24:59 - 1.1 +++ validator-rules.xml 17 Mar 2002 00:33:39 - 1.2 @@ -3,6 +3,11 @@ validator name=required classname=org.apache.struts.validator.util.StrutsValidator method=validateRequired + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest msg=errors.required javascript![CDATA[ function validateRequired(form) { @@ -36,6 +41,11 @@ validator name=minlength classname=org.apache.struts.validator.util.StrutsValidator method=validateMinLength + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest depends=required msg=errors.minlength javascript![CDATA[ @@ -74,6 +84,11 @@ validator name=maxlength classname=org.apache.struts.validator.util.StrutsValidator method=validateMaxLength + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest depends=required msg=errors.maxlength javascript![CDATA[ @@ -112,6 +127,11 @@ validator name=mask classname=org.apache.struts.validator.util.StrutsValidator method=validateMask + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest depends=required msg=errors.invalid javascript![CDATA[ @@ -157,6 +177,11 @@ validator name=byte classname=org.apache.struts.validator.util.StrutsValidator method=validateByte + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest depends=required msg=errors.byte jsFunctionName=ByteValidations @@ -196,6 +221,11 @@ validator name=short classname=org.apache.struts.validator.util.StrutsValidator method=validateShort + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, + org.apache.commons.validator.Field, + org.apache.struts.action.ActionErrors, + javax.servlet.http.HttpServletRequest depends=required msg=errors.short jsFunctionName=ShortValidations @@ -235,6 +265,11 @@ validator name=integer classname=org.apache.struts.validator.util.StrutsValidator method=validateInteger + methodParams=java.lang.Object, + org.apache.commons.validator.ValidatorAction, +
cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util StrutsValidator.java
dwinterfeldt02/03/16 16:36:43 Modified:contrib/validator/src/share/org/apache/struts/validator/util StrutsValidator.java Log: Passing in the application context to the validation methods is no longer necessary because the MessageResources are now in request scope to handle multiple applications. Revision ChangesPath 1.3 +31 -45 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util/StrutsValidator.java Index: StrutsValidator.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util/StrutsValidator.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- StrutsValidator.java 26 Feb 2002 05:03:27 - 1.2 +++ StrutsValidator.java 17 Mar 2002 00:36:43 - 1.3 @@ -93,19 +93,18 @@ * @paramerrors The codeActionErrors/code object to add errors to if any * validation errors occur. * @paramrequest Current request object. - * @paramapplication The application's codeServletContext/code. */ public static boolean validateRequired(Object bean, ValidatorAction va, Field field, ActionErrors errors, - HttpServletRequest request, ServletContext application) { + HttpServletRequest request) { String value = null; if (field.getProperty() != null field.getProperty().length() 0) value = ValidatorUtil.getValueAsString(bean, field.getProperty()); if (GenericValidator.isBlankOrNull(value)) { - errors.add(field.getKey(), StrutsValidatorUtil.getActionError(application, request, va, field)); + errors.add(field.getKey(), StrutsValidatorUtil.getActionError(request, va, field)); return false; } else { @@ -123,12 +122,11 @@ * @paramerrors The codeActionErrors/code object to add errors to if any * validation errors occur. * @paramrequest Current request object. - * @paramapplication The application's codeServletContext/code. */ public static boolean validateMask(Object bean, ValidatorAction va, Field field, ActionErrors errors, - HttpServletRequest request, ServletContext application) { + HttpServletRequest request) { String mask = field.getVarValue(mask); @@ -137,7 +135,7 @@ try { if (!GenericValidator.isBlankOrNull(value) !GenericValidator.matchRegexp(value, mask)) { - errors.add(field.getKey(), StrutsValidatorUtil.getActionError(application, request, va, field)); + errors.add(field.getKey(), StrutsValidatorUtil.getActionError(request, va, field)); return false; } else { @@ -164,17 +162,16 @@ * @paramerrors The codeActionErrors/code object to add errors to if any * validation errors occur. * @paramrequest Current request object. - * @paramapplication The application's codeServletContext/code. */ public static boolean validateByte(Object bean, ValidatorAction va, Field field, ActionErrors errors, - HttpServletRequest request, ServletContext application) { + HttpServletRequest request) { String value = ValidatorUtil.getValueAsString(bean, field.getProperty()); if (!GenericValidator.isBlankOrNull(value) !GenericValidator.isByte(value)) { - errors.add(field.getKey(), StrutsValidatorUtil.getActionError(application, request, va, field)); + errors.add(field.getKey(), StrutsValidatorUtil.getActionError(request, va, field)); return false; } else { return true; @@ -191,16 +188,15 @@ * @paramerrors The codeActionErrors/code object to add errors to if any * validation errors occur. * @paramrequest Current request object. - * @paramapplication The application's codeServletContext/code. */ public static boolean validateShort(Object bean, ValidatorAction va, Field field,
cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util StrutsValidatorUtil.java
dwinterfeldt02/03/16 16:39:53 Modified:contrib/validator/src/share/org/apache/struts/validator/util StrutsValidatorUtil.java Log: Changed methods to get MessageResources from request scope instead of application scope, deprecated method retrieving MessageResources from application scope, and addd method that initializes the Validator for ActionForm subclasses. Revision ChangesPath 1.3 +65 -4 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util/StrutsValidatorUtil.java Index: StrutsValidatorUtil.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/util/StrutsValidatorUtil.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- StrutsValidatorUtil.java 13 Mar 2002 05:41:25 - 1.2 +++ StrutsValidatorUtil.java 17 Mar 2002 00:39:53 - 1.3 @@ -65,6 +65,7 @@ import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.validator.Arg; import org.apache.commons.validator.Field; +import org.apache.commons.validator.Validator; import org.apache.commons.validator.ValidatorAction; import org.apache.commons.validator.ValidatorResources; import org.apache.commons.validator.ValidatorUtil; @@ -78,6 +79,21 @@ * @author David Winterfeldt */ public class StrutsValidatorUtil { + + /** +* Resources key the codeServletContext/code is stored under. + */ + public static String SERVLET_CONTEXT_KEY = javax.servlet.ServletContext; + + /** +* Resources key the codeHttpServletRequest/code is stored under. + */ + public static String HTTP_SERVLET_REQUEST_KEY = javax.servlet.http.HttpServletRequest; + + /** +* Resources key the codeActionErrors/code is stored under. + */ + public static String ACTION_ERRORS_KEY = org.apache.struts.action.ActionErrors; private static Locale defaultLocale = Locale.getDefault(); @@ -90,12 +106,23 @@ /** * Retrieve codeMessageResources/code for the application. +* +* @deprecated This method can only return the resources for the default +* sub-application. Use getMessageResources(HttpServletRequest) to get the +* resources for the current sub-application. */ public static MessageResources getMessageResources(ServletContext application) { return (MessageResources)application.getAttribute(Action.MESSAGES_KEY); } /** +* Retrieve codeMessageResources/code for the application. + */ + public static MessageResources getMessageResources(HttpServletRequest request) { + return (MessageResources)request.getAttribute(Action.MESSAGES_KEY); + } + + /** * Get the codeLocale/code of the current user. */ public static Locale getLocale(HttpServletRequest request) { @@ -128,8 +155,8 @@ /** * Gets the codeLocale/code sensitive value based on the key passed in. */ - public static String getMessage(ServletContext application, HttpServletRequest request, String key) { - MessageResources messages = getMessageResources(application); + public static String getMessage(HttpServletRequest request, String key) { + MessageResources messages = getMessageResources(request); return getMessage(messages, getLocale(request), key); } @@ -151,10 +178,10 @@ * Gets the codeActionError/code based on the codeValidatorAction/code message and the * codeField/code's arg objects. */ - public static ActionError getActionError(ServletContext application, HttpServletRequest request, + public static ActionError getActionError(HttpServletRequest request, ValidatorAction va, Field field) { - String arg[] = getArgs(va.getName(), getMessageResources(application), getLocale(request), field); + String arg[] = getArgs(va.getName(), getMessageResources(request), getLocale(request), field); String msg = (field.getMsg(va.getName()) != null ? field.getMsg(va.getName()) : va.getMsg()); return new ActionError(msg, arg[0], arg[1], arg[2], arg[3]); @@ -215,6 +242,9 @@ /** * Writes a message based on the codeWriter/code defined in codeMessageResources/code. +* +* @deprecated This method can only return the resources for the default +* sub-application. Use Commons Logging package instead. */ public static void log(ServletContext application, String message) { MessageResources messages = getMessageResources(application); @@ -225,12 +255,43 @@ /** * Writes a message based on the codeWriter/code defined in codeMessageResources/code. +* +* @deprecated This method can only
cvs commit: jakarta-struts/contrib/validator/web/example/WEB-INF struts-config.xml
dwinterfeldt02/03/16 16:42:41 Modified:contrib/validator/web/example/WEB-INF struts-config.xml Log: Added the plugin definition for the ValidatorPlugin. Revision ChangesPath 1.4 +11 -3 jakarta-struts/contrib/validator/web/example/WEB-INF/struts-config.xml Index: struts-config.xml === RCS file: /home/cvs/jakarta-struts/contrib/validator/web/example/WEB-INF/struts-config.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- struts-config.xml 28 Feb 2002 06:09:59 - 1.3 +++ struts-config.xml 17 Mar 2002 00:42:41 - 1.4 @@ -1,8 +1,8 @@ ?xml version=1.0 encoding=ISO-8859-1 ? !DOCTYPE struts-config PUBLIC - -//Apache Software Foundation//DTD Struts Configuration 1.0//EN - http://jakarta.apache.org/struts/dtds/struts-config_1_0.dtd; + -//Apache Software Foundation//DTD Struts Configuration 1.1//EN + http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd; !-- This is the Struts configuration file for the example application, @@ -94,5 +94,13 @@ message-resources parameter=org.apache.struts.validator.example.ApplicationResources/ - + + !-- == Plug Ins Configuration == -- + + !-- Add multiple validator resource files by setting the pathname property -- + plug-in className=org.apache.struts.validator.action.ValidatorPlugIn +set-property property=pathname value=/WEB-INF/validator-rules.xml/ +set-property property=pathname value=/WEB-INF/validation.xml/ + /plug-in + /struts-config -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts/contrib/validator/web/example/WEB-INF validation.xml
dwinterfeldt02/03/16 16:43:37 Modified:contrib/validator/web/example/WEB-INF validation.xml Log: Changed constant elements to new nested element structure to match Commons Validator. Revision ChangesPath 1.7 +12 -3 jakarta-struts/contrib/validator/web/example/WEB-INF/validation.xml Index: validation.xml === RCS file: /home/cvs/jakarta-struts/contrib/validator/web/example/WEB-INF/validation.xml,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- validation.xml15 Jan 2002 06:24:59 - 1.6 +++ validation.xml17 Mar 2002 00:43:37 - 1.7 @@ -1,10 +1,19 @@ form-validation global - constant name=phone value=^\(?(\d{3})\)?[-| ]?(\d{3})[-| ]?(\d{4})$ / - constant name=zip value=^\d{5}\d*$ / + constant +constant-namephone/constant-name +constant-value^\(?(\d{3})\)?[-| ]?(\d{3})[-| ]?(\d{4})$/constant-value + /constant + constant +constant-namezip/constant-name +constant-value^\d{5}\d*$/constant-value + /constant /global formset - constant name=zip value=^\d{5}(-\d{4})?$ / + constant +constant-namezip/constant-name +constant-value^\d{5}(-\d{4})?$/constant-value + /constant formname=registrationForm fieldproperty=firstName -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts/contrib/validator/web/example/WEB-INF web.xml
dwinterfeldt02/03/16 16:44:27 Modified:contrib/validator/web/example/WEB-INF web.xml Log: Removed ValidatorServlet reference since it is no longer necessary because of the ValidatorPlugin. Revision ChangesPath 1.5 +4 -26 jakarta-struts/contrib/validator/web/example/WEB-INF/web.xml Index: web.xml === RCS file: /home/cvs/jakarta-struts/contrib/validator/web/example/WEB-INF/web.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- web.xml 28 Feb 2002 06:09:59 - 1.4 +++ web.xml 17 Mar 2002 00:44:26 - 1.5 @@ -5,24 +5,6 @@ http://java.sun.com/j2ee/dtds/web-app_2_2.dtd; web-app - !-- Validator Initialization Servlet Configuration -- - servlet -servlet-namevalidator/servlet-name - servlet-classorg.apache.struts.validator.action.ValidatorServlet/servlet-class -init-param - param-nameconfig-rules/param-name - param-value/WEB-INF/validator-rules.xml/param-value -/init-param -init-param - param-nameconfig/param-name - param-value/WEB-INF/validation.xml/param-value -/init-param -init-param - param-namedebug/param-name - param-value1/param-value -/init-param -load-on-startup2/load-on-startup - /servlet !-- Action Servlet Configuration -- servlet @@ -34,19 +16,15 @@ /init-param init-param param-namedebug/param-name - param-value2/param-value + param-value3/param-value /init-param init-param param-namedetail/param-name - param-value2/param-value + param-value3/param-value /init-param -init-param - param-namevalidate/param-name - param-valuetrue/param-value -/init-param -load-on-startup1/load-on-startup +load-on-startup2/load-on-startup /servlet - + servlet servlet-nameServletRedirector/servlet-name servlet-classorg.apache.commons.cactus.server.ServletTestRedirector/servlet-class -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action ValidatorPlugIn.java
dwinterfeldt02/03/16 17:32:09 Modified:contrib/validator/src/share/org/apache/struts/validator/action ValidatorPlugIn.java Log: Changed comments and added logging. Revision ChangesPath 1.2 +7 -3 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java Index: ValidatorPlugIn.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ValidatorPlugIn.java 17 Mar 2002 00:32:41 - 1.1 +++ ValidatorPlugIn.java 17 Mar 2002 01:32:09 - 1.2 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java,v 1.1 2002/03/17 00:32:41 dwinterfeldt Exp $ - * $Revision: 1.1 $ - * $Date: 2002/03/17 00:32:41 $ + * $Header: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorPlugIn.java,v 1.2 2002/03/17 01:32:09 dwinterfeldt Exp $ + * $Revision: 1.2 $ + * $Date: 2002/03/17 01:32:09 $ * * * @@ -200,7 +200,11 @@ for (Iterator i = lValidatorRules.iterator(); i.hasNext(); ) { String validatorRules = (String)i.next(); - + + if (log.isInfoEnabled()) { + log.info(Loading validation rules file from ' + validatorRules + '); + } + InputStream input = null; BufferedInputStream bis = null; input = servlet.getServletContext().getResourceAsStream(validatorRules); -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action DynaValidatorActionForm.java DynaValidatorForm.java ValidatorActionForm.java ValidatorForm.java
dwinterfeldt02/03/16 17:33:40 Modified:contrib/validator/src/share/org/apache/struts/validator/action DynaValidatorActionForm.java DynaValidatorForm.java ValidatorActionForm.java ValidatorForm.java Log: Changed comments and ValidatorActionForm and DynaValidatorActionForm were passing in the wrong key to the Validator intialization. Revision ChangesPath 1.2 +3 -2 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/DynaValidatorActionForm.java Index: DynaValidatorActionForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/DynaValidatorActionForm.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- DynaValidatorActionForm.java 17 Mar 2002 00:30:48 - 1.1 +++ DynaValidatorActionForm.java 17 Mar 2002 01:33:39 - 1.2 @@ -71,13 +71,14 @@ /** - * pThis class extends strongValidatorForm/strong and provides + * pThis class extends strongDynaValidatorForm/strong and provides * basic field validation based on an XML file. The key passed into the * validator is the action element's 'path' attribute from the * struts-config.xml which should match the form element's name attribute * in the validation.xml./p * - * ulliSee /WEB-INF/validation.xml for validation rules./li/ul + * ulliSee codeValidatorPlugin/code definition in struts-config.xml + * for validation rules./li/ul * * @author David Winterfeldt */ 1.2 +3 -2 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/DynaValidatorForm.java Index: DynaValidatorForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/DynaValidatorForm.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- DynaValidatorForm.java17 Mar 2002 00:30:48 - 1.1 +++ DynaValidatorForm.java17 Mar 2002 01:33:39 - 1.2 @@ -71,13 +71,14 @@ /** - * pThis class extends strongActionForm/strong and provides + * pThis class extends strongDynaActionForm/strong and provides * basic field validation based on an XML file. The key passed into the * validator is the action element's 'name' attribute from the * struts-config.xml which should match the form element's name attribute * in the validation.xml./p * - * ulliSee /WEB-INF/validation.xml for validation rules./li/ul + * ulliSee codeValidatorPlugin/code definition in struts-config.xml + * for validation rules./li/ul * * @author David Winterfeldt * @see org.apache.struts.action.ActionForm 1.4 +3 -2 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorActionForm.java Index: ValidatorActionForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorActionForm.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ValidatorActionForm.java 17 Mar 2002 00:30:48 - 1.3 +++ ValidatorActionForm.java 17 Mar 2002 01:33:39 - 1.4 @@ -77,7 +77,8 @@ * struts-config.xml which should match the form element's name attribute * in the validation.xml./p * - * ulliSee /WEB-INF/validation.xml for validation rules./li/ul + * ulliSee codeValidatorPlugin/code definition in struts-config.xml + * for validation rules./li/ul * * @author David Winterfeldt */ @@ -105,7 +106,7 @@ ServletContext application = getServlet().getServletContext(); ActionErrors errors = new ActionErrors(); - Validator validator = StrutsValidatorUtil.initValidator(mapping.getAttribute(), + Validator validator = StrutsValidatorUtil.initValidator(mapping.getPath(), this, application, request, errors, page); 1.4 +2 -2 jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorForm.java Index: ValidatorForm.java === RCS file: /home/cvs/jakarta-struts/contrib/validator/src/share/org/apache/struts/validator/action/ValidatorForm.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- ValidatorForm.java17 Mar 2002 00:30:48 - 1.3 +++ ValidatorForm.java17 Mar
cvs commit: jakarta-struts/src/share/org/apache/struts/taglib/html FrameTag.java LinkTag.java
craigmcc02/03/16 18:49:06 Modified:doc/userGuide struts-html.xml src/share/org/apache/struts/taglib/html LinkTag.java Added: src/share/org/apache/struts/taglib/html FrameTag.java Log: Added a new html:frame tag that provides the same sort of manipulations to the src attribute that html:link does for the href attribute. PR: Bugzilla #6923 Submitted by: Joe Germuska joe at germuska.com, who also provided the implementation class Revision ChangesPath 1.6 +374 -0jakarta-struts/doc/userGuide/struts-html.xml Index: struts-html.xml === RCS file: /home/cvs/jakarta-struts/doc/userGuide/struts-html.xml,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- struts-html.xml 17 Mar 2002 01:44:41 - 1.5 +++ struts-html.xml 17 Mar 2002 02:49:06 - 1.6 @@ -1499,6 +1499,380 @@ tag +nameframe/name +summaryRender an HTML frame element/summary +tagclassorg.apache.struts.taglib.html.FrameTag/tagclass +info + +pRenders an HTML codelt;framegt;/code element +with processing for the codesrc/code attribute that is +identical to that performed by the codelt;html:linkgt;/code +tag for the codehref/code attribute. URL rewriting will be +applied automatically, to maintain session state in the +absence of cookies./p + +pThe base URL for this frame is calculated based on +which of the following attributes you specify (you must +specify exactly one of them):/p +ul +liemforward/em - Use the value of this attribute as the +name of a global codeActionForward/code to be looked +up, and use the application-relative or context-relative +URI found there./li +liemhref/em - Use the value of this attribute unchanged. +/li +liempage/em - Use the value of this attribute as a +application-relative URI, and generate a server-relative +URI by including the context path and application +prefix./li +/ul + +pNormally, the hyperlink you specify with one of the +attributes described in the previous paragraph will be left +unchanged (other than URL rewriting if necessary). However, +there are two ways you can append one or more dynamically +defined query parameters to the hyperlink -- specify a single +parameter with the codeparamId/code attribute (and its +associated attributes to select the value), or specify the +codename/code (and optional codeproperty/code) +attributes to select a codejava.util.Map/code bean that +contains one or more parameter ids and corresponding values. +/p + +pTo specify a single parameter, use the codeparamId/code +attribute to define the name of the request parameter to be +submitted. To specify the corresponding value, use one of the +following approaches:/p +ul +liemSpecify only the codeparamName/code attribute/em +- The named JSP bean (optionally scoped by the value of the +codeparamScope/code attribute) must identify a value +that can be converted to a String./li +liemSpecify both the codeparamName/code and +codeparamProperty/code attributes/em - The specified +property getter method will be called on the JSP bean +identified by the codeparamName/code (and optional +codeparamScope/code) attributes, in order to select +a value that can be converted to a String./li +/ul + +pIf you prefer to specify a codejava.util.Map/code that +contains all of the request parameters to be added to the +hyperlink, use one of the following techniques:/p +ul +liemSpecify only the codename/code attribute/em - +The named JSP bean (optionally scoped by the value of +the codescope/code attribute) must identify a +codejava.util.Map/code containing the parameters./li +liemSpecify both codename/code and +codeproperty/code attributes/em - The specified +property getter method will be called on the bean +identified by the codename/code (and optional +codescope/code) attributes, in order to return the +codejava.util.Map/code containing the
DO NOT REPLY [Bug 6923] - Custom tag for rewriting URLs in frame sets
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6923. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6923 Custom tag for rewriting URLs in frame sets [EMAIL PROTECTED] changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Additional Comments From [EMAIL PROTECTED] 2002-03-17 02:50 --- Added this new tag in nightly build 20020317, after refactoring to share the same URL computation logic as LinkTag, and reformatting to current Struts coding conventions. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5373] - ActionServlet Refactoring
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5373. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5373 ActionServlet Refactoring [EMAIL PROTECTED] changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED --- Additional Comments From [EMAIL PROTECTED] 2002-03-17 02:56 --- The goals reported by this enhancement request for refactoring seem to be met fairly well by recent changes in 1.1: * The configuration stuff is all refactored into a separate package, processed by a Digester. * The request processing logic (i.e. the core controller itself) has been factored into a separate class, which can now be pluggably replaced by an application's preferred choice. * The new plug-in configuration element allows applications to get lifecycle notifications for their own proprietary services, which elimintates the need for many cases where ActionServlet needed to be subclassed in the past simply to hook in to the init() and destroy() methods. Therefore, I'm going to mark this as FIXED. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: DynaActionForm questions
I haven't looked at DynaActionForm yet, but we are just starting to use DynaBeans - isn't the beauty of all this stuff that you don't have to use the provided DynaActionForm, but just go create your own version that suits your needs - sub-class ActionForm, implement the DynaBean interface and Bob's your uncle, it'll all work for you too - if its good and you think others would use it, submit it back to struts - I'm sure theres room for more than one implementation. Niall -Original Message- From: Bryan Field-Elliot [mailto:[EMAIL PROTECTED]] Sent: 15 March 2002 21:26 To: Struts Developers List Subject: Re: DynaActionForm questions Thanks Craig, On Fri, 2002-03-15 at 14:19, Craig R. McClanahan wrote: Pretty slick, huh? :-) It is slick indeed. The intended focus could just use a little more refining (perhaps in the users manual). If you know what your app needs to ask for, then DynaActionForms are a new and easier way to express it. On the other hand, if your application doesn't know what it's going to be asking for until runtime, then DynaActionForms aren't the complete solution, although they will probably be part of the solution I ultimately build. The two scenarios are pretty different, and the use of the dyna keyword could lead over-eager developers like me to assume something that isn't there. Thanks, Bryan -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts/src/share/org/apache/struts/taglib/html ErrorsTag.java
craigmcc02/03/16 21:07:35 Modified:src/share/org/apache/struts/taglib/html ErrorsTag.java Log: Refactor the logic of rendering the error messages so that it is (a) understandable, and (b) correct. PR: Bugzilla #5342 Submitted by: Jonathan James jjames at focus-technologies.com Revision ChangesPath 1.14 +29 -31 jakarta-struts/src/share/org/apache/struts/taglib/html/ErrorsTag.java Index: ErrorsTag.java === RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ErrorsTag.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- ErrorsTag.java13 Jan 2002 00:25:37 - 1.13 +++ ErrorsTag.java17 Mar 2002 05:07:35 - 1.14 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ErrorsTag.java,v 1.13 2002/01/13 00:25:37 craigmcc Exp $ - * $Revision: 1.13 $ - * $Date: 2002/01/13 00:25:37 $ + * $Header: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ErrorsTag.java,v 1.14 2002/03/17 05:07:35 craigmcc Exp $ + * $Revision: 1.14 $ + * $Date: 2002/03/17 05:07:35 $ * * * @@ -99,7 +99,7 @@ * /ul * * @author Craig R. McClanahan - * @version $Revision: 1.13 $ $Date: 2002/01/13 00:25:37 $ + * @version $Revision: 1.14 $ $Date: 2002/03/17 05:07:35 $ */ public class ErrorsTag extends TagSupport { @@ -197,9 +197,9 @@ RequestUtils.saveException(pageContext, e); throw e; } - -if (errors.empty()) +if ((errors == null) || errors.empty()) { return (EVAL_BODY_INCLUDE); +} // Check for presence of header and footer message keys boolean headerPresent = @@ -208,42 +208,40 @@ RequestUtils.present(pageContext, bundle, locale, errors.footer); // Render the error messages appropriately - StringBuffer results = new StringBuffer(); + StringBuffer results = new StringBuffer(); +boolean headerDone = false; String message = null; -if (headerPresent) -message = RequestUtils.message(pageContext, bundle, - locale, errors.header); Iterator reports = null; -if (property == null) +if (property == null) { reports = errors.get(); -else +} else { reports = errors.get(property); - // Render header iff this is a global tag or there is an error for this property - boolean propertyMsgPresent = reports.hasNext(); - if ((message != null)(property == null) || propertyMsgPresent) { - results.append(message); - results.append(\r\n); - } - +} while (reports.hasNext()) { ActionError report = (ActionError) reports.next(); +if (!headerDone) { +if (headerPresent) { +message = RequestUtils.message(pageContext, bundle, + locale, errors.header); +results.append(message); +results.append(\r\n); +} +headerDone = true; +} message = RequestUtils.message(pageContext, bundle, locale, report.getKey(), report.getValues()); - if (message != null) { - results.append(message); - results.append(\r\n); - } - } -message = null; -if (footerPresent) +if (message != null) { +results.append(message); +results.append(\r\n); +} +} +if (headerDone footerPresent) { message = RequestUtils.message(pageContext, bundle, locale, errors.footer); - -if ((message != null)(property == null) || propertyMsgPresent) { - results.append(message); - results.append(\r\n); - } +results.append(message); +results.append(\r\n); +} // Print the results to our output writer ResponseUtils.write(pageContext, results.toString()); -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5342] - html:errors tag currently requires errors.header errors.footer to be defined
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5342. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5342 html:errors tag currently requires errors.header errors.footer to be defined [EMAIL PROTECTED] changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Additional Comments From [EMAIL PROTECTED] 2002-03-17 05:09 --- Fixed in nightly build 20020317. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-struts build.xml
martinc 02/03/16 22:02:12 Modified:.build.xml Log: Update the project version for Struts 1.1 Beta 1. Revision ChangesPath 1.65 +1 -1 jakarta-struts/build.xml Index: build.xml === RCS file: /home/cvs/jakarta-struts/build.xml,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- build.xml 24 Feb 2002 02:04:56 - 1.64 +++ build.xml 17 Mar 2002 06:02:12 - 1.65 @@ -128,7 +128,7 @@ property name=project.name value=jakarta-struts/ !-- Version of the project -- -property name=project.version value=1.1-dev/ +property name=project.version value=1.1-b1/ !-- == Derived Properties -- -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]