我有一个生成PDF的动作类。 contentType
设置适当。
public class MyAction extends ActionSupport
{
public String execute() {
...
...
File report = signedPdfExporter.generateReport(xyzData, props);
inputStream = new FileInputStream(report);
contentDisposition = "attachment=\"" + report.getName() + "\"";
contentType = "application/pdf";
return SUCCESS;
}
}
我通过Ajax调用将此action
调用。我不知道将流传输到浏览器的方法。我尝试了几件事,但没有任何效果。
$.ajax({
type: "POST",
url: url,
data: wireIdList,
cache: false,
success: function(response)
{
alert('got response');
window.open(response);
},
error: function (XMLHttpRequest, textStatus, errorThrown)
{
alert('Error occurred while opening fax template'
+ getAjaxErrorString(textStatus, errorThrown));
}
});
上面给出了错误:
您的浏览器发送了该服务器无法理解的请求。
参考方案
您不一定为此需要Ajax。如果您在服务器端代码中将<a>
设置为content-disposition
,则仅attachment
链接就足够了。这样,如果您最关心的是父页面将保持打开状态(为什么您不必要为此选择Ajax?)。此外,没有办法同时处理这个问题。 PDF不是字符数据。它是二进制数据。您不能做类似$(element).load()
的事情。您想为此使用全新的请求。对于该<a href="pdfservlet/filename.pdf">pdf</a>
非常适合。
为了在服务器端代码方面为您提供更多帮助,您需要更多地介绍所使用的语言并发布代码尝试的摘录。
javascript popupwindow之后的行如何工作? - javascript好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…
Javascript-Urls的奇怪字符串比较行为 - javascript最近,在编写我无法理解的javascript时遇到了字符串比较的问题。我从完全相同的网址创建了两个字符串,当我比较它们时返回false,但是在重新分配相同的字符串后,比较返回true。这是我的示例:var str1 = "http://google.com/"; var str2 = "http://google.com/…
Javascript-从当前网址中删除查询字符串 - javascript单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…
Java / Javascript-从客户端获取IP - java我正在使用java playframework2,但似乎无法获得正确的IP地址。每次请求后,它都会不断变化。我的意思是,流量分析网站在标头中实现javascript来分析您的流量,因此使用javascript应该可以吗?如果框架不提供此类功能,是否还有其他方法可以从客户端获取IP?我想建立一个访客计数器,但是它应该只统计唯一身份的访客。也许我不必使用IP地址…
Mongo汇总 - javascript我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …