diff --git a/.travis.yml b/.travis.yml
index 0e0047ab..8465b006 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -4,8 +4,6 @@ jdk:
env:
matrix:
- PROFILE=non-existant
- - PROFILE=spring43-next
- - PROFILE=spring5
- PROFILE=spring5-next
addons:
apt:
diff --git a/pom.xml b/pom.xml
index 360495f1..3711d60a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -88,6 +88,7 @@
spring5-next
5.0.2.BUILD-SNAPSHOT
+ 2.9.2
diff --git a/src/main/java/org/springframework/hateoas/Links.java b/src/main/java/org/springframework/hateoas/Links.java
index 8ba46929..a8afb751 100644
--- a/src/main/java/org/springframework/hateoas/Links.java
+++ b/src/main/java/org/springframework/hateoas/Links.java
@@ -35,7 +35,7 @@ import org.springframework.util.StringUtils;
*/
public class Links implements Iterable {
- private static final Pattern LINK_HEADER_PATTERN = Pattern.compile("(<[^>]*>(;\\w+=\"[^\"]*\")+)");
+ private static final Pattern LINK_HEADER_PATTERN = Pattern.compile("(<[^>]*>(;\\s*\\w+=\"[^\"]*\")+)");
static final Links NO_LINKS = new Links(Collections.emptyList());
diff --git a/src/test/java/org/springframework/hateoas/LinksUnitTest.java b/src/test/java/org/springframework/hateoas/LinksUnitTest.java
index 813a4965..78c30bc2 100755
--- a/src/test/java/org/springframework/hateoas/LinksUnitTest.java
+++ b/src/test/java/org/springframework/hateoas/LinksUnitTest.java
@@ -34,6 +34,7 @@ public class LinksUnitTest {
static final String FIRST = ";rel=\"foo\"";
static final String SECOND = ";rel=\"bar\"";
static final String WITH_COMMA = ";rel=\"foo\"";
+ static final String WITH_WHITESPACE = "; rel=\"foo\"," + SECOND;
static final String LINKS = StringUtils.collectionToCommaDelimitedString(Arrays.asList(FIRST, SECOND));
@@ -93,4 +94,12 @@ public class LinksUnitTest {
assertThat(twoWithCommaInFirst.getLink("foo")).hasValue(withComma);
assertThat(twoWithCommaInFirst.getLink("bar")).hasValue(new Link("/somethingElse", "bar"));
}
+
+ /**
+ * @see https://tools.ietf.org/html/rfc5988#section-5.5
+ */
+ @Test
+ public void parsesLinksWithWhitespace() {
+ assertThat(Links.valueOf(WITH_WHITESPACE)).isEqualTo(reference);
+ }
}