Browse Source

changed contentLength() from int to long

3.0.x
Juergen Hoeller 16 years ago
parent
commit
771db05608
  1. 2
      org.springframework.core/src/main/java/org/springframework/core/io/AbstractFileResolvingResource.java
  2. 4
      org.springframework.core/src/main/java/org/springframework/core/io/AbstractResource.java
  3. 2
      org.springframework.core/src/main/java/org/springframework/core/io/Resource.java
  4. 6
      org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/resource/ResourceHttpRequestHandler.java

2
org.springframework.core/src/main/java/org/springframework/core/io/AbstractFileResolvingResource.java

@ -129,7 +129,7 @@ public abstract class AbstractFileResolvingResource extends AbstractResource { @@ -129,7 +129,7 @@ public abstract class AbstractFileResolvingResource extends AbstractResource {
}
@Override
public int contentLength() throws IOException {
public long contentLength() throws IOException {
URL url = getURL();
if (ResourceUtils.isFileURL(url)) {
// Proceed with file system resolution...

4
org.springframework.core/src/main/java/org/springframework/core/io/AbstractResource.java

@ -112,8 +112,8 @@ public abstract class AbstractResource implements Resource { @@ -112,8 +112,8 @@ public abstract class AbstractResource implements Resource {
* if available.
* @see #getFile()
*/
public int contentLength() throws IOException {
return (int) getFile().length();
public long contentLength() throws IOException {
return getFile().length();
}
/**

2
org.springframework.core/src/main/java/org/springframework/core/io/Resource.java

@ -96,7 +96,7 @@ public interface Resource extends InputStreamSource { @@ -96,7 +96,7 @@ public interface Resource extends InputStreamSource {
* @throws IOException if the resource cannot be resolved
* (in the file system or as some other known physical resource type)
*/
int contentLength() throws IOException;
long contentLength() throws IOException;
/**
* Determine the last-modified timestamp for this resource.

6
org.springframework.web.servlet/src/main/java/org/springframework/web/servlet/resource/ResourceHttpRequestHandler.java

@ -148,7 +148,11 @@ public class ResourceHttpRequestHandler extends WebContentGenerator implements H @@ -148,7 +148,11 @@ public class ResourceHttpRequestHandler extends WebContentGenerator implements H
if (mediaType != null) {
response.setContentType(mediaType.toString());
}
response.setContentLength(resource.contentLength());
long length = resource.contentLength();
if (length > Integer.MAX_VALUE) {
throw new IOException("Resource content too long (beyond Integer.MAX_VALUE): " + resource);
}
response.setContentLength((int) length);
FileCopyUtils.copy(resource.getInputStream(), response.getOutputStream());
}

Loading…
Cancel
Save