0

我在让我的 pdf 文件显示在我的 jsp 页面中时遇到了一些问题。我将 pdf 保存在我的 tomcat 服务器上,文件位置如下 c:/tomcat 6.0/webapps/appname/reports/saved/filename.pdf 我正在尝试打开该文件(最好不使用 c: 位置)并显示它在我的 jsp 文件中的 iframe 中使用以下标记...

<iframe src="../appname/reports/saved/filename.pdf"></iframe>

我以后会担心大小:)

但我得到请求的资源不可用。

我很确定这是我没有看到的愚蠢的东西,我非常感谢我能得到的任何帮助。

谢谢,

阴影

4

4 回答 4

1

请求的资源不可用

这基本上意味着 URL 错误或资源实际上不存在。

要排除第一个,请先使用绝对URL 对其进行测试,从而包括协议和域名,例如http://example.com/file.pdf. 如果它有效,那么相对 URL 可能是错误的。任何相对 iframe URL 实际上都是相对于父页面的 URL。如果您知道磁盘文件系统路径是如何组合在一起的,那么确定正确的相对 URL 应该是显而易见的。

要排除第二个,请检查本地磁盘文件系统。如果它不存在,那么你知道的就足够了。但如果它在那里,那么该文件可能是新写入磁盘并且尚未关闭的文件。如果您使用 Java IO 将此文件写入磁盘,那么您需要确保关闭OutputStream。使用以下成语:

OutputStream output = null;
try {
    output = new FileOutputStream(new File("c:/path/to/file.pdf"));
    // write ..
} finally {
    if (output != null) try { output.close(); } catch (IOException logOrIgnore) {}
}

另请参阅Sun Java IO 教程

于 2009-12-16T14:29:20.547 回答
0

我不使用Tomcat,但最有可能的是相对路径不正确。

于 2009-12-16T14:29:35.973 回答
0

我不知道Tomcat,但你搞砸了路径。如果 PDF 位于c:\tomcat 6.0\webapps\appname\index.html中,则使用 ./reports/saved/filename.pdf。.

于 2009-12-16T14:30:45.677 回答
0

好吧,你说得有些对,但真正的答案是…… URL 文件夹区分大小写……我限制了文件夹名称并找到了资源!

谢谢您的帮助!

于 2009-12-16T15:26:08.963 回答