The issues is every few attempts the page loads up with a blank view. On some investigation I realized that IE is placing a call to server but is not downloading all the bytes of the PDF. A sysout in the servlet confirmed that entire byte array content had been passed as response.
Does anybody have an hint on how to solve this issue?
Some versions of Internet Explorer will not automatically show the PDF or call the servlet multiple times. These are well-known limitations of Internet Explorer and are not a problem of the servlet. However, Internet Explorer can still be used to download the PDF so that it can be viewed later. Here are some suggestions in this context:
* Use an URL ending in .pdf, like http://myserver/servlet/stuff.pdf. Yes, the servlet can be configured to handle this. If the URL has to contain parameters, try to have both the base URL as well as the last parameter end in .pdf, if necessary append a dummy parameter, like http://myserver/servlet/stuff.pdf?par1=a&par2=b&d=.pdf. The effect may depend on IEx version. * Give IEx the opportunity to cache. In particular, ensure the server does not set any headers causing IEx not to cache the content. This may be a real problem if the document is sent over HTTPS, because most IEx installations will by default not cache any content retrieved over HTTPS. Setting the Expires header entry may help in this case: response.setDateHeader("Expires", System.currentTimeMillis() + cacheExpiringDuration * 1000); Consult your server manual and the relevant RFCs for further details on HTTP headers and caching. * Cache in the server. It may help to include a parameter in the URL which has a timestamp as the value min order to decide whether a request is repeated. IEx is reported to retrieve a document up to three times, but never more often.
Vikas, We are successful in rendering pdf into browser for quite sometime. Had a problem with IE5 which sends multiple requests. But with IE6 with SP2, it is been solved. This is the code we use to render pdf content into browser. Working fine with Firefox too.
* data is the content of PDF file
Thanks <br />Kavitha G <br />SCJP
Joined: Jun 19, 2006
The issues persists in spite of attempting all combinations of response header. Our team also made an interesting observation, when ever the blank page is displayed without the PDF the response header also contains a line like
Set-Cookie: SMSESSION=<some really long value>
Additionally, we are using a model dialog box to display the PDF.
This issue is not observed on all machines though the machines we have are of similar configurations i.e. Win2K/Adobe 6(Reader/Professional)/IE 6 SP1
Joined: Jun 19, 2006
We managed to finally figure out the issue.
Its a known issue with Adobe 6.0. We had to download a patch for Adobe 6.0 to get it working.