You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 50 Next »

Struts 1.3.5 Release

Info

  1. Struts Release Guidelines 2. Signing Releases
    3. Apache Mirroring Guidelines

Release Manager

The release managers are Wendy Smoak and Ted Husted

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.

The Struts 1.3.5 distribution is available here: http://people.apache.org/builds/struts/1.3.5

To help everyone get started with Struts 1.3.5, here are the simplest installation instructions that can possibly work:

  • Download the Struts 1.3.5 distribution
  • Extract the distribution to a likely location (/opt/struts-1.3.5).
  • If possible, try the JARs in a 1.2.x application that already compiles WITHOUT deprecations.
  • Deploy and play-test the example applications from the /webapps folder to your web container
    • 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.
      • Vesion 1.3.5 is tagged. The issue can be logged against 1.3.5, but the fix would happen in 1.3.6 or later.
  • Change to the /docs directory and click-thru the documentation. If you notice anything awry, follow the "error messages" advice.

To test building Struts 1.3.5

  • Install Java 1.4 or later and set JAVA_HOME
  • Install Maven 2 and set MAVEN_HOME ** http://wiki.apache.org/struts/StrutsMaintenanceMaven
  • Change to the new folder (e.g., /opt/struts-1.3.5/src)
  • $ mvn install
  • Wait five minutes or more for Maven to download and build everything
  • $ cd assmbly
  • $ mvn assembly:assembly
  • The distribution will be deposited in 'assembly/target/assembly/out'.
  • If you encounter any problems with the build, follow the "error messages" advice.
  • Oh, and THANK YOU for your help. (smile)

Issues

Remarks

The taglib reference plugin requires JDK 1.5, so we are compiling Struts 1.3.5 under JDK 1.5, with the compiler plugin configured to target 1.4 (in struts1/pom.xml).

There is probably some sequence of commands that would deploy the jars with 1.4, then switch to 1.5 to build the site and the distribution assembly. But, it doesn't seem worth the trouble to do the research so long as the compiler works as advertised.

TO DO

Preparation Checklist

Description

Status

1.

Announce plan to dev@ list

(tick)

2.

Review/Resolve Outstanding Bugs

(tick)

3.

Update Release Notes

(tick)

4.

Check Dependencies

(tick)

The Commons Preparation Guide is a helpful preparation backgrounder, but Commons uses the "beta/release-candidate/final" process.

Likewise, the 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

Testing Checklist

Testing Summary

Description

Completed

1.

Run Unit Test targets

(tick)

2.

Run Cactus Tests (see below)

NA

3.

Play test applications (TC 5.5.x)

(tick)

Note: Cactus tests are not working and have been moved to the sandbox.

Test Build Checklist (A)

See also Commons Step-by-Step Guide

Description

Completed

A0.

Update all pom.xml files to omit "-SNAPSHOT"

(tick)

A1.

Tag release in svn: STRUTS_1_3_5

(tick)

A2.

Check out a clean copy using the tag created in A1 and see StrutsMavenRelease

(tick)

A3.

Deploy Test Build to people.apache.org: /www/cvs.apache.org/m2-snapshot-repository

(tick)

A4.

Upload distributions to people.apache.org:/www/people.apache.org/builds/struts/v1.3.x

(tick)

A5.

Refresh default website at /1.x and create archival copy at /1.3.5

(tick)

A6.

Update all pom.xml files to "1.3.6-SNAPSHOT"

(tick)

A7.

Create a new JIRA version level (1.x next)

(tick)

A8.

Announce the Test Build on dev@ and (optionally)user@

(tick)

A9.

Post release-quality vote on dev@ list

(tick)

Vote (A)

PMC Member

Quality

Wendy Smoak

Beta

Don Brown

GA

James Mitchell

GA

James Holmes

Beta

Voting thread is here

If release vote fails, including for a lack of quorum, remove 1.3.5 archive from builds folder and remove archival version of website.

Vote (B)

PMC Member

Quality

Wendy Smoak

GA

James Holmes

GA

James Mitchell

GA

Joe Germuska

GA

Don Brown

GA

Laurie Harper

GA

Voting thread is here.

Voting continues until a GA or "withdraw" vote passes, or there is a subsequent release.

General Availability Checklist (C)

Description

Completed

C1.

Update top-level website: index.html, download pages, menus

(tick)

C2.

Update the 'current' symlinks in www.apache.org/dist/struts

(tick)

C3.

Post an announcement to lists and website

_


Proposed Release Announcement

Subject: [ANNOUNCE] Struts v1.3.5

The Apache Struts team is pleased to announce that Struts 1.3.5 has been promoted to General Availability.

Struts 1.3.5 is available in a full distribution, or as separate library, source, example and documentation distributions.

http://struts.apache.org/download.cgi#struts135

It is also available in the central Maven repository under Group ID "org.apache.struts".

Major changes since Struts 1.2 include

  • Composable Request Processor
  • Arbitrary configuration properties
  • Opt-In Cancel Handling
  • Enhanced Global Exception Handlers
  • Extends attribute
  • "isCommitted" Exception Handling
  • Postback Actions
  • Wildcard ActionConfig properties

Composable Request Processor: For Struts 1.3, we turned the request processor methods into Commands that are part of a flexible Chain of Commands.

Arbitrary configuration properties: Most every Struts configuration element now accepts a map of key/value pairs. Arbitrary configuration properties let us externalize more of our configurations, encouraging reuse.

Opt-In Cancel Handling: In Struts 1.3, the Cancel token is only honored if the new property "cancellable" is set for the Action Mapping. If the Cancel token is present, but cancellable is not set, then an InvalidCancelException is thrown. The InvalidCancelExeption may be caught by a Declarative Exception Handler, like any other Exception.

Enhanced Global Exception Handlers: We now support use of global exception handlers in cases when no ActionConfig has yet been identified, as in with "preprocessing" commands in a custom request processing chain.

Extends attribute: In the Struts configuration file, we can now use the extends attribute to adopt default settings from another element, as we already can in the Tiles configuration files.

"isCommitted" Exception Handling: When using Tiles, sometimes the response is already committed when an exception occurs. Now, the ExceptionHandler tests response.isCommitted, and, if true, includes the configured view path, rather than forwarding to it.

Postback Forms: The action attribute of the Form taglib is now optional. If omitted, the original URI of the original request is used.

Wildcard ActionConfig properties: Wildcards can now be used in the properties of an ActionConfig.

The 1.3.x series of the Apache Struts framework has a minumum requirement of the following specification versions:

  • Java Servlet 2.3 and JavaServer Pages (JSP) 1.2
  • Java 2 Standard Platform Edition (J2SE) 1.4

The release notes are available online at:

http://struts.apache.org/1.3.5/userGuide/release-notes.html

Notes on upgrading from prior versions can be found on the community-maintained wiki:

http://wiki.apache.org/struts/StrutsUpgradeNotes12to13

  • No labels