diff --git a/build-spring-webflow/resources/changelog.txt b/build-spring-webflow/resources/changelog.txt
index 84a480e6..46af0f0c 100644
--- a/build-spring-webflow/resources/changelog.txt
+++ b/build-spring-webflow/resources/changelog.txt
@@ -2,10 +2,19 @@ SPRING WEB FLOW CHANGELOG
=========================
http://www.springframework.org/webflow
+Changes in version 2.1.0 ()
+-------------------------------------
+* Upgraded to Spring Framework 3.0.2.RELEASE, Portlet API 2.0.1, and Tiles 2.1.2 (SWF-1226)
+* Upgraded to Spring Security 3.0.2.RELEASE (SWF-1182)
+* Added support for cascaded attributes in AjaxTilesView (SWF-1053)
+
Changes in version 2.0.9 ()
-------------------------------------
* ViewState now ignores case where 'model' expression fails to evaluate (SWF-1176)
-
+* Added calls to lock/unlock the coversation when a flow execution is launched (SWF-1213)
+* Added serialization methods to FlowFacesMessageAdapter as workaround for issue in MyFaces (SWF-1187)
+* Prevented the wrapping of a converter with ObjectToCollection in cases where the targetClass of the converter is already a collection (SWF-1229)
+* Upgraded to Dojo 1.2.4 containing security fixes.
Changes in version 2.0.8 (2009.08.06)
-------------------------------------
@@ -683,4 +692,4 @@ Package org.springframework.webflow.samples
Package reference-manual
* Improved readability of reference manual in several sections (SWF-349).
-* Added documentation on flow execution exception handling options (SWF-357).
\ No newline at end of file
+* Added documentation on flow execution exception handling options (SWF-357).
diff --git a/spring-webflow-samples/booking-faces/ivy.xml b/spring-webflow-samples/booking-faces/ivy.xml
index 9063c6ee..b6288d83 100755
--- a/spring-webflow-samples/booking-faces/ivy.xml
+++ b/spring-webflow-samples/booking-faces/ivy.xml
@@ -42,7 +42,9 @@
-
+
+
+
diff --git a/spring-webflow-samples/booking-faces/pom.xml b/spring-webflow-samples/booking-faces/pom.xml
index b750f308..2570bf38 100644
--- a/spring-webflow-samples/booking-faces/pom.xml
+++ b/spring-webflow-samples/booking-faces/pom.xml
@@ -104,8 +104,18 @@
org.springframework.security
- org.springframework.security
- 2.0.4.A
+ org.springframework.security.core
+ 3.0.2.RELEASE
+
+
+ org.springframework.security
+ org.springframework.security.config
+ 3.0.2.RELEASE
+
+
+ org.springframework.security
+ org.springframework.security.web
+ 3.0.2.RELEASE
org.springframework.webflow
diff --git a/spring-webflow-samples/booking-faces/src/main/webapp/WEB-INF/config/security-config.xml b/spring-webflow-samples/booking-faces/src/main/webapp/WEB-INF/config/security-config.xml
index b6680f84..eae5ca29 100644
--- a/spring-webflow-samples/booking-faces/src/main/webapp/WEB-INF/config/security-config.xml
+++ b/spring-webflow-samples/booking-faces/src/main/webapp/WEB-INF/config/security-config.xml
@@ -6,11 +6,12 @@
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/security
- http://www.springframework.org/schema/security/spring-security-2.0.2.xsd">
+ http://www.springframework.org/schema/security/spring-security-3.0.xsd">
-
+
@@ -23,14 +24,16 @@
jeremy/atlanta
scott/rochester
-->
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-webflow-samples/booking-mvc/ivy.xml b/spring-webflow-samples/booking-mvc/ivy.xml
index 2e2c0c03..51f3c8ea 100755
--- a/spring-webflow-samples/booking-mvc/ivy.xml
+++ b/spring-webflow-samples/booking-mvc/ivy.xml
@@ -47,8 +47,9 @@
-
-
+
+
+
diff --git a/spring-webflow-samples/booking-mvc/pom.xml b/spring-webflow-samples/booking-mvc/pom.xml
index 522bd9b9..2a63856d 100644
--- a/spring-webflow-samples/booking-mvc/pom.xml
+++ b/spring-webflow-samples/booking-mvc/pom.xml
@@ -129,13 +129,18 @@
org.springframework.security
- org.springframework.security
- 2.0.4.A
+ org.springframework.security.core
+ 3.0.2.RELEASE
+
+
+ org.springframework.security
+ org.springframework.security.config
+ 3.0.2.RELEASE
org.springframework.security
org.springframework.security.taglibs
- 2.0.4.A
+ 3.0.2.RELEASE
org.springframework.webflow
diff --git a/spring-webflow-samples/booking-mvc/src/main/webapp/WEB-INF/config/security-config.xml b/spring-webflow-samples/booking-mvc/src/main/webapp/WEB-INF/config/security-config.xml
index e6b8c4f0..b362bba5 100644
--- a/spring-webflow-samples/booking-mvc/src/main/webapp/WEB-INF/config/security-config.xml
+++ b/spring-webflow-samples/booking-mvc/src/main/webapp/WEB-INF/config/security-config.xml
@@ -6,11 +6,12 @@
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/security
- http://www.springframework.org/schema/security/spring-security-2.0.xsd">
+ http://www.springframework.org/schema/security/spring-security-3.0.xsd">
-
+
@@ -23,14 +24,16 @@
jeremy/atlanta
scott/rochester
-->
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/spring-webflow/.classpath b/spring-webflow/.classpath
index 452a171d..75ba73a4 100644
--- a/spring-webflow/.classpath
+++ b/spring-webflow/.classpath
@@ -45,6 +45,6 @@
-
+
diff --git a/spring-webflow/ivy.xml b/spring-webflow/ivy.xml
index 46ca2a32..12a959fa 100644
--- a/spring-webflow/ivy.xml
+++ b/spring-webflow/ivy.xml
@@ -38,7 +38,7 @@
-
+
diff --git a/spring-webflow/pom.xml b/spring-webflow/pom.xml
index e8dc7119..4c8954df 100644
--- a/spring-webflow/pom.xml
+++ b/spring-webflow/pom.xml
@@ -116,7 +116,7 @@
org.springframework.security
spring-security-core
- 2.0.4
+ 3.0.2.RELEASE
true
diff --git a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java
index 536b8569..9bc220fa 100644
--- a/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java
+++ b/spring-webflow/src/main/java/org/springframework/webflow/security/SecurityFlowExecutionListener.java
@@ -16,18 +16,18 @@
package org.springframework.webflow.security;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
-import org.springframework.security.AccessDecisionManager;
-import org.springframework.security.Authentication;
-import org.springframework.security.ConfigAttributeDefinition;
-import org.springframework.security.SecurityConfig;
-import org.springframework.security.context.SecurityContextHolder;
-import org.springframework.security.vote.AbstractAccessDecisionManager;
-import org.springframework.security.vote.AffirmativeBased;
-import org.springframework.security.vote.RoleVoter;
-import org.springframework.security.vote.UnanimousBased;
+import org.springframework.security.access.AccessDecisionManager;
+import org.springframework.security.access.SecurityConfig;
+import org.springframework.security.access.vote.AbstractAccessDecisionManager;
+import org.springframework.security.access.vote.AffirmativeBased;
+import org.springframework.security.access.vote.RoleVoter;
+import org.springframework.security.access.vote.UnanimousBased;
+import org.springframework.security.core.Authentication;
+import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.webflow.definition.FlowDefinition;
import org.springframework.webflow.definition.StateDefinition;
import org.springframework.webflow.definition.TransitionDefinition;
@@ -90,9 +90,9 @@ public class SecurityFlowExecutionListener extends FlowExecutionListenerAdapter
*/
protected void decide(SecurityRule rule, Object object) {
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
- ConfigAttributeDefinition config = new ConfigAttributeDefinition(getConfigAttributes(rule));
+ Collection configAttributes = getConfigAttributes(rule);
if (accessDecisionManager != null) {
- accessDecisionManager.decide(authentication, object, config);
+ accessDecisionManager.decide(authentication, object, configAttributes);
} else {
AbstractAccessDecisionManager abstractAccessDecisionManager;
List voters = new ArrayList();
@@ -105,7 +105,7 @@ public class SecurityFlowExecutionListener extends FlowExecutionListenerAdapter
throw new IllegalStateException("Unknown SecurityRule match type: " + rule.getComparisonType());
}
abstractAccessDecisionManager.setDecisionVoters(voters);
- abstractAccessDecisionManager.decide(authentication, object, config);
+ abstractAccessDecisionManager.decide(authentication, object, configAttributes);
}
}
@@ -114,7 +114,7 @@ public class SecurityFlowExecutionListener extends FlowExecutionListenerAdapter
* @param rule the rule to convert
* @return list of ConfigAttributes for Spring Security
*/
- protected List getConfigAttributes(SecurityRule rule) {
+ protected Collection getConfigAttributes(SecurityRule rule) {
List configAttributes = new ArrayList();
Iterator attributeIt = rule.getAttributes().iterator();
while (attributeIt.hasNext()) {
diff --git a/spring-webflow/src/test/java/org/springframework/webflow/security/SecurityFlowExecutionListenerTests.java b/spring-webflow/src/test/java/org/springframework/webflow/security/SecurityFlowExecutionListenerTests.java
index 77b1d514..1a41df97 100644
--- a/spring-webflow/src/test/java/org/springframework/webflow/security/SecurityFlowExecutionListenerTests.java
+++ b/spring-webflow/src/test/java/org/springframework/webflow/security/SecurityFlowExecutionListenerTests.java
@@ -5,14 +5,14 @@ import java.util.HashSet;
import junit.framework.TestCase;
-import org.springframework.security.AccessDeniedException;
-import org.springframework.security.Authentication;
-import org.springframework.security.GrantedAuthority;
-import org.springframework.security.GrantedAuthorityImpl;
-import org.springframework.security.context.SecurityContext;
-import org.springframework.security.context.SecurityContextHolder;
-import org.springframework.security.context.SecurityContextImpl;
-import org.springframework.security.providers.UsernamePasswordAuthenticationToken;
+import org.springframework.security.access.AccessDeniedException;
+import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
+import org.springframework.security.core.Authentication;
+import org.springframework.security.core.GrantedAuthority;
+import org.springframework.security.core.authority.GrantedAuthorityImpl;
+import org.springframework.security.core.context.SecurityContext;
+import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.core.context.SecurityContextImpl;
import org.springframework.webflow.core.collection.LocalAttributeMap;
import org.springframework.webflow.definition.FlowDefinition;
import org.springframework.webflow.engine.Flow;
diff --git a/spring-webflow/template.mf b/spring-webflow/template.mf
index af656e4f..47032375 100644
--- a/spring-webflow/template.mf
+++ b/spring-webflow/template.mf
@@ -9,7 +9,7 @@ Import-Template:
org.springframework.orm.*;version="[3.0.2.RELEASE, 3.1.0)";resolution:=optional,
org.springframework.transaction.*;version="[3.0.2.RELEASE, 3.1.0)";resolution:=optional,
org.springframework.web.portlet.*;version="[3.0.2.RELEASE, 3.1.0)";resolution:=optional,
- org.springframework.security.*;version="[2.0.0, 3.0.0)";resolution:=optional,
+ org.springframework.security.*;version="[3.0.0, 4.0.0)";resolution:=optional,
org.apache.commons.logging;version="[1.1.1, 2.0.0)",
javax.servlet;version="[2.4.0, 3.0.0)",
javax.servlet.http;version="[2.4.0, 3.0.0)",