This document contains the release notes for Version 1.1 Beta 1 of the Struts Framework, and covers changes that have taken place since Version 1.0.1 was released. The following sections cover New Features and Changes to Struts.
The binary distribution of this release includes the following files relevant to Struts:
INSTALL
- Brief installation instructions. See
the
Struts Documentation Application
, or online at
http://jakarta.apache.org/struts/
for more information.
LICENSE
- The Apache Software Foundation license that
defines the terms under which you can use Struts (and
other software
licensed by Apache).
README
- A brief introduction to Struts.
lib/
- Directory containing files you will need in
your own applications. The individual files of interest
are:
commons-*.jar
- Release packages from the
Jakarta Commons
Project
that Struts relies on. You are welcome to use
these
classes in your own applications. These JAR files
should be
copied into the
/WEB-INF/lib
directory of
your web application.
struts.jar
- JAR file that contains the compiled
Java classes of Struts. You must
place this file in the
/WEB-INF/lib
directory of
your web application.
struts-xxxxx.tld
- The tag library descriptor files
for the Struts 1.0 tag libraries (bean, html,
logic, and
template). You must place these files in the
/WEB-INF
directory of your web application, and reference
them with
appropriate
<taglib>
directives in your
web.xml file.
NOTE
- The struts-form.tld
file is deprecated; you should use the
struts-html.tld file
instead.
jdbc2_0-stdext.jar
- The JDBC 2.0 Optional Package
API classes (package
javax.sql
). You will need to
include this file in the
/WEB-INF/lib
directory
of your application, if it is not already made
visible to web
applications by your servlet container.
struts-config_1_1.dtd
- The document type descriptor
(DTD) for the Struts configuration file (which is
typically named
/WEB-INF/struts-config.xml
. Your configuration file
will be validated against an internal copy of this
DTD -- this
copy is available for reference purposes only.
web-app_2_2.dtd
- The document type descriptor (DTD)
for web.xml files conforming to the Servlet 2.2
specification.
This copy is for reference purposes only.
web-app_2_3.dtd
- The document type descriptor (DTD)
for web.xml files conforming to the Servlet 2.3
specification.
This copy is for reference purposes only.
webapps/
- Web Application Archive (WAR) files for the
web applications that are included with Struts.
struts-config.dtd
in favor of
struts-config_1_1.dtd
.
import
statements at the top of your classes. Any
applications that utilize these classes will need to be
modified in the
same way. The following Commons packages contain the
replacements for the
corresponding Struts 1.0 classes:
org.apache.struts.utils.BeanUtils
,
org.apache.struts.utils.ConvertUtils
, and
org.apache.struts.utils.PropertyUtils
.
org.apache.struts.util.ArrayStack
,
org.apache.struts.util.FastArrayList
,
org.apache.struts.util.FastHashMap
,
org.apache.struts.util.FastTreeMap
.
org.apache.struts.digester.*
.
CONTRIB Directory
:
A new directory (
contrib
) in the CVS source repository has
been added to accumulate Struts add-on extensions that are
generally
useful but have not yet been integrated into the standard code
base.
The following new features have been added to the basic
controller
framework (package
org.apache.struts.action
):
ActionMessages
class will support a superset of
the capabilities of
ActionErrors
, and will be useful as
a collection of general purpose messages, not just errors.
org.apache.struts.util
):
org.apache.struts.taglib.bean
):
name
,
property
, and
scope
attributes to the
<bean:message>
tag, so that the message source key can be obtained
dynamically from
a bean or bean property.
org.apache.struts.taglib.html
):
<bean:message>
so that
the message resource key can be obtained dynamically from
a bean.
<html:messages>
tag to iterate through
a message collection in the new
ActionMessages
class.
ActionForm
will now call
reset()
if it
instantiates the ActionForm bean.
org.apache.struts.taglib.logic
):
<logic:empty>
and
<logic:notEmpty>
tags, which are similar to
<logic:present>
and
<logic:notPresent>
except for the treatment of
empty strings.
org.apache.struts.taglib.template
):
org.apache.struts.action
):
ActionForm
class is now truly serializable, because
the two non-serializable instance variables (servlet and
multipartRequestHandler) have been made transient.
However, if you
actually do serialize and deserialize such instances, it
is your
responsibility to reset these two properties.
org.apache.struts.upload
):
org.apache.struts.util
):
ConvertUtils.convertCharacter()
will now detect empty strings and return the default
value.
org.apache.struts.taglib.bean
):
<html:errors>
when the property tag is
specified, errors are no longer printed if the specified
property
has no errors. Previously errors were always printed !
Future
enhancements would include additional attributes to always
turn
off the header or footer.
org.apache.struts.taglib.html
):
org.apache.struts.taglib.logic
):