You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by cr...@apache.org on 2004/07/07 21:40:29 UTC

cvs commit: jakarta-struts/contrib/struts-faces LICENSE-JSF.txt NOTICE.txt README.txt build.properties.sample build.xml

craigmcc    2004/07/07 12:40:29

  Modified:    contrib/struts-faces NOTICE.txt README.txt
                        build.properties.sample build.xml
  Added:       contrib/struts-faces LICENSE-JSF.txt
  Log:
  General cleanup of the build scripts and README file, moving towards
  preparations for a release.
  
  Package the JSF jar files with the example apps, for easier deployment,
  now that the JSF RI license allows redistribution.
  
  Revision  Changes    Path
  1.2       +7 -0      jakarta-struts/contrib/struts-faces/NOTICE.txt
  
  Index: NOTICE.txt
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/contrib/struts-faces/NOTICE.txt,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- NOTICE.txt	8 Mar 2004 03:07:35 -0000	1.1
  +++ NOTICE.txt	7 Jul 2004 19:40:29 -0000	1.2
  @@ -1,2 +1,9 @@
   This product includes software developed by
   The Apache Software Foundation (http://www.apache.org/).
  +
  +This product includes the JavaServer Faces reference
  +implementation, developed by Sun Microsystems
  +(http://java.sun.com/j2ee/javaserverfaces/) and
  +redistributed in accordance with license terms found
  +in LICENSE-JSF.txt.
  +
  
  
  
  1.13      +71 -146   jakarta-struts/contrib/struts-faces/README.txt
  
  Index: README.txt
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/contrib/struts-faces/README.txt,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- README.txt	17 Jun 2004 12:04:26 -0000	1.12
  +++ README.txt	7 Jul 2004 19:40:29 -0000	1.13
  @@ -1,4 +1,4 @@
  -The Struts-Faces Integration Library (Version 0.4) README File
  +The Struts-Faces Integration Library (Version 1.0) README File
   $Id$
   
   
  @@ -7,23 +7,19 @@
   ============
   
   This package contains an add-on library that supports the use of
  -JavaServer Faces user interface technology in a Struts based web application,
  -in place of the Struts custom tag libraries.  As a proof of concept, it also
  -includes the canonical "struts-example" example web application, converted
  -to use JavaServer Faces tags, as well as tags from the JSP Standard Tag
  -Library (JSTL), version 1.0 or later.  It also includes a very basic Tiles
  -based application, modified in a similar manner.
  -
  -Note that this software is based on the Beta release of
  -JavaServer Faces technology, and is itself very new.  Therefore, it is
  -appropriate only for evaluation and learning, and not yet appropriate
  -for production application deployments.
  -
  -EXAMPLE APPLICATION NOTE -- Because the JavaServer Faces reference
  -implementation is an early access release, the license under which it is
  -available does not allow redistribution.  See RUNNING THE EXAMPLE APPLICATION,
  -below, for information on how to integrate your own copy of the required
  -JAR files into the example app, which is required before it will run.
  +JavaServer Faces (JSF) user interface technology in a Struts based web
  +application, in place of the Struts custom tag libraries.  As a proof of
  +concept, it also includes the canonical "struts-example" example
  +web application, converted to use JSF tags, as well as tags from the
  +JSP Standard Tag Library (JSTL), version 1.0 or later.  It also includes
  +a very basic Tiles based application, modified in a similar manner.
  +
  +The Struts-Faces Integration Library should work with any implementation
  +of JavaServer Faces, version 1.0 or later.  It has primarily been tested
  +against version 1.1 of the JavaServer Faces reference implementation,
  +available at:
  +
  +  http://java.sun.com/j2ee/javaserverfaces/
   
   
   ========================
  @@ -31,10 +27,10 @@
   ========================
   
   
  -Struts-Faces Integration Library (Version 0.5):
  +Struts-Faces Integration Library (Version 1.0):
   ----------------------------------------------
   
  -This release of the Struts-Faces Integration Library (Version 0.5) has the
  +This release of the Struts-Faces Integration Library (Version 1.0) has the
   following new features relative to the previous (0.4) release:
   
   * It is now possible to mix pure JavaServer Faces pages, and those
  @@ -79,7 +75,7 @@
     web application.  For example, the converted "Mail Reader" example includes
     using the <h:dataTable> for multi-row input as well as output.
   
  -This release of the Struts-Faces Integration Library (Version 0.5) has the
  +This release of the Struts-Faces Integration Library (Version 1.0) has the
   following revised features relative to the previous (0.4) release:
   
   * The "focus" attribute on the <s:form> tag should work properly
  @@ -89,49 +85,6 @@
     in all cases now.
   
   
  -Struts-Faces Integration Library (Version 0.4):
  -----------------------------------------------
  -
  -The previous release of the Struts-Faces Integration Library (Version 0.4)
  -had the following new features relative to the previous (0.3) release:
  -
  -* Value reference expressions in "valueRef" attributes of UI component tags
  -  can now recognize and support the properties of DynaBeans directly, thanks
  -  to the use of the pluggable PropertyResolver made available in
  -  JavaServer Faces 1.0ea4.  For backwards compatibility, the ".map"
  -  pseudo-property on DynaActionForm and its subclasses is still recognized.
  -
  -The previous release of the Struts-Faces Integration Library (Version 0.4)
  -had the following revised features relative to the previous (0.3) release:
  -
  -* In all UI tags for input and output components, the "modelReference"
  -  attribute has been replaced with "valueRef", for consistency with
  -  the corresponding change in the standard JavaServer Faces component tags.
  -
  -* In all UI tags corresponding to JavaServer Faces components, the following
  -  changes have been made to reflect the corresponding changes in the
  -  underlying API classes:
  -  - Replaced javax.faces.webapp.FacesTag by javax.faces.webapp.UIComponentTag.
  -  - Replaced createComponent() method that returned a new component instance
  -    by getComponentType() method that returns a component type.
  -
  -* The library utilizes the new (in EA4) capability to embed a configuration
  -  file in the struts-faces.jar file (META-INF/faces-config.xml) to
  -  automatically register the custom components and renderers included
  -  in the library.  Previously, these application elements needed to be
  -  registered programmatically in a ServletContextListener.
  -
  -* Previously, the (deprecated) ApplicationHandler API was used to connect
  -  form submits to the Struts request processing lifecycle.  This has been
  -  replaced by plugging a custom implementation of the new ActionListener
  -  interface.
  -
  -* The renderer implementation classes have been substantially simplified
  -  due to the removal of the requirement to provide information about
  -  supported render-dependent attributes.
  -
  -
  -
   ========================
   CONTENTS OF THIS RELEASE:
   ========================
  @@ -140,11 +93,6 @@
   Top Level Directory:
   -------------------
   
  -  LICENSE.txt       -- The Apache Software License, under which all software
  -                       included in this bundle is licensed.
  -
  -  README.txt        -- This README file.
  -
     build.xml         -- Ant build script (only required for building from
                          source).
   
  @@ -152,16 +100,22 @@
                       -- Sample "build.properties" file that may be customized
                          (only required for building from source).
   
  +  LICENSE.txt       -- The Apache Software License, under which all software
  +                       included in this bundle is licensed.
  +
  +  LICENSE-JSF.txt   -- The license for the JavaServer Faces reference
  +                       impementation, which applies to the included
  +                       jsf-api.jar and jsf-impl.jar files.
  +
  +  NOTICE.txt        -- Attribution notices for software included in this
  +                       distribution.
  +
  +  README.txt        -- This README file.
  +
   
   Directory "conf":
   ----------------
   
  -  faces-config.xml  -- Configuration file used by the struts-faces.jar file
  -                       to automatically register JavaServer Faces components
  -                       and renderers that are implemented in the library.  This
  -                       is for reference only; your application does not need
  -                       to do anything to include this file.
  -
     struts-faces.tld  -- The JSP tag library descriptor file for the
                          Struts-Faces integration tag library.
   
  @@ -218,7 +172,7 @@
                          taglib      -- Custom JavaServer Faces component tag
                                         implementations
   
  -                       uti         -- Miscellaneous utility classes
  +                       util        -- Miscellaneous utility classes
   
   
   Directory "web":
  @@ -237,15 +191,11 @@
   Directory "webapps":
   -------------------
   
  -  struts-faces.war  -- The converted example application, minus the required
  -                       JAR files from the JavaServer Faces reference.  See
  -                       RUNNING THE EXAMPLE APPLIATION for information on how to
  -                       configure and deploy this web application on your
  -                       container.
  -
  -  struts-faces2.war -- The Tiles-based example application, minus the required
  -                       JAR fies from the JavaSErver Faces reference
  -                       implementation.
  +  struts-faces.war  -- The converted example application, ready to be
  +                       deployed on a Servlet 2.3 / JSP 1.2 container.
  +
  +  struts-faces2.war -- The Tiles-based example application, ready to be
  +                       deployed on a Servlet 2.3 / JSP 1.2 container.
   
   
   ================================
  @@ -270,76 +220,44 @@
   Install a Servlet Container:
   ---------------------------
   
  -The JavaServer Faces reference implementation final release has been tested
  -against Tomcat 5.0.16, but should run in any container that supports the
  -Servlet 2.3 and JSP 1.2 specifications.
  -
  -If you attempt to run the example program in a servlet container that has a
  -version of JavaServer Faces installed already (such as the Java Web Services
  -Developer Pack, version 1.2 or 1.3), you must take one of the following two
  -actions before you can successfully use the new Struts-Faces Integration Library
  -and the corresponding beta release of JavaServer Faces.  Either:
  +The Struts-Faces integration library has been tested against Tomcat 4.1.29
  +and 5.0.25, but should run in any container that supports
  +the Servlet 2.3 (or later) and JSP 1.2 (or later) specifications.  Note that
  +these version levels are higher than what Struts requires for itself -- they
  +correspond to the minimum requirements specified by JSF 1.0.
  +
  +If you attempt to run the example programs in a servlet container that has an
  +early access or beta version of JavaServer Faces installed already (such as
  +the Java Web Services Developer Pack, version 1.2 or 1.3), you must take one
  +of the following two actions before you can successfully use the new
  +Struts-Faces Integration Library and the corresponding final release of
  +JavaServer Faces.  Either:
   
  -* Replace any existing (EA4) version of JavaServer Faces in your container,
  +* Replace any existing version of JavaServer Faces in your container,
     following the container's specific instructions for this process (and leave
     the JavaServer Faces JARs out of your web application); or
   
  -* Remove any existing (EA4) version of JavaServer Faces in your container,
  -  following the container's specific instructions for this process (and plan
  +* Remove any existing version of JavaServer Faces in your container,
  +  following the container's specific instructions for this process, and plan
     on including the JavaServer Faces JARs with your webapp.  If you plan to
     build the example application from scratch, be sure to include the property
     setting "build.standalone=true" in your local "build.properties" file.
   
   
  -Install The Struts-Faces Integration Library 0.5 Distribution:
  --------------------------------------------------------------
  -
  -Download a nightly build of the Struts-Faces Integration Library (what will
  -eventually be version 0.5) from:
  -
  -  http://jakarta.apache.org/builds/jakarta-struts/nightly/struts-faces/
  +Install The Struts-Faces Integration Library Distribution:
  +---------------------------------------------------------
   
  -Note that the source code for this distribution is included in the nightly
  -builds of the jakarta-struts repository, in directory:
  +Stable releases of the Struts-Faces integration library (when released)
  +will be available at:
   
  -  http://jakarta.apache.org/builds/jakarta-struts/nightly/src/
  +  http://jakarta.apache.org/site/binindex.cgi
   
  +You can also download nightly builds from:
   
  -Add JavaServer Faces JAR Files To Example WAR:
  ----------------------------------------------
  +  http://jakarta.apache.org/builds/jakarta-struts/nightly/struts-faces/
   
  -If you are planning to execute the sample application on a servlet container
  -containing a previous version of JavaServer Faces (such as EA4), be sure to
  -replace that version with the beta version, following the container provided
  -instructions.
  -
  -If you are planning to execute the example application on a servlet container
  -that does not include JavaServer Faces (such as Tomcat 5.0.16 or later),
  -you will need to manually integrate the required JAR fles into the WAR file.
  -Yo can do this by executing the following steps from the command line, where
  -$JSF_HOME is the directory into which you have downloaded the final release
  -of JavaServer Faces 1.0, and $STRUTS_FACES_HOME is the directory into which
  -you have downloaded the Struts-Faces Integration Library binary release:
  -
  -  mkdir temp
  -  cd temp
  -  jar xvf $STRUTS_FACES_HOME/webapps/struts-faces.war
  -  cp $JSF_HOME/lib/jsf-api.jar WEB-INF/lib
  -  cp $JSF_HOME/lib/jsf-impl.jar WEB-INF/lib
  -  jar cvf ../struts-faces.war *
  -  cd ..
  -
  -After executing these steps, your current working directory will contain a
  -revised web application archive (WAR) file that has all the required libraries
  -to execute on any Servlet 2.4 / JSP 2.0 (or later) container.
  -
  -    VERSION COMPATIBILITY NOTE:  The example application
  -    is distributed with the JSTL 1.1 JAR files (jstl.jar
  -    and standard.jar), and is therefore dependent upon
  -    JSP 2.0.  You can easily make a version of the webapp that
  -    runs on a Servlet 2.3 / JSP 1.2 container (such as
  -    Tomcat 4.1.27) by replacing these two JAR with the
  -    corresponding JARs from a JSTL 1.0 release.
  +In either case, source code is included in the distribution, so no separate
  +source distribution is needed.
   
   
   Deploy The Example Application:
  @@ -347,7 +265,8 @@
   
   Follow the standard instructions for your container to deploy the
   struts-faces.war web application archive.  For the JWSDP 1.2 or 1.3 release,
  -or for any standard Tomcat 5.0.x release, you have the following choices:
  +or for any standard Tomcat 4.1.x or 5.0.x release, you have the following
  +choices:
   
   * Drop the "struts-faces.war" file into the "webapps" subdirectory
     of the servlet container release, and wait a few moments for the container
  @@ -383,9 +302,9 @@
   ---------------------------
   
   If you have downloaded the JWSDP 1.2 or 1.3 release described above, Ant is
  -already included.  Otherwise, download Apache Ant, version 1.5.2 or later, from:
  +already included.  Otherwise, download Apache Ant, version 1.5.4 or later, from:
   
  -    http://jakarta.apache.org/site/binindex.cgi
  +    http://ant.apache.org/bindownload.cgi
   
   Install this environment as described in the Ant documentation, and ensure
   that Ant's "bin" directory is on your PATH.
  @@ -396,7 +315,6 @@
   
   Copy the "build.properties.sample" file in the top level directory to a file
   named "build.properties", and customize the settings that are specified there.
  -The default values are set up for easy use with the JWSDP 1.2ea download.
   
   
   Build The Sources:
  @@ -423,6 +341,8 @@
   * Add the following JAR files from the JavaServer Faces reference
     implementation's "lib" directory to your application's
     "/WEB-INF/lib" directory:  jsf-api.jar, jsf-impl.jar.
  +  (You can also use any other JSF implementation that has
  +  been certified to be compatible with the JSF specification.)
   
   * Add the following JAR files, containing the JSTL release (or
     from the JavaServer Faces release) to your application's
  @@ -595,3 +515,8 @@
     (org.apache.struts.faces.application.FacesRequestProcessor or
     org.apache.struts.faces.application.FacesTilesRequestProcessor), which must
     be used (or subclassed) for the integration to operate successfuly.
  +
  +* The JavaServer Faces specification describes several restrictions on
  +  combining JSF component tags and other JSP source elements (including
  +  custom tags from other tag libraries) on the same page.  See
  +  Section 9.2.8 of the JSF spec for more information.
  
  
  
  1.8       +19 -14    jakarta-struts/contrib/struts-faces/build.properties.sample
  
  Index: build.properties.sample
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/contrib/struts-faces/build.properties.sample,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- build.properties.sample	6 Jul 2004 07:26:35 -0000	1.7
  +++ build.properties.sample	7 Jul 2004 19:40:29 -0000	1.8
  @@ -32,22 +32,27 @@
   # than the Java Web Services Developer Pack (JWSDP) 1.2 or later, which makes
   # many of these libraries available to web applications already.
   
  -# build.standalone=true
  +build.standalone=true
   
   
   # ---------------------- DEPENDENCY HOME DIRECTORIES --------------------------
   
  -# The absolute or relative pathname of the Java Web Services Developer Pack
  -# (JWSDP) Version 1.2 or later installation directory
  -jwsdp.home=/usr/local/jwsdp-1.2
   
  -# The absolute or relative pathname of the JavaServer Faces Final Release
  -# Distribution Directory
  -jsf.home=/usr/local/jsf-1_0
  -
  -# The absolute or relative pathname of the JSP Standard Tag Library 1.0 or later
  -# distribution directory
  -jstl.home=${jwsdp.home}/jstl
  +# The absolute or relative pathname to your installation of the JavaServer Faces
  +# refererence implementation (version 1.1 or later).
  +jsf.home=/usr/local/jsf-1_1
  +
  +# The absolute or relative pathname to your installation of the JSP Standard
  +# Tag Library.  If you are running against a Servlet 2.3 / JSP 1.2 container
  +# (such as Tomcat 4.1.x), use version 1.0.x of JSTL.  For a Servlet 2.4 /
  +# JSP 2.0 container (such as Tomcat 5.0.x or any JWSDP release), use
  +# version 1.1.x of JSTL.
  +jstl.home=/usr/local/standard-1.0.3
  +
  +# The absolute or relative pathname to your installation of Tomcat 4.1.x,
  +# Tomcat 5.0.x, or the Java Web Services Developer Pack (version 1.4 or later)
  +# server.
  +server.home=/usr/local/jakarta-tomcat-4.1.29
   
   # The absolute or relative pathname of the Struts 1.1 (or later)
   # Distribution Directory
  @@ -89,7 +94,7 @@
   # The absolute or relative pathname of the JSP 2.0 API Classes
   # (If you are compiling against a combined Servlet 2.3 / JSP 1.2 API
   # classes JAR file, this property can be omitted)
  -jsp-api.jar=${jwsdp.home}/common/lib/jsp-api.jar
  +jsp-api.jar=${server.home}/common/lib/jsp-api.jar
   
   # The absolute or relative pathname of the JSP Standard Tag Library
   # (JSTL) API Classes
  @@ -97,7 +102,7 @@
   
   # The absolute or relative pathname of the Servlet 2.4 API Classes
   # (or a combined Servlet 2.3 / JSP 1.2 API classes JAR file)
  -servlet.jar=${jwsdp.home}/common/lib/servlet-api.jar
  +servlet.jar=${servlet.home}/common/lib/servlet.jar
   
   # The absolute or relative pathname of the JSP Standard Tag Library
   # (JSTL) RI Classes
  
  
  
  1.13      +16 -10    jakarta-struts/contrib/struts-faces/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/contrib/struts-faces/build.xml,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- build.xml	6 Jul 2004 07:26:35 -0000	1.12
  +++ build.xml	7 Jul 2004 19:40:29 -0000	1.13
  @@ -31,9 +31,9 @@
   
   
     <!-- Dependency home directory defaults -->
  -  <property name="jwsdp.home"       value="/usr/local/jwsdp-1.2"/>
  -  <property name="jsf.home"         value="/usr/local/jsf-1_0"/>
  -  <property name="jstl.home"        value="${jwsdp.home}/jstl"/>
  +  <property name="jsf.home"         value="/usr/local/jsf-1_1"/>
  +  <property name="jstl.home"        value="/usr/local/standard-1.0.3"/>
  +  <property name="server.home"       value="/usr/local/jakarta-tomcat-4.1.29"/>
     <property name="struts.home"      value="/usr/local/jakarta-struts-1.1"/>
   
   
  @@ -55,9 +55,9 @@
     <property name="jakarta-oro.jar"  value="${struts.home}/lib/jakarta-oro.jar"/>
     <property name="jsf-api.jar"      value="${jsf.home}/lib/jsf-api.jar"/>
     <property name="jsf-impl.jar"     value="${jsf.home}/lib/jsf-impl.jar"/>
  -  <property name="jsp-api.jar"      value="${jwsdp.home}/common/lib/jsp-api.jar"/>
  +  <property name="jsp-api.jar"      value="${server.home}/common/lib/jsp-api.jar"/>
     <property name="jstl.jar"         value="${jstl.home}/lib/jstl.jar"/>
  -  <property name="servlet.jar"      value="${jwsdp.home}/common/lib/servlet-api.jar"/>
  +  <property name="servlet.jar"      value="${server.home}/common/lib/servlet.jar"/>
     <property name="standard.jar"     value="${jstl.home}/lib/standard.jar"/>
     <property name="struts.jar"       value="${struts.home}/lib/struts.jar"/>
   
  @@ -67,7 +67,7 @@
     <property name="dist.home"       value="${basedir}/dist"/>
     <property name="project.name"    value="Struts-Faces Integration Library"/>
     <property name="project.package" value="org.apache.struts.faces"/>
  -  <property name="project.version" value="0.5"/>
  +  <property name="project.version" value="1.0-dev"/>
   
   
     <!-- Compile Defaults -->
  @@ -183,9 +183,11 @@
       <copy       tofile="${build.home}/classes/META-INF/struts-faces.tld"
                     file="${build.home}/conf/struts-faces.tld"/>
   
  -    <!-- Copy license file -->
  +    <!-- Copy license and notice files -->
       <copy       tofile="${build.home}/classes/META-INF/LICENSE.txt"
                     file="LICENSE.txt"/>
  +    <copy       tofile="${build.home}/classes/META-INF/NOTICE.txt"
  +                  file="NOTICE.txt"/>
   
     </target>
   
  @@ -399,7 +401,7 @@
                     file="${commons-logging.jar}"/>
       <copy        todir="${build.home}/webapps/example2/WEB-INF/lib"
                     file="${commons-validator.jar}"/>
  -    <copy        todir="${build.home}/webapps/example/WEB-INF/lib"
  +    <copy        todir="${build.home}/webapps/example2/WEB-INF/lib"
                     file="${jakarta-oro.jar}"/>
       <copy        todir="${build.home}/webapps/example2/WEB-INF/lib"
                     file="${struts.jar}"/>
  @@ -508,7 +510,9 @@
           <include name="META-INF/LICENSE.txt"/>
         </fileset>
         <fileset dir="${build.home}/webapps/example">
  -        <exclude name="**/jsf-*.jar"/>   <!-- EA license so no redistrib -->
  +<!-- Final RI license allows redistribution
  +        <exclude name="**/jsf-*.jar"/>
  +-->
         </fileset>
       </jar>
       <jar  destfile="${dist.home}/webapps/struts-faces2.war">
  @@ -516,7 +520,9 @@
           <include name="META-INF/LICENSE.txt"/>
         </fileset>
         <fileset dir="${build.home}/webapps/example2">
  -        <exclude name="**/jsf-*.jar"/>   <!-- EA license so no redistrib -->
  +<!-- Final RI license allows redistribution
  +        <exclude name="**/jsf-*.jar"/>
  +-->
         </fileset>
       </jar>
   
  
  
  
  1.1                  jakarta-struts/contrib/struts-faces/LICENSE-JSF.txt
  
  Index: LICENSE-JSF.txt
  ===================================================================
  Sun Microsystems, Inc. 
  Binary Code License Agreement
  
  READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE MEDIA PACKAGE.� BY OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT.� IF YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF THESE TERMS BY SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS AGREEMENT.� IF YOU DO NOT AGREE TO ALL THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED ELECTRONICALLY, SELECT THE "DECLINE" BUTTON AT THE END OF THIS AGREEMENT. 
  
  1.� LICENSE TO USE.� Sun grants you a non-exclusive and non-transferable license for the internal use only of the accompanying software and documentation and any error corrections provided by Sun (collectively "Software"), by the number of users and the class of computer hardware for which the corresponding fee has been paid. 
  
  2.� RESTRICTIONS.� Software is confidential and copyrighted. Title to Software and all associated intellectual property rights is retained by Sun and/or its licensors.� Except as specifically authorized in any Supplemental License Terms, you may not make copies of Software, other than a single copy of Software for archival purposes.� Unless enforcement is prohibited by applicable law, you may not modify, decompile, or reverse engineer Software.� Licensee acknowledges that Licensed Software is not designed or intended for use in the design, construction, operation or maintenance of any nuclear facility. Sun Microsystems, Inc. disclaims any express or implied warranty of fitness for such uses. � No right, title or interest in or to any trademark, service mark, logo or trade name of Sun or its licensors is granted under this Agreement. 
  
  3.  LIMITED WARRANTY.� Sun warrants to you that for a period of ninety (90) days from the date of purchase, as evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials and workmanship under normal use.� Except for the foregoing, Software is provided "AS IS".� Your exclusive remedy and Sun's entire liability under this limited warranty will be at Sun's option to replace Software media or refund the fee paid for Software. 
  
  4.� DISCLAIMER OF WARRANTY.� UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. 
  
  5.� LIMITATION OF LIABILITY.� TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.� In no event will Sun's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement.� The foregoing limitations will apply even if the above stated warranty fails of its essential purpose. 
  
  6.� Termination.� This Agreement is effective until terminated.� You may terminate this Agreement at any time by destroying all copies of Software.� This Agreement will terminate immediately without notice from Sun if you fail to comply with any provision of this Agreement.� Upon Termination, you must destroy all copies of Software. 
  
  7.  Export Regulations. All Software and technical data delivered under this Agreement are subject to US export control laws and may be subject to export or import regulations in other countries.� You agree to comply strictly with all such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export, or import as may be required after delivery to you. 
  
  8.� U.S. Government Restricted Rights.� If Software is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in Software and accompanying documentation will be only as set forth in this Agreement; this is in accordance with 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD acquisitions). 
  
  9.� Governing Law.� Any action related to this Agreement will be governed by California law and controlling U.S. federal law.� No choice of law rules of any jurisdiction will apply. 
  
  10. Severability. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate. 
  
  11. Integration.� This Agreement is the entire agreement between you and Sun relating to its subject matter.� It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement.� No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. 
   
  JAVASERVER(TM) FACES 1.1, REFERENCE IMPLEMENTATION
  SUPPLEMENTAL LICENSE TERMS
  
  These supplemental license terms ("Supplemental Terms") add to or modify the terms of the Binary Code License Agreement (collectively, the "Agreement"). Capitalized terms not defined in these Supplemental Terms shall have the same meanings ascribed to them in the Agreement. These Supplemental Terms shall supersede any inconsistent or conflicting terms in the Agreement, or in any license contained within the Software. 
  
  1. Software Internal Use and Development License Grant. Subject to the terms and conditions of this Agreement, including, but not limited to Section 3 (Java(TM) Technology Restrictions) of these Supplemental Terms, Sun grants you a non-exclusive, non-transferable, limited license to reproduce internally and use internally the binary form of the Software, complete and unmodified, for the sole purpose of designing, developing and testing your Java applets and applications ("Programs"). 
  
  2. License to Distribute Software.� In addition to the license granted in Section 1 (Software Internal Use and Development License Grant) of these Supplemental Terms, subject to the terms and conditions of this Agreement, including but not limited to Section 3 (Java Technology Restrictions), Sun grants you a non-exclusive, non-transferable, limited license to reproduce and distribute the Software in binary form only, provided that you (i) distribute the Software complete and unmodified and only bundled as part of your Programs, (ii) do not distribute additional software intended to replace any component(s) of the Software, (iii) do not remove or alter any proprietary legends or notices contained in the Software, (iv) only distribute the Software subject to a license agreement that protects Sun's interests consistent with the terms contained in this Agreement, and (v) agree to defend and indemnify Sun and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Software. 
  
  3. Java Technology Restrictions. You may not modify the Java Platform Interface ("JPI", identified as classes contained within the "java" package or any subpackages of the "java" package), by creating additional classes within the JPI or otherwise causing the addition to or modification of the classes in the JPI.� In the event that you create an additional class and associated API(s) which (i) extends the functionality of the Java Platform, and (ii) is exposed to third party software developers for the purpose of developing additional software which invokes such additional API, you must promptly publish broadly an accurate specification for such API for free use by all developers. You may not create, or authorize your licensees to create additional classes, interfaces, or subpackages that are in any way identified as "java", "javax", "sun" or similar convention as specified by Sun in any naming convention designation. 
  
  4. Trademarks and Logos. You acknowledge and agree as between you and Sun that Sun owns the SUN, SOLARIS, JAVA, JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS, JAVA, JINI, FORTE, and iPLANET-related trademarks, service marks, logos and other brand designations ("Sun Marks"), and you agree to comply with the Sun Trademark and Logo Usage Requirements currently located at http://www.sun.com/policies/trademarks. Any use you make of the Sun Marks inures to Sun's benefit. 
  
  5. Source Code. Software may contain source code that is provided solely for reference purposes pursuant to the terms of this Agreement.� Source code may not be redistributed unless expressly provided for in this Agreement. 
  
  6.�Termination for Infringement.� Either party may terminate this Agreement immediately should any Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual property right. 
  
  For inquiries please contact: Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, California 95054. 
  (LFI#140459/Form ID#011801)
  
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org