Win a copy of Testing JavaScript Applications this week in the HTML Pages with CSS and JavaScript forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

File download servlet

 
Ranch Hand
Posts: 115
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi All,
Im trying to create a simple download servlet and try to retrieve from a html link. Upon clicking the link I only get a black DownloadServlet.do page opened.
Im trying to download the erp.pdf file which is placed direcly under the root directory.

Here's my servlet code:





web.xml description is as follows

the url link is :


Thanks in advance for you help.

[ September 28, 2008: Message edited by: Bear Bibeault ]

[ September 28, 2008: Message edited by: C Vivek ]
[ September 28, 2008: Message edited by: Bear Bibeault ]
 
Ranch Hand
Posts: 266
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think the problem is here:


The path should not have a forward slash, else it will be treated as absolute path and not relative. It should be:
 
C Vivek
Ranch Hand
Posts: 115
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks, but i still have a problem I hope you can help.
The following code shows me a blank page "http://.../DownloadFile.do?filename=erp"; if I use IE but works file with Firefox or Google Chrome.

The problem is that the users of the Intranet site im makinf use IE only.

I have ensured though that the file path is right( It gives a NullPointerException otherwise)

Would be grateful for your reply.


link


servlet mapping in web.xml


and the servlet code


[ September 28, 2008: Message edited by: C Vivek ]
 
Rancher
Posts: 43016
76
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think IE tries to get the file type from the URL, and gets confused if there isn't any. (I know, it should use the content type header, but for some reason it doesn't. That's IE for you.) Try to make the URL look like a PDF file URL by appending "&iehack=.pdf" to it. I've seen other software packages do that successfully.
 
C Vivek
Ranch Hand
Posts: 115
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Im guilty of not looking around other threads before posting. Thought before anybody makes an effort to reply, I should inform ranchers that the problem is resolved.
I just had to add content-dispostition in the reponse header.(which I found in one of the previous posts)

Thank you Javaranch!
 
C Vivek
Ranch Hand
Posts: 115
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Ulf!! That worked smoothly too.

I have just used content-disposition in the response header to allow a download in the application.



 
Marshal
Posts: 67425
173
Mac Mac OS X IntelliJ IDE jQuery Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Originally posted by Satish Chilukuri:
It should be:

No. Page-relative paths are usually a big problem in web applications. If they work at all, they are fragile.

Rather, a context-relative path beginning with the / should be used. Please see the JSP FAQ entry on Resource URLs for more information.
 
C Vivek
Ranch Hand
Posts: 115
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Bear!
Changed the code accordingly.
 
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

C Vivek wrote:Thanks Bear!
Changed the code accordingly.



Hi,
I have different problem after using the "content-disposition: attachement" header.
The problem is after clicking the open button in the dialogue box, the adobe reader reports 'This file cannot be opened' error.
The browser I am using is IE6.
I have noticed the behaviour that the pdf file is stored inside the temporary intenet folder and it is getting deleted immediately after clicking on the open button.

I checked in many forums and the advice is to use "Cache-control: public","Cache-control: max-age=60".
But still it is not working for me.
And I hv tried many other combinations
like "Cache-control: private" and "Pragma: cache"
"Content-Type: application/pdf", "'Content-Length: file->size"
"Content-disposition: attachment; filename="'. file->filename"
"Expires: 0', 'Pragma: cache', 'Cache-Control: private"


But still it is not working. The application is running in Wesphere6.1
Please advice me some solution
 
Oh sure, it's a tiny ad, but under the right circumstances, it gets bigger.
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
    Bookmark Topic Watch Topic
  • New Topic