2011-06-07 116 views
2

如何从JSP打开PDF文档?我有很多链接到PDF文件。在Eclipse中,当我点击链接时,PDF将在PDF阅读器中打开。但在像Firefox和Chrome浏览器中,没有任何反应。如何从JSP打开pdf文档

我生成的链接,PDF文件作为F:\....\...pdf方式如下:

<% 
    while (iter.hasNext()) { 
     element = iter.next(); 
     bookName = getBookName(element); 

%> 
     <ul> 
      <li><a href="<%=element %>"><%=bookName %></a> 
     </ul> 
<% 
    } 
%> 

这个问题是怎么造成的,我该如何解决呢?

回答

7

链接必须指向一个URL,而不是指向本地磁盘文件系统路径或其他东西。由于安全限制,普通网页浏览器不会吞咽此内容。即使如此,当浏览器运行在与web服务器完全不同的机器上时,它在生产环境中将无法工作,因此根本无法访问磁盘。

所以,你应该使用

<a href="F:\....\...pdf">link</a> 

,但你应该宁愿使用

<a href="http://example.com/filename.pdf">link</a> 

或当它例如在当前JSP文件相同的文件夹

<a href="filename.pdf">link</a> 

如果你不能把PDF文件放到你自己的web项目中,那么你需要寻找不同的解决方案。

  • 将外部文件夹添加为servlet容器的另一个上下文。
  • 将外部文件夹移动到servletcontainer的deploy文件夹中。
  • 创建一个从磁盘读取它并将其写入响应的servlet。

您可以通过以下问题的答案找到详细的上述解决方案:

+0

thaaaaank是一个looot – Dilllllo 2011-06-07 21:27:49