[Struts Wiki] Update of "StrutsActionRelease133" by WendySmoak
Dear Wiki user, You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification. The following page has been changed by WendySmoak: http://wiki.apache.org/struts/StrutsActionRelease133 The comment on the change is: Record vote thread. -- == Vote (A) == || PMC Member || Quality || + || Don|| Beta|| + || Wendy || Beta|| - Voting thread is _ + Voting thread is [http://www.mail-archive.com/dev%40struts.apache.org/msg22038.html here]. + The distribution has been removed from the cvs.apache.org/dist/struts/action/ folder. - If release vote fails, including for a lack of quorum, remove from dist - folder. == Point Release Checklist (B) ==
[Struts Wiki] Update of "StrutsActionRelease134" by WendySmoak
Dear Wiki user, You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification. The following page has been changed by WendySmoak: http://wiki.apache.org/struts/StrutsActionRelease134 The comment on the change is: Record vote thread -- == Vote (A) == || PMC Member || Quality || + || Don|| GA || + || Joe|| GA || + || Niall || Beta|| + || Martin || Beta|| + || Ted|| Beta|| + || Wendy || Beta|| + || Craig || Beta|| - Voting thread is _ + Voting thread is [http://mail-archive.com/dev%40struts.apache.org/msg22096.html here] If release vote fails, including for a lack of quorum, remove from dist folder.
[Struts Wiki] Update of "StrutsReleasePlans" by WendySmoak
Dear Wiki user, You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification. The following page has been changed by WendySmoak: http://wiki.apache.org/struts/StrutsReleasePlans -- * StrutsTaglibRelease131 - ''Struts Taglib Version 1.3.1'' (cancelled) * StrutsExtrasRelease131 - ''Struts Extras Version 1.3.1'' (cancelled) * StrutsActionRelease132 - ''Struts Action Version 1.3.2'' + * StrutsActionRelease133 - ''Struts Action Version 1.3.3'' (Test Build) + * StrutsActionRelease134 - ''Struts Action Version 1.3.4'' (Beta) - * StrutsActionRelease133 - ''Struts Action Version 1.3.3'' + * StrutsActionRelease135 - ''Struts Action Version 1.3.5'' - * StrutsActionRelease134 - ''Struts Action Version 1.3.4'' == 1.2.x == * StrutsRelease122 - ''Struts Version 1.2.2'' * StrutsRelease123 - ''Struts Version 1.2.3''
[Struts Wiki] Update of "StrutsActionRelease135" by WendySmoak
Dear Wiki user, You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification. The following page has been changed by WendySmoak: http://wiki.apache.org/struts/StrutsActionRelease135 New page: = Struts Action 1.3.5 Release = == Info == 1. Struts [http://struts.apache.org/releases.html#Releases Release Guidelines] 2. [http://wiki.apache.org/incubator/SigningReleases Signing Releases] 3. Apache [http://apache.org/dev/mirrors.html Mirroring Guidelines] == Release Manager == The release manager is '''TBD''' == How to Help == Everyone in the Struts community, users, developers, and committers, is encouraged to test a release, report any issues, and post to dev@ any comments on the overall quality of the release. To help everyone get started with Struts Action 1.3.5 (when it is available), here are the simplest installation instructions that can possibly work: * Download the Struts 1.3.5 distribution from http://svn.apache.org/dist/struts/action/v1.3.5/ (when it is available.) (Until then, try a [http://cvs.apache.org/builds/struts/maven/trunk/nightly/struts-action/ snapshot].) * Extract the distribution to a likely location (/opt/struts-action-1.3.5) * Install Java and set JAVA_HOME * Install Maven 2 and set MAVEN_HOME * Install Apache Tomcat * http://wiki.apache.org/struts/StrutsMaintenanceMaven * Change to the new folder (e.g., /opt/struts-action-1.3.5/src) * $ mvn * Wait about five minutes for Maven to download and build everything ** If you see any error messages, please do a quick search of the mail archives and/or post them on the Dev list, and if they appear to be newly introduced issues, a Jira tickets will need to be created so we can track and resolve the issue as quickly as possible. Oh, and THANK YOU for your help. == Issues == [http://issues.apache.org/struts/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=DESC&sorter/field=priority&resolution=-1&pid=10121&fixfor=21721 Resolved Issues] [http://issues.apache.org/struts/secure/ReleaseNote.jspa?version=21721&styleName=Text&projectId=10121&Create=Create JIRA Release Notes] == TO DO == == Preparation Checklist == || '''#''' || '''Description''' || '''Status''' || || 1. || Announce plan to dev@ list || || || 2. || Review/Resolve Outstanding Bugs || || || 3. || Update Release Notes || || || 4. || Check Dependencies || || The Commons [http://jakarta.apache.org/commons/releases/prepare.html Preparation Guide] is a helpful preparation backgrounder, but Commons uses the "beta/release-candidate/final" process. Likewise, the [http://httpd.apache.org/dev/release.html HTTPD Release Guidelines] is a helpful "overall process" backgrounder, but HTTPD does not use a test-build stage. External Dependency versions for this release: || '''Dependency''' || '''Version''' || '''Status''' ||'''Used In''' || || Antlr || 2.7.2 || Released || Struts Validator || || Bean Scripting Framework || 2.3.0 || Released || Scripting || || Commons !BeanUtils || 1.7.0 || Released || core (!ActionServlet, configuration, !DynaActionForm) || || Commons Chain || 1.0 || Released || core (!RequestProcessor) || || Commons Digester || 1.6 || Released || core (!ActionServlet, configuration) || || Commons !FileUpload || 1.1 || Released || Struts Upload || || Commons IO || 1.1 || Released || Required by Commons !FileUpload || || Commons Logging || 1.0.4 || Released || core (logging all over) || || Commons Validator || 1.3.0 || Released || Struts Validator || || Jakarta Oro || 2.0.8 || Released || Commons Validator || '''Note:''' This release of Struts Action depends on Struts Build 1.0.0 for the Checkstyle config file. == Testing Checklist == === Testing Summary === || '''#''' || '''Description''' || '''Completed''' || || 1. || Run Unit Test targets || || || 2. || Run Cactus Tests (see below) || || || 3. || Play test examples application (TC 5.0.x) || || '''Note:''' Cactus tests are not working and have been moved to the sandbox. == Test Build Checklist (A) == See also Commons [http://jakarta.apache.org/commons/releases/release.html Step-by-Step Guide] || '''#''' || '''Description''' || '''Completed''' || || A0. || Update all pom.xml files to omit "-SNAPSHOT" || || || A1. || Tag release in svn: STRUTS_ACTION_1_3_5 || || || A2. || Check out a clean copy using the 'tag' created in A1 and see StrutsMavenRelease || || || A3. || Deploy Test Build to cvs.apache.org/maven-snapshot-repository || || || A4. || Upload Distribution to people.apache.org:/www/cvs.apache.org/dist/struts/action/v1.3.5 || || || A5. || Update all pom.xml files to "1.3.5-SNAPSHOT" || || || A6. || Announce the Test Build on dev@ and user@ lists (optional) || || || A7. || Post release-quality vote on dev@ list || || || A8. || Create a new JIRA version level (1.3.6) || || == Vote (A) == || PMC Member || Quality || Voting thread is [here] If release vote fails, including for a lack of quorum, r
[Struts Wiki] Update of "StrutsActionRelease135" by WendySmoak
Dear Wiki user, You have subscribed to a wiki page or wiki category on "Struts Wiki" for change notification. The following page has been changed by WendySmoak: http://wiki.apache.org/struts/StrutsActionRelease135 The comment on the change is: s/Resolved/Unresolved -- == Issues == - [http://issues.apache.org/struts/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=DESC&sorter/field=priority&resolution=-1&pid=10121&fixfor=21721 Resolved Issues] + * [http://issues.apache.org/struts/secure/IssueNavigator.jspa?reset=true&mode=hide&sorter/order=DESC&sorter/field=priority&resolution=-1&pid=10121&fixfor=21721 Unresolved Issues] - [http://issues.apache.org/struts/secure/ReleaseNote.jspa?version=21721&styleName=Text&projectId=10121&Create=Create JIRA Release Notes] + * [http://issues.apache.org/struts/secure/ReleaseNote.jspa?version=21721&styleName=Text&projectId=10121&Create=Create JIRA Release Notes] == TO DO ==
svn commit: r406273 - in /struts/action2/trunk/core/src: main/java/org/apache/struts/action2/components/ main/resources/template/xhtml/ test/java/org/apache/struts/action2/views/jsp/ui/ test/resources
Author: tmjee Date: Sat May 13 23:25:18 2006 New Revision: 406273 URL: http://svn.apache.org/viewcvs?rev=406273&view=rev Log: WW-1284 Added: struts/action2/trunk/core/src/test/resources/org/apache/struts/action2/views/jsp/ui/Formtag-11.txt (with props) Modified: struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/Form.java struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/UIBean.java struts/action2/trunk/core/src/main/resources/template/xhtml/form-close-validate.ftl struts/action2/trunk/core/src/test/java/org/apache/struts/action2/views/jsp/ui/FormTagTest.java struts/action2/trunk/core/src/test/resources/org/apache/struts/action2/views/jsp/ui/Formtag-2.txt Modified: struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/Form.java URL: http://svn.apache.org/viewcvs/struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/Form.java?rev=406273&r1=406272&r2=406273&view=diff == --- struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/Form.java (original) +++ struts/action2/trunk/core/src/main/java/org/apache/struts/action2/components/Form.java Sat May 13 23:25:18 2006 @@ -24,11 +24,14 @@ import org.apache.struts.action2.portlet.util.PortletUrlHelper; import org.apache.struts.action2.views.util.UrlHelper; import com.opensymphony.xwork.config.ConfigurationManager; +import com.opensymphony.xwork.config.RuntimeConfiguration; import com.opensymphony.xwork.config.entities.ActionConfig; +import com.opensymphony.xwork.config.entities.InterceptorMapping; import com.opensymphony.xwork.util.OgnlValueStack; import com.opensymphony.xwork.ActionContext; import com.opensymphony.xwork.ActionInvocation; import com.opensymphony.xwork.ObjectFactory; +import com.opensymphony.xwork.validator.ValidationInterceptor; import com.opensymphony.xwork.validator.Validator; import com.opensymphony.xwork.validator.FieldValidator; import com.opensymphony.xwork.validator.ActionValidatorManagerFactory; @@ -38,10 +41,13 @@ import org.apache.commons.lang.StringUtils; +import com.opensymphony.xwork.interceptor.MethodFilterInterceptorUtil; + import java.util.ArrayList; import java.util.List; import java.util.Collections; import java.util.Iterator; +import java.util.Set; /** * @@ -126,6 +132,10 @@ boolean isAjax = "ajax".equalsIgnoreCase(this.theme); +if (validate != null) { +addParameter("validate", findValue(validate, Boolean.class)); +} + // calculate the action and namespace String action = null; if (this.action != null) { @@ -157,10 +167,6 @@ addParameter("method", findString(method)); } -if (validate != null) { -addParameter("validate", findValue(validate, Boolean.class)); -} - if (acceptcharset != null) { addParameter("acceptcharset", findString(acceptcharset)); } @@ -256,6 +262,42 @@ addParameter("id", escape(id)); } } + +// WW-1284 +// evaluate if client-side js is to be enabled. (if validation interceptor +// does allow validation eg. method is not filtered out) +evaluateClientSideJsEnablement(actionName, namespace, actionMethod); +} + +private void evaluateClientSideJsEnablement(String actionName, String namespace, String actionMethod) { + + // Only evaluate if Client-Side js is to be enable when validate=true + Boolean validate = (Boolean) getParameters().get("validate"); + if (validate != null && validate.booleanValue()) { + + addParameter("performValidation", Boolean.FALSE); + + RuntimeConfiguration runtimeConfiguration = ConfigurationManager.getConfiguration().getRuntimeConfiguration(); + ActionConfig actionConfig = runtimeConfiguration.getActionConfig(namespace, actionName); + + if (actionConfig != null) { + List interceptors = actionConfig.getInterceptors(); + for (Iterator i = interceptors.iterator(); i.hasNext(); ) { + InterceptorMapping interceptorMapping = (InterceptorMapping) i.next(); + if (ValidationInterceptor.class.isInstance(interceptorMapping.getInterceptor())) { + ValidationInterceptor validationInterceptor = (ValidationInterceptor) interceptorMapping.getInterceptor(); + + Set excludeMethods = validationInterceptor.getExcludeMethodsSet(); + Set includeMethods = validationInterceptor.getIncludeMethodsSet(); + +