Files
spring-webflow/src/reference/whatsnew.xml
Spring Operator 7ccb2d1245 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* [ ] http://joda-time.sourceforge.net/ (200) with 1 occurrences could not be migrated:
   ([https](https://joda-time.sourceforge.net/) result AnnotatedConnectException).
* [ ] http://saxon.sourceforge.net/ (200) with 1 occurrences could not be migrated:
   ([https](https://saxon.sourceforge.net/) result AnnotatedConnectException).
* [ ] http://www.jjg.net/ia/visvocab/ (200) with 1 occurrences could not be migrated:
   ([https](https://www.jjg.net/ia/visvocab/) result AnnotatedConnectException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* [ ] http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd (ReadTimeoutException) with 2 occurrences migrated to:
  https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ([https](https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd) result ReadTimeoutException).
* [ ] http://static.springframework.org/spring/docs/current/reference/portlet.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/reference/portlet.html ([https](https://static.springframework.org/spring/docs/current/reference/portlet.html) result 404).
* [ ] http://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/index.html (404) with 1 occurrences migrated to:
  https://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/index.html ([https](https://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/index.html) result 404).
* [ ] http://www.springframework.org/schema/faces/spring-faces-2.2.xsd (404) with 1 occurrences migrated to:
  https://www.springframework.org/schema/faces/spring-faces-2.2.xsd ([https](https://www.springframework.org/schema/faces/spring-faces-2.2.xsd) result 404).
* [ ] http://www.springframework.org/schema/faces/spring-faces-2.4.xsd (404) with 3 occurrences migrated to:
  https://www.springframework.org/schema/faces/spring-faces-2.4.xsd ([https](https://www.springframework.org/schema/faces/spring-faces-2.4.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.0.xsd (404) with 1 occurrences migrated to:
  https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.0.xsd ([https](https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.0.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.3.xsd (404) with 2 occurrences migrated to:
  https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.3.xsd ([https](https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.3.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.4.xsd (404) with 4 occurrences migrated to:
  https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.4.xsd ([https](https://www.springframework.org/schema/webflow-config/spring-webflow-config-2.4.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow/spring-webflow-1.0.xsd (404) with 2 occurrences migrated to:
  https://www.springframework.org/schema/webflow/spring-webflow-1.0.xsd ([https](https://www.springframework.org/schema/webflow/spring-webflow-1.0.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd (404) with 43 occurrences migrated to:
  https://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd ([https](https://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd) result 404).
* [ ] http://www.springframework.org/schema/webflow/spring-webflow-2.4.xsd (404) with 2 occurrences migrated to:
  https://www.springframework.org/schema/webflow/spring-webflow-2.4.xsd ([https](https://www.springframework.org/schema/webflow/spring-webflow-2.4.xsd) result 404).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://static.springframework.org/spring-security/site/reference.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-security/site/reference.html ([https](https://static.springframework.org/spring-security/site/reference.html) result 200).
* [ ] http://static.springsource.org/spring/docs/2.5.x/reference/mvc.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/2.5.x/reference/mvc.html ([https](https://static.springsource.org/spring/docs/2.5.x/reference/mvc.html) result 200).
* [ ] http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/expressions.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/expressions.html ([https](https://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/expressions.html) result 200).
* [ ] http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/index.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/index.html ([https](https://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/index.html) result 200).
* [ ] http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/mvc.html ([https](https://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html) result 200).
* [ ] http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/validation.html (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/validation.html ([https](https://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/validation.html) result 200).
* [ ] http://en.wikipedia.org/wiki/Unified_Expression_Language with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Unified_Expression_Language ([https](https://en.wikipedia.org/wiki/Unified_Expression_Language) result 200).
* [ ] http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd (301) with 2 occurrences migrated to:
  https://hibernate.org/dtd/hibernate-mapping-3.0.dtd ([https](https://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd) result 200).
* [ ] http://jira.spring.io with 1 occurrences migrated to:
  https://jira.spring.io ([https](https://jira.spring.io) result 200).
* [ ] http://portals.apache.org/pluto/ with 1 occurrences migrated to:
  https://portals.apache.org/pluto/ ([https](https://portals.apache.org/pluto/) result 200).
* [ ] http://primefaces.org/documentation.html with 1 occurrences migrated to:
  https://primefaces.org/documentation.html ([https](https://primefaces.org/documentation.html) result 200).
* [ ] http://repo.spring.io/libs-release/ with 2 occurrences migrated to:
  https://repo.spring.io/libs-release/ ([https](https://repo.spring.io/libs-release/) result 200).
* [ ] http://repository.springsource.com/ivy/bundles/external/ with 2 occurrences migrated to:
  https://repository.springsource.com/ivy/bundles/external/ ([https](https://repository.springsource.com/ivy/bundles/external/) result 200).
* [ ] http://repository.springsource.com/ivy/bundles/release/ with 2 occurrences migrated to:
  https://repository.springsource.com/ivy/bundles/release/ ([https](https://repository.springsource.com/ivy/bundles/release/) result 200).
* [ ] http://search.maven.org with 1 occurrences migrated to:
  https://search.maven.org ([https](https://search.maven.org) result 200).
* [ ] http://tiles.apache.org/ with 1 occurrences migrated to:
  https://tiles.apache.org/ ([https](https://tiles.apache.org/) result 200).
* [ ] http://tiles.apache.org/dtds/tiles-config_2_1.dtd with 1 occurrences migrated to:
  https://tiles.apache.org/dtds/tiles-config_2_1.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_1.dtd) result 200).
* [ ] http://tiles.apache.org/dtds/tiles-config_3_0.dtd with 1 occurrences migrated to:
  https://tiles.apache.org/dtds/tiles-config_3_0.dtd ([https](https://tiles.apache.org/dtds/tiles-config_3_0.dtd) result 200).
* [ ] http://www.ognl.org with 1 occurrences migrated to:
  https://www.ognl.org ([https](https://www.ognl.org) result 200).
* [ ] http://xmlns.jcp.org/xml/ns/persistence/orm_2_1.xsd (301) with 1 occurrences migrated to:
  https://www.oracle.com/webfolder/technetwork/jsc/xml/ns/persistence/orm_2_1.xsd ([https](https://xmlns.jcp.org/xml/ns/persistence/orm_2_1.xsd) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-2.0.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.0.xsd) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-2.5.xsd with 1 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.5.xsd) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-4.0.xsd with 8 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans-4.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.0.xsd) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 6 occurrences migrated to:
  https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd with 4 occurrences migrated to:
  https://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd) result 200).
* [ ] http://springframework.org with 1 occurrences migrated to:
  https://springframework.org ([https](https://springframework.org) result 301).
* [ ] http://www.docbook.org/xml/5.0/xsd/docbook.xsd with 18 occurrences migrated to:
  https://www.docbook.org/xml/5.0/xsd/docbook.xsd ([https](https://www.docbook.org/xml/5.0/xsd/docbook.xsd) result 301).
* [ ] http://www.docbook.org/xml/5.0/xsd/xlink.xsd with 18 occurrences migrated to:
  https://www.docbook.org/xml/5.0/xsd/xlink.xsd ([https](https://www.docbook.org/xml/5.0/xsd/xlink.xsd) result 301).
* [ ] http://www.jboss.org/richfaces/docs with 1 occurrences migrated to:
  https://www.jboss.org/richfaces/docs ([https](https://www.jboss.org/richfaces/docs) result 301).
* [ ] http://java.sun.com/dtd/facelet-taglib_1_0.dtd with 1 occurrences migrated to:
  https://java.sun.com/dtd/facelet-taglib_1_0.dtd ([https](https://java.sun.com/dtd/facelet-taglib_1_0.dtd) result 302).
* [ ] http://java.sun.com/dtd/web-facesconfig_1_0.dtd with 1 occurrences migrated to:
  https://java.sun.com/dtd/web-facesconfig_1_0.dtd ([https](https://java.sun.com/dtd/web-facesconfig_1_0.dtd) result 302).
* [ ] http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd with 2 occurrences migrated to:
  https://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd) result 302).
* [ ] http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd with 1 occurrences migrated to:
  https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd) result 302).
* [ ] http://repo.spring.io/snapshot with 1 occurrences migrated to:
  https://repo.spring.io/snapshot ([https](https://repo.spring.io/snapshot) result 302).
* [ ] http://www.paypal.com?_callbackUrl= with 1 occurrences migrated to:
  https://www.paypal.com?_callbackUrl= ([https](https://www.paypal.com?_callbackUrl=) result 302).

# Ignored
These URLs were intentionally ignored.

* http://docbook.org/ns/docbook with 36 occurrences
* http://jakarta.apache.org/log4j/ with 4 occurrences
* http://java.sun.com/jsf/facelets with 2 occurrences
* http://java.sun.com/jsf/html with 2 occurrences
* http://java.sun.com/xml/ns/javaee with 4 occurrences
* http://java.sun.com/xml/ns/persistence with 2 occurrences
* http://localhost/app/hotels/booking?hotelId=1 with 1 occurrences
* http://www.springframework.org/schema/beans with 32 occurrences
* http://www.springframework.org/schema/faces with 8 occurrences
* http://www.springframework.org/schema/mvc with 8 occurrences
* http://www.springframework.org/schema/webflow with 96 occurrences
* http://www.springframework.org/schema/webflow-config with 14 occurrences
* http://www.springframework.org/security/tags with 2 occurrences
* http://www.springframework.org/security/tags</namespace&gt with 1 occurrences
* http://www.w3.org/1999/xhtml with 2 occurrences
* http://www.w3.org/1999/xlink with 36 occurrences
* http://www.w3.org/2001/XInclude with 35 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 85 occurrences
* http://xmlns.jcp.org/xml/ns/persistence/orm with 2 occurrences
2019-06-04 08:45:27 -04:00

302 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<chapter xml:id="whatsnew"
xmlns="http://docbook.org/ns/docbook" version="5.0"
xmlns:xl="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://docbook.org/ns/docbook https://www.docbook.org/xml/5.0/xsd/docbook.xsd
http://www.w3.org/1999/xlink https://www.docbook.org/xml/5.0/xsd/xlink.xsd">
<title>What's New</title>
<sect1 xml:id="whatsnew-swf-240">
<title>Spring Web Flow 2.4</title>
<para>This release requires JDK 1.6.</para>
<sect2 xml:id="whatsnew-swf-java-config">
<title>Java-based Configuration</title>
<para>
Web Flow now supports a Java-based alternative for its system configuration.
See the updated <xref linkend="system-setup" />.
</para>
<para>
Also see the
<link xl:href="https://github.com/spring-projects/spring-webflow-samples/tree/master/booking-mvc">booking-mvc</link> and
<link xl:href="https://github.com/spring-projects/spring-webflow-samples/tree/master/booking-faces">booking-faces</link>
samples that have been updated to use all Java config.
</para>
</sect2>
<sect2 xml:id="whatsnew-swf-mvcflash">
<title>Spring MVC Flash Scope Integration</title>
<para>
When a flow ends it can now redirect to a Spring MVC controller after saving
attributes in Spring MVC's flash scope for the controller to access.
</para>
<para>
See <xref linkend="spring-mvc-flash-output"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-partial-validation">
<title>Partial JSR-303 Bean Validation</title>
<para>
A flow definition can apply partial validation on the model through the validation-hints
attribute supported on view state and transition elements.
</para>
<para>
See <xref linkend="view-validation-jsr303-partial" />.
</para>
</sect2>
<sect2 xml:id="whatsnew-hibernate4">
<title>Hibernate Support</title>
<para>
The <classname>HibernateFlowExecutionListener</classname> now supports Hibernate 4 in addition to Hibernate 3.
</para>
<para>
As of 2.4.4 the <classname>HibernateFlowExecutionListener</classname> also works with Hibernate 5.
</para>
</sect2>
<sect2 xml:id="whatsnew-tiles3">
<title>Tiles 3 Support</title>
<para>
The <classname>AjaxTilesView</classname> now supports Tiles 3 in addition to Tiles 2.2.
</para>
</sect2>
<sect2 xml:id="whatsnew-swf-jsf20">
<title>Minimum JSF 2.0 Requirement</title>
<para>
Java ServerFaces version 1.2 and earlier are no longer supported by Spring Web Flow, if you have not done so already you will need to upgrade to JSF 2.0 or above.
In addition the Spring Faces components that were previously provided with JSF 1.2 for progressive AJAX enhancements have been removed in this release.
</para>
<para>
See <xref linkend="spring-faces-upgrade-from-swf23"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-swf-jsf20-portlet">
<title>Portlet API 2.0 and JSF 2.0 support</title>
<para>
The internal Portlet integration introduced in Spring Web Flow 2.2 has been upgraded for JSF 2.0 compatibility.
Some of the more advanced JSF 2.0 features, such as partial state saving, are not supported in a Portlet environment, however, existing application can now upgrade to the minimum required JSF version.
Upgraded projects will need to ensure that the <code>&lt;faces:resources&gt;</code> elements is
included as part of their Spring configuration.
</para>
<para>
See <xref linkend="portlet-jsf"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-deprecation">
<title>Deprecations</title>
<para>
This release deprecates <emphasis>Spring.js</emphasis>. The deprecation includes the entire
<emphasis>spring-js-resources</emphasis> module including <emphasis>Spring.js</emphasis> and
<emphasis>Spring-Dojo.js</emphasis> and the bundled Dojo and CSS Framework.
Also deprecated is the <classname>SpringJavascriptAjaxHandler</classname>
from the <emphasis>spring-js</emphasis> module. The rest of <emphasis>spring-js</emphasis>,
e.g. <classname>AjaxHandler</classname>, <classname>AjaxTilesView</classname>, will be
folded into <emphasis>spring-webflow</emphasis> in a future release.
</para>
<para>
OGNL support is now deprecated.
</para>
</sect2>
</sect1>
<sect1 xml:id="whatsnew-swf-230">
<title>Spring Web Flow 2.3</title>
<sect2 xml:id="whatsnew-swf-embedded-flow">
<title>Embedding A Flow On A Page</title>
<para>
By default Web Flow does a client-side redirect upon entering every view state.
That makes it impossible to embed a flow on a page or within a modal dialog and execute more than one view state without causing a full-page refresh.
Web Flow now supports launching a flow in "embedded" mode.
In this mode a flow can transition to other view states without a client-side redirect during Ajax requests.
See <xref linkend="spring-mvc-embedded-flow"/> and <xref linkend="spring-faces-embedded-mode"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-jsr303">
<title>Support For JSR-303 Bean Validation</title>
<para>
Support for the JSR-303 Bean Validation API is now available building on equivalent support available in Spring MVC.
See <xref linkend="view-validate"/> for more details.
</para>
</sect2>
<sect2 xml:id="whatsnew-pc-propagation">
<title>Flow-Managed Persistence Context Propagation</title>
<para>
Starting with Web Flow 2.3 a flow managed <code>PersistenceContext</code> is automatically extended (propagated) to sub-flows assuming the subflow also has the feature enabled as well.
See <xref linkend="flow-managed-persistence-propagation"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-portlet-resource-requests">
<title>Portlet 2.0 Resource Requests</title>
<para>
Support for Portlet 2.0 resource requests has now been added enabling Ajax requests with partial rendering.
URLs for such requests can be prepared with the <code>&lt;portlet:resourceURL&gt;</code> tag in JSP pages.
Server-side processing is similar to a combined an action and a render requests but combined in a single request.
Unlike a render request, the response from a resource request includes content from the target portlet only.
</para>
</sect2>
<sect2 xml:id="whatsnew-conversation-manager">
<title>Custom ConversationManager</title>
<para>
The <code>&lt;flow-execution-repository&gt;</code> element now provides a conversation-manager attribute accepting a reference to a ConversationManager instance.
</para>
</sect2>
<sect2 xml:id="whatsnew-redirect-in-same-state">
<title>Redirect In Same State</title>
<para>
By default Web Flow does a client-side redirect when remaining in the same view state as long as the current request is not an Ajax request.
This is useful after form validation failure.
Hitting Refresh or Back won't result in browser warnings.
Hence this behavior is usually desirable.
However a new flow execution attribute makes it possible to disable it and that may also be necessary in some cases specific to JSF applications.
See <xref linkend="spring-faces-redirect-in-same-state"/>.
</para>
</sect2>
<sect2 xml:id="whatsnew-samples">
<title>Samples</title>
<para>
The process for building the samples included with the distribution has been simplified.
Maven can be used to build all samples in one step.
Eclipse settings include source code references to simplify debugging.
</para>
<para>
Additional samples can be accessed as follows:
<programlisting language="xml">mkdir spring-samples
cd spring-samples
svn co https://src.springframework.org/svn/spring-samples/webflow-primefaces-showcase
cd webflow-primefaces-showcase
mvn package
# import into Eclipse
</programlisting>
<programlisting language="xml">mkdir spring-samples
cd spring-samples
svn co https://src.springframework.org/svn/spring-samples/webflow-showcase
cd webflow-showcase
mvn package
# import into Eclipse
</programlisting>
</para>
</sect2>
</sect1>
<sect1 xml:id="whatsnew-swf-220">
<title>Spring Web Flow 2.2</title>
<sect2 xml:id="whatsnew-jsf2">
<title>JSF 2 Support</title>
<sect3>
<title>Comprehensive JSF 2 Support</title>
<para>
Building on 2.1, Spring Web Flow version 2.2 adds support for core JSF 2 features
The following features that were not supported in 2.1 are now available:
partial state saving, JSF 2 resource request, handling, and JSF 2 Ajax requests.
At this point support for JSF 2 is considered
comprehensive although not covering every JSF 2 feature --
excluded are mostly features that overlap with the core value Web Flow provides
such as those relating to navigation and state management.
</para>
<para>
See <xref linkend="spring-faces-webflow-config"/> for important configuration changes.
Note that partial state saving is only supported with Sun Mojarra 2.0.3 or later.
It is not yet supported with Apache MyFaces. This is due to the
fact MyFaces was not as easy to customize with regards to how component state is stored.
We will work with Apache MyFaces to provide this support. In the mean time you will need to use
the <code>javax.faces.PARTIAL_STATE_SAVING</code> context parameter in <code>web.xml</code>
to disable partial state saving with Apache MyFaces.
</para>
</sect3>
<sect3>
<title>Travel Sample With the PrimeFaces Components</title>
<para>
The main Spring Travel sample demonstrating Spring Web Flow and JSF support
is now built on JSF 2 and components from the PrimeFaces component library.
Please check out the booking-faces sample in the distribution.
</para>
<para>
Additional samples can be found at the Spring Web Flow - Prime Faces
<link xl:href="https://src.springframework.org/svn/spring-samples/webflow-primefaces-showcase">
Showcase</link>, an SVN repository within the
<link xl:href="https://src.springframework.org/svn/spring-samples">spring-samples</link>
repository. Use these commands to check out and build:
</para>
<programlisting><![CDATA[svn co https://src.springframework.org/svn/spring-samples/webflow-primefaces-showcase
cd webflow-primefaces-showcase
mvn package
]]></programlisting>
</sect3>
</sect2>
<sect2 xml:id="whatsnew-sec">
<title>Spring Security Facelets Tag Library</title>
<para>
A new Spring Security tag library is available for use with with JSF 2.0 or with JSF 1.2 Facelets views.
It provides an &lt;authorize&gt; tag as well as several EL functions.
See <xref linkend="spring-faces-security-taglib"/> for more details.
</para>
</sect2>
<sect2 xml:id="whatsnew-versions">
<title>Spring JavaScript Updates</title>
<sect3>
<title>Deprecated ResourcesServlet</title>
<para>
Starting with Spring 3.0.4, the Spring Framework includes
a replacement for the ResourcesServlet. Please see
the Spring Framework documentation for details on the custom mvc namespace,
specifically the new
<link xl:href="https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-static-resources">"resources"</link>
element.
</para>
</sect3>
<sect3>
<title>Dojo 1.5 and dojox</title>
<para>
The bundled custom Dojo build is upgraded to version 1.5. It now includes dojox.
</para>
<para>
Note that applications are generally encouraged to prepare their own custom
Dojo build for optimized performance depending on what parts of Dojo are
commonly used together. For examples see the
<link xl:href="https://src.springframework.org/svn/spring-webflow/branches/spring-webflow-2.2-maintenance/spring-js-resources/scripts/dojo">scripts</link>
used by Spring Web Flow to prepare its own custom Dojo build.
</para>
</sect3>
<sect3>
<title>Two Spring JS artifacts</title>
<para>
The <code>spring-js</code> artifact has been split in two -- the new artifact
(<code>spring-js-resources</code>) contains client side resource (.js, .css, etc.) while
the existing artifact (<code>spring-js</code>) contains server-side Java code only.
</para>
<para>
Applications preparing their own custom Dojo build have an option now to
avoid including <code>spring-js-resources</code> and put <code>Spring.js</code> and
<code>Spring-Dojo.js</code> directly under the root of their web application.
</para>
</sect3>
<sect3>
<title>Client resources moved into META-INF/web-resources</title>
<para>
Bundled client resources (.js, .css, etc.)
have been moved to <code>META-INF/web-resources</code> from their previous location
under <code>META-INF</code>. This change is transparent for applications but will result
in simpler and safer configuration when using the new resource handling
mechanism available in Spring 3.0.4.
</para>
</sect3>
</sect2>
<sect2 xml:id="whatsnew-jsf-portlet">
<title>JSF Portlet Support</title>
<sect3>
<title>Portlet API 2.0 and JSF 1.2 support</title>
<para>
In previous versions of Spring Web Flow support for JSF Portlets relied on
a Portlet Bridge for JSF implementation and was considered experimental.
Spring Web Flow 2.2 adds support for JSF Portlets based on its own internal
Portlet integration targeting Portlet API 2.0 and JSF 1.2 environments.
See <xref linkend="portlet-jsf"/> for more details.
The Spring Web Flow Travel JSF Portlets sample has been successfully
tested on the Apache Pluto portal container.
</para>
</sect3>
</sect2>
</sect1>
</chapter>