Browse Source

SPR-5924 - REOPENED -PathVariable mappings are greedy over hard coded mappings

git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@1532 50f2f4bb-b051-0410-bef5-90022cba6387
pull/1/head
Arjen Poutsma 17 years ago
parent
commit
304cfc0ae5
  1. 2
      org.springframework.core/src/main/java/org/springframework/util/AntPathMatcher.java
  2. 1
      org.springframework.core/src/test/java/org/springframework/util/AntPathMatcherTests.java

2
org.springframework.core/src/main/java/org/springframework/util/AntPathMatcher.java

@ -405,7 +405,7 @@ public class AntPathMatcher implements PathMatcher { @@ -405,7 +405,7 @@ public class AntPathMatcher implements PathMatcher {
return 1;
}
int bracketCount1 = StringUtils.countOccurrencesOf(pattern1, "{");
int bracketCount2 = StringUtils.countOccurrencesOf(pattern1, "{");
int bracketCount2 = StringUtils.countOccurrencesOf(pattern2, "{");
if (bracketCount1 < bracketCount2) {
return -1;
}

1
org.springframework.core/src/test/java/org/springframework/util/AntPathMatcherTests.java

@ -387,6 +387,7 @@ public class AntPathMatcherTests { @@ -387,6 +387,7 @@ public class AntPathMatcherTests {
assertEquals(-1, comparator.compare("/hotels/new", "/hotels/{hotel}"));
assertEquals(1, comparator.compare("/hotels/{hotel}", "/hotels/new"));
assertEquals(0, comparator.compare("/hotels/{hotel}", "/hotels/{hotel}"));
assertEquals(-1, comparator.compare("/hotels/{hotel}/booking", "/hotels/{hotel}/bookings/{booking}"));
assertEquals(-1, comparator.compare("/hotels/{hotel}", "/hotels/*"));
assertEquals(1, comparator.compare("/hotels/*", "/hotels/{hotel}"));

Loading…
Cancel
Save