Polish ResourceUrlEncodingFilter

master
Rossen Stoyanchev 10 years ago
parent 97441d054d
commit f353a28ff4
  1. 21
      spring-webmvc/src/main/java/org/springframework/web/servlet/resource/ResourceUrlEncodingFilter.java

@ -65,19 +65,20 @@ public class ResourceUrlEncodingFilter extends OncePerRequestFilter {
@Override @Override
public String encodeURL(String url) { public String encodeURL(String url) {
String name = ResourceUrlProviderExposingInterceptor.RESOURCE_URL_PROVIDER_ATTR; ResourceUrlProvider resourceUrlProvider = getResourceUrlProvider();
ResourceUrlProvider urlProvider = (ResourceUrlProvider) this.request.getAttribute(name); if (resourceUrlProvider == null) {
if (urlProvider != null) { logger.debug("Request attribute exposing ResourceUrlProvider not found.");
String translatedUrl = urlProvider.getForRequestUrl(this.request, url); return super.encodeURL(url);
if (translatedUrl != null) {
return super.encodeURL(translatedUrl);
}
} }
else { String resolvedUrl = resourceUrlProvider.getForRequestUrl(this.request, url);
logger.debug("Request attribute exposing ResourceUrlProvider not found under name: " + name); return (resolvedUrl != null ? super.encodeURL(resolvedUrl) : super.encodeURL(url));
} }
return super.encodeURL(url);
private ResourceUrlProvider getResourceUrlProvider() {
String name = ResourceUrlProviderExposingInterceptor.RESOURCE_URL_PROVIDER_ATTR;
return (ResourceUrlProvider) this.request.getAttribute(name);
} }
} }
} }

Loading…
Cancel
Save