This week's book giveaway is in the Agile and other Processes forum.
We're giving away four copies of The Mikado Method and have Ola Ellnestam and Daniel Brolund on-line!
See this thread for details.
The moose likes Servlets and the fly likes error in downloading file Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


Win a copy of The Mikado Method this week in the Agile and other Processes forum!
JavaRanch » Java Forums » Java » Servlets
Reply Bookmark "error in downloading file" Watch "error in downloading file" New topic
Author

error in downloading file

sameera liyanage
Ranch Hand

Joined: Nov 25, 2008
Posts: 643
here is a code for downloading jar file


here is the web.xml file


first i compile the ShowHeadersServlet class and put it to the
C:\Tomcat\apache-tomcat-6.0.18\webapps\hellow\WEB-INF\classes.
then i start the tomcat server.
then go to browser and type this.

http://localhost:8080/hellow/A
it downloading some file named A. But it is not a file which i need.
Actually downloaded file name is equal to the last name of the URl which i typed in browser.
i need to download the bootstrap.jar file.
Also I put this jar to the bin director in tomcat.
What is wrong with this code ?
Ankit Garg
Saloon Keeper

Joined: Aug 03, 2008
Posts: 9189
    
    2

Use the Content-Disposition header...


SCJP 6 | SCWCD 5 | Javaranch SCJP FAQ | SCWCD Links
sameera liyanage
Ranch Hand

Joined: Nov 25, 2008
Posts: 643
no, i don't need a hiperlink in the broser.
I need to download the file when i put the relavant URl in browser.
The problem is that it download the file which is not expected and the name of the file is last name of URL.

if the URL type is http://localhost:8080/hellow/HelloWorldServlet
downloaded file name is HelloWorldServlet

if the URL type is http://localhost:8080/hellow/A
downloaded file name is A(I change the web.xml also to a when i chang the URL)

I check the size of the downloaded file with my expected bootstrap.jar.
bootstrap.jar size is 17.1 KB
downloaded file size is 70.4 KB.
Ankit Garg
Saloon Keeper

Joined: Aug 03, 2008
Posts: 9189
    
    2

First of all I didn't say that you need a hyperlink. You need to set the content-disposition header in the servlet whose code you just showed. Also where is your jar file actually located?? You are using only the jar name in the File class constructor. You should try to use the inbuilt mechanism in servlets like getResourceAsStream to read files from web application's directory. Read this thread or a tutorial like this for more info...
sameera liyanage
Ranch Hand

Joined: Nov 25, 2008
Posts: 643
i put that jar file to the tomcat/bin folder.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 35243
    
    7
In a web app, relative paths (like "bootstrap.jar") don't work, because there is no notion of a default directory. You need to use an absolute path - the "ServletContext.getRealPath" method will be helpful for that.


Android appsImageJ pluginsJava web charts
 
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to run our stuff on 16 servers instead of 3.
 
subject: error in downloading file
 
Similar Threads
Stuck on HelloWorldServlet
different behavior occurs, why?
he doesn't ask for authenticate
problem with this cookie program, getting a blank output
web.xml change not working