【发布时间】:2010-10-05 15:15:07
【问题描述】:
我似乎无法解决这个问题。
最初,JSP 代码在 Javascript 中有一个函数,可以从另一台服务器调用 jsp:
window.open("<%= otherServer %>/ourreports/Company/fooreport.jsp?index"+index,"Foo",options);
otherServer 是本地服务器 (http://192.168.4.40:8080)
这很好用,并且会弹出一个带有 fooreport.jsp 的新窗口。
现在的任务是指向同一个服务器中的一个jsp。 所以,我把它改成了
window.open("/reports/Company/fooreport.jsp?index"+index,"Foo", options);
我会得到一个下载文件弹出窗口而不是页面
我还尝试了以下所有操作:
window.location = "/reports/Company/fooreport.jsp?index="+index;
window.location.href = "/reports/Company/fooreport.jsp?index="+index;
window.location = "http://localhost:9080/reports/Company/fooreport.jsp?index="+index;
window.location.href = "http://localhost:9080/reports/Company/fooreport.jsp?index="+index;
我仍然会弹出将 fooreport.jsp 下载到我的计算机的弹出窗口。
jsp 格式正确,有 DOCTYPE、标签、
我使用的是 WebSphere 7.5.4,而 java 是 1.5
【问题讨论】:
-
JSP 尝试下载时的 MIME 类型(或只是
Content-typeHTTP 标头)是什么? -
如果您在浏览器中键入地址,它们是否有效或仍然显示下载?另外,如果您下载文件,它是否会显示呈现的页面?还是带有
<%.. 的源代码? -
fooreport.jsp?index"+index'是错字吗?您应该在查询字符串键和值之间有一个=。如fooreport.jsp?index="+index' -
@Robusto,这是一个错字,谢谢。 @Gaby,我从未下载过它,因为我会取消弹出窗口。 @Matt Ball,将检查 Content-Type 并让您知道。此外,同一文件夹中的另一个 jsp 工作正常,所以我知道它是那个特定 jsp 中的一些编码。
-
WebSphere 7.5.4?我认为您的意思是 Rational Application Developer,因为 WAS 的最新版本是 7.0.0.11
标签: java javascript jsp websphere