diff --git a/play-ahc-ws-standalone/src/main/java/play/libs/ws/ahc/StreamedResponse.java b/play-ahc-ws-standalone/src/main/java/play/libs/ws/ahc/StreamedResponse.java index d7120c5b..c2d43951 100644 --- a/play-ahc-ws-standalone/src/main/java/play/libs/ws/ahc/StreamedResponse.java +++ b/play-ahc-ws-standalone/src/main/java/play/libs/ws/ahc/StreamedResponse.java @@ -17,9 +17,11 @@ import scala.jdk.javaapi.StreamConverters; import java.net.URI; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; +import java.util.TreeMap; import java.util.function.Predicate; import static java.util.stream.Collectors.toMap; @@ -121,7 +123,16 @@ public URI getUri() { } private static java.util.Map> asJava(scala.collection.Map> scalaMap) { - return StreamConverters.asJavaSeqStream(scalaMap).collect(toMap(f -> f._1(), f -> CollectionConverters.asJava(f._2()))); + return StreamConverters.asJavaSeqStream(scalaMap).collect(toMap(f -> f._1(), f -> CollectionConverters.asJava(f._2()), + (l, r) -> { + final List merged = new ArrayList<>(l.size() + r.size()); + merged.addAll(l); + merged.addAll(r); + return merged; + }, + () -> new TreeMap<>(String.CASE_INSENSITIVE_ORDER) + ) + ); } }