Author: jbq
Date: Wed Feb 28 09:32:42 2007
New Revision: 512861
URL: http://svn.apache.org/viewvc?view=rev&rev=512861
Log:
WICKET-327 Download link does not set Content-Type and Content-Length headers
headers must be written before the body
Modified:
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/markup/html/link/DownloadLink.java
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/protocol/http/request/WebExternalResourceRequestTarget.java
Modified:
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/markup/html/link/DownloadLink.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/markup/html/link/DownloadLink.java?view=diff&rev=512861&r1=512860&r2=512861
==============================================================================
---
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/markup/html/link/DownloadLink.java
(original)
+++
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/markup/html/link/DownloadLink.java
Wed Feb 28 09:32:42 2007
@@ -115,9 +115,11 @@
try
{
- r.write(new FileInputStream(file));
+ // NOTE headers must be written before
the body
r.setContentLength(file.length());
+ // Set content type
r.detectContentType(requestCycle,
fileName);
+ r.write(new FileInputStream(file));
}
catch (Exception e)
{
Modified:
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/protocol/http/request/WebExternalResourceRequestTarget.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/protocol/http/request/WebExternalResourceRequestTarget.java?view=diff&rev=512861&r1=512860&r2=512861
==============================================================================
---
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/protocol/http/request/WebExternalResourceRequestTarget.java
(original)
+++
incubator/wicket/branches/wicket-1.x/wicket/src/main/java/wicket/protocol/http/request/WebExternalResourceRequestTarget.java
Wed Feb 28 09:32:42 2007
@@ -83,10 +83,11 @@
final InputStream in = context.getResourceAsStream(url);
if (in != null)
{
- webResponse.write(in);
+ // NOTE headers must be written before the body
// Set content type
webResponse.detectContentType(requestCycle,
url);
// FIXME do we need to call
webResponse.setContentLength()?
+ webResponse.write(in);
}
else
{