Struts2显示流pdf

Struts2显示流pdf,struts2,Struts2,我想在新的弹出窗口中显示pdf流,但当该流为空时,我想在当前页面(Edition.jsp)中写入一条错误消息 在Edition.jsp页面中: ... 在struts.xml中: 输入流PDF 申请表格/pdf filename=“myFile.pdf” 2048 /WEB-INF/WEB/Edition.jsp javascript,当我单击菜单项edition时 $('.edition').bind('click',函数(偶数,数据){ 打开(“”,'pageEdition','lo

我想在新的弹出窗口中显示pdf流,但当该流为空时,我想在当前页面(Edition.jsp)中写入一条错误消息

在Edition.jsp页面中:


...
在struts.xml中:


输入流PDF
申请表格/pdf
filename=“myFile.pdf”
2048
/WEB-INF/WEB/Edition.jsp
javascript,当我单击菜单项edition时

$('.edition').bind('click',函数(偶数,数据){
打开(“”,'pageEdition','location=no,menubar=no,height=600,width=900');
$('pdf')。提交();
});
当我返回错误时,我不想进入目标页面


是的,我通过Ajax JQuery进行了尝试,但是现在,问题是显示pdf

//单击菜单项edition
$('.edition').bind('click',函数(事件、数据){
$('pdf')。提交();
}); 
$('pdf')。提交(功能(事件){
//阻止表单正常提交
event.preventDefault();
//带有参数的post
var posting=$.post($(this.attr('action'),$('pdf').serialize());
//等待结果
过账。完成(功能(数据、事件){
if(data.substring(0,4)!='%PDF'){
警报(“错误”);
}否则{
//pdf格式可识别,但不显示(流位于url中,但不在内容中)
open('data:application/pdf',+data,'pageEdition','menubar=no,height=600,width=900');
}   
});
使用此解决方案时,流响应(数据参数)未正确显示。流位于url中,但不在内容中。 我尝试:

window.document.write(数据);
但它是html内容。
如何在javascript中显示pdf流?

谢谢

如果您想做任何可以保持在同一页面上的事情,那么您需要通过Ajax来完成。在这种情况下,您需要打开一个新的窗口/选项卡,打开指向
ExportPdf
的链接,并在出现错误时更新您现有的DOM。我不明白。如何显示pdf流?