jsp有关在ie中打开pdf文件的问题
背景:
在基于BS模式的项目中,我们一般对于报表、需要打印的数据,都是直接在ie中以pdf中显示出来的,这是因为ie调用了pdf插件,这样才可以正确显示。比如:页面提供一个按钮,打印当前页面数据,点击后,即会在ie中调用pdf插件,以Pdf格式显示这些数据,然后执行打印。
问题产生:
在一个项目中打印报表时,出现打印部分数据,数据在ie中以pdf形式显示没有问题,如果打印全部,就出现无法显示数据,jsp页面报500的错误
说明:Jsp中显示pdf数据,一般就是在一个单独页面设置 response.setContentType("application/pdf");然后把要显示的数据以字节流的形式,输出。
分析:
经过多次试验,对比,排除程序等其他可能的原因,最后发现 当操作系统安装的是一些其他的pdf软件时,在ie下存在一个问题,即如果要显示的数据为两页以上,那么就会出现在ie中无法以Pdf格式显示数据,打开的ie会显示无法打开该页面即500错误;但是如果显示的数据在一页以内,即可以在ie中以pdf的格式显示数据。说明:这个错误是本人在ie下测试过的,这里前提是没有安装adobe 的pdf软件,而是安装其他的pdf软件,如:在ie下,安装了adobe pdf也不会出现这个问题,不过如果显示两页以上数据,不会显示在ie中了,而是重新以pdf软件打开,显示数据;如果只显示一页数据,数据会在ie中以pdf形式显示数据,完全正常。
经过分析,本人怀疑,可能是下面的原因:
在jsp中为了显示pdf数据,设置了jsp的头格式为: response.setContentType("application/pdf");这样就会调用和ie关联的pdf软件,显示数据,如果数据可以在一页内显示,那么当前的Jsp就可以正常显示了,但是如果数据超过了一页,那么jsp页面没办法,显示那么多的数据,就比如要单独调用pdf软件,打开数据。如果可以正常调用pdf软件,如adobe,那么就会以adobe pdf软件的形式打开数据,如果调用pdf软件失败,那么就会在jsp页面出现无法显示数据的问题。
解决办法:
这是一个普遍性的问题,如果安装了adobe 的pdf软件,那么不会出现这样的问题。所以建议安装adobe的pdf软件,以从根本上解决这个问题。
jsp有关在ie中打开pdf文件的问题相关推荐
- linux中打开pdf文件_在Linux中减少PDF文件大小
linux中打开pdf文件 In our Linux system, If we have a large PDF file, we may want to reduce it's size. We ...
- web中打开PDF文件
首先引用js 文件 1. <script type="text/javascript" src="JS/pdfobject.min.js">< ...
- html 在线打开pdf文件怎么打开,在HTML中打开pdf文件怎么打开
回答: PDF是Portable Document Format的简称,意为"便携式文档格式",是由Adobe Systems用于与应用程序.操作系统.硬件无关的方式进行文件交换所 ...
- vscode中打开pdf文件_VSCode中LaTeX和SumatraPDF双向搜索
使用 SumatraPDF 预览编译好的PDF文件,添加以下代码进入设置区.注意设置中的路径,要选为自己对应的文件路径. "latex-workshop.view.pdf.viewer&qu ...
- 在网页中打开pdf文件
如果客户端有安装了Adobe reader的话,可以在网页中打开查看pdf文件,代码如下: <object classid="clsid:CA8A9780-280D-11CF-A24D ...
- 如何在程序中打开PDF文件 -C#文章(.net)
程序的用户手册是个PDF文件,点击菜单后如何打开这个文件? 答案一 System.Diagnostics.Process.Start("you.pdf"); 答案二 用Proces ...
- vscode中打开pdf文件_提取pdf文件中的文字
环境说明 windows10系统 python3.6版本 安装 网上很多说需要安装pdfminer3k和pdfminer3k.six,我尝试了先安装pdfminer3k后安装pdfminer3k.si ...
- evince-Centos中打开pdf文件
evince 是一个支持多种格式的文件浏览器,如的PostScript , PDF格式,单页和多页TIFF , DVI接口, DjVu ,等等.它具有网页的缩略图,通过Gnome或基于GTK +印 ...
- ASP 在网页中 打开PDF文件
发送URL: if (File.Exists(p_strUrl)) { //Server.UrlEncode(path) this.Page. ...
最新文章
- R语言nchar函数统计字符串中字符个数实战
- 通过JDBC进行简单的增删改查(二)
- continue和break语句的区别
- module是什么类型_nodejs中module.exports和exports的区别
- .net core实践系列之SSO-同域实现
- 【HDU - 5706】GirlCat(bfs)
- python预测股票价格tushare_用tushare对股票进行简单分析
- Flutter社区和资源传送门
- 立即释放.net下的com组件
- 手机CPU处理器大解析
- 企业级大数据架构设计及规划方案.ppt
- FFMPEG :resource temporarily unavailable
- 在APPLE从创建ID到申请发布AppStore账户(一)Apple ID注册自动登录
- UE4 InputMode无法锁定编辑器视口鼠标解决方案
- YOLO自带的图像数据增强方法
- Enscape 设置预设功能能够在保存的设置之间切换
- HTML5 Web Audio Api-2 发声oscillator
- Python Re正则表达式
- 生活娱乐 怎么治疗冻疮 有特效
- s7-200软件怎么测试,S7 200 测速程序是否正确请高手指导
热门文章
- Android 进程 缓存服务,Android获取应用程序大小和缓存的实例代码
- ElasticSearch RestHighLevelClient 教程(一)通用操作
- 金蝶云星空与巨益OMS对接集成收款单查询连通分销商余额调价(ERP收款单对接OMS分销商余额增加)
- 《大数据技术原理与应用》(第七章 MapReduce 课后答案)
- endnote咋手动输入文献_EndNote导入Word手动输入参考文献的方法图解教程
- 本人硕士期间科研与生活总结
- 台湾站卖什么最好?虾皮shopee爆单指南
- sharepoint2013 在office365 使用infopath 创建单击事件和视图,并建立切换规则
- Delphi 中自定义鼠标指针图像
- 工业机器人动力学控制器设计概述