Your first point of using <a href="xxx.pdf" target="_blank">xxx</a> to make it open in 
a new browser is valid..

But the second point i did not get it.

Exactly for those situations where the user is prompted for save dialogue box,I have 
suggested to add the response.addHeader("Content-Disposition", "attachment; filename=" 
+ saveAsFileName );
This makes it to give the proper file name in save as dialogue box.

And it works with netscape as well...Thas what we are using here..

HTH.
regards,
Shirish.

-----Original Message-----
From: hernux [mailto:[EMAIL PROTECTED]
Sent: Wednesday, December 24, 2003 2:33 PM
To: Struts Users Mailing List
Subject: Re: PDF file in browser


You 're forgetting two things...

1- He wants to show a pdf  file in a new browser....
to do that, you must set the apropiate target into de A tag...

<a href="xxx.pdf" target="_blank">xxx</a>

target="_blank" will open the link in a new window.

2- This, will only work if the users uses Internet Explorer...cause it's an
activeX container, unless the
user changed it, by default pdf files and other documents, will be opened
inside explorer...but other
browsers such as netscape, mozilla and opera, are not activeX container, so,
pdf files will prompt the user
to download them, or open directly.

regards,
Hernux

----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, December 24, 2003 7:17 AM
Subject: RE: PDF file in browser


Hi,
Also do not forget to set the header so that the save as dialogue box is
displayed in IE...For that you have to set the content-disposition header ..
following is the  code from our project..


Class  FileOpenAction{

protected final void returnBinaryFile(
HttpServletResponse response,
String filename
String saveAsName)
throws FileNotFoundException, IOException {
response.setContentType(mimeType);
String fileExt = WebUtil.getFileExtensionFromMIMEType("application/pdf");
setSaveAsHeader(response,saveAsName,fileExt);
File file = new File(filename);
response.setContentLength((int) file.length());

FileInputStream in = new FileInputStream(file);
OutputStream out = response.getOutputStream();
byte[] buf = new byte[4096];
int count = 0;

while ((count = in.read(buf)) >= 0) {
out.write(buf, 0, count);
}

in.close();
out.close();
}

public static void setSaveAsHeader(HttpServletResponse response,String
saveAsFileName,String fileExt){
if(saveAsFileName == null){
return;
}
//to get over a problem in browsers due to which the file name must have
proper extension
if((fileExt != null)|| (fileExt.length() !=0)){
int index1 = saveAsFileName.indexOf(fileExt.toUpperCase());
int index2 = saveAsFileName.indexOf(fileExt.toLowerCase());
if((index1 == -1) &&(index2 == -1)){
saveAsFileName = saveAsFileName + "." + fileExt;
}
}
response.addHeader("Content-Disposition", "attachment; filename=" +
saveAsFileName );
}
}

Also another thought..Why use another servlet..Just use another action like
we do..This way you can use all the existing framwroek..Like authorisation
etc....

-----Original Message-----
From: Surachai Locharoen [mailto:[EMAIL PROTECTED]
Sent: Wednesday, December 24, 2003 10:41 PM
To: Struts Users Mailing List
Subject: Re: PDF file in browser


Additionally, In struts framework you have to reset request header before by
call


    request.reset();
    request.setContentType("application/pdf");
    request.setContentLength(byte.length);



----- Original Message -----
From: "Navjot Singh" <[EMAIL PROTECTED]>
To: "Struts Users Mailing List" <[EMAIL PROTECTED]>;
<[EMAIL PROTECTED]>
Sent: Tuesday, December 23, 2003 9:53 PM
Subject: RE: PDF file in browser


> if you can reveal the location of the PDFs on your web server.
> Simply put your pdfs under a www/app.com/pdfs/*.pdf and give them links as
> you want.
>
> if you wish to maintain some security.
> 1. send a request to a servlet wit some pdf code or file name
> 2. open the given file from the file system whereever it is.
> 3. convert it into stream.
> 4. push the stream back to browser.
>
> note - must set the appropraite mime/type before you push the stream back.
> may be application/pdf or application/x-pdf
>
> HTH
> Navjot Singh
>
> >-----Original Message-----
> >From: vasudevrao gupta [mailto:[EMAIL PROTECTED]
> >Sent: Wednesday, December 24, 2003 10:50 AM
> >To: 'Struts Users Mailing List'
> >Subject: PDF file in browser
> >
> >
> >
> >
> >Hi All,
> >
> > I am using Struts frame work for our application with Web sphere
> >app server.
> >We have a some PDF files on the app server .When the user clicks on a
> >particular link on
> >the JSP page, we have show a pdf  file to the user in a new browser
> >window.
> >Can any one pls tell me the easier procedure to do this??
> >
> >Regards
> >VasudevRaoGupta
> >
> >
> >Confidentiality Notice
> >
> >The information contained in this electronic message and any
> >attachments to this message are intended
> >for the exclusive use of the addressee(s) and may contain
> >confidential or privileged information. If
> >you are not the intended recipient, please notify the sender at
> >Wipro or [EMAIL PROTECTED] immediately
> >and destroy all copies of this message and any attachments.
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to