diff --git a/spring-webflux/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java b/spring-webflux/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java index 58ea4ab7fc..e6d2d56a58 100644 --- a/spring-webflux/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java +++ b/spring-webflux/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java @@ -68,13 +68,13 @@ import org.springframework.web.server.ServerWebExchange; */ public class AppCacheManifestTransformer extends ResourceTransformerSupport { - private static final Collection MANIFEST_SECTION_HEADERS = - Arrays.asList("CACHE MANIFEST", "NETWORK:", "FALLBACK:", "CACHE:"); - private static final String MANIFEST_HEADER = "CACHE MANIFEST"; private static final String CACHE_HEADER = "CACHE:"; + private static final Collection MANIFEST_SECTION_HEADERS = + Arrays.asList(MANIFEST_HEADER, "NETWORK:", "FALLBACK:", CACHE_HEADER); + private static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8; private static final Log logger = LogFactory.getLog(AppCacheManifestTransformer.class); @@ -212,8 +212,9 @@ public class AppCacheManifestTransformer extends ResourceTransformerSupport { private static boolean initCacheSectionFlag(String line, @Nullable LineInfo previousLine) { - if (MANIFEST_SECTION_HEADERS.contains(line.trim())) { - return line.trim().equals(CACHE_HEADER); + String trimmedLine = line.trim(); + if (MANIFEST_SECTION_HEADERS.contains(trimmedLine)) { + return trimmedLine.equals(CACHE_HEADER); } else if (previousLine != null) { return previousLine.isCacheSection(); diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java index 8868b5c54f..fb3bdd0b30 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java @@ -65,13 +65,13 @@ import org.springframework.util.StringUtils; */ public class AppCacheManifestTransformer extends ResourceTransformerSupport { - private static final Collection MANIFEST_SECTION_HEADERS = - Arrays.asList("CACHE MANIFEST", "NETWORK:", "FALLBACK:", "CACHE:"); - private static final String MANIFEST_HEADER = "CACHE MANIFEST"; private static final String CACHE_HEADER = "CACHE:"; + private static final Collection MANIFEST_SECTION_HEADERS = + Arrays.asList(MANIFEST_HEADER, "NETWORK:", "FALLBACK:", CACHE_HEADER); + private static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8; private static final Log logger = LogFactory.getLog(AppCacheManifestTransformer.class); @@ -168,8 +168,9 @@ public class AppCacheManifestTransformer extends ResourceTransformerSupport { } private static boolean initCacheSectionFlag(String line, @Nullable LineInfo previousLine) { - if (MANIFEST_SECTION_HEADERS.contains(line.trim())) { - return line.trim().equals(CACHE_HEADER); + String trimmedLine = line.trim(); + if (MANIFEST_SECTION_HEADERS.contains(trimmedLine)) { + return trimmedLine.equals(CACHE_HEADER); } else if (previousLine != null) { return previousLine.isCacheSection();