jsp有关在ie中打开pdf文件的问题

jsp实现网页打印(pdf方法) 将网页中数据表以pdf方式打印,网上发布的相关解决方法都属于互相copy,且不完善,有很多漏洞。当初我在做的时候为此非常头疼,最后查看了很多资料,将次功能最终实现,为方便大众,将个人的例子上传,以供需要的朋友参考,有不完善的地方,或有更好的实现办法,可以相互交流一下QQ:1540938804 立即下载

背景:

      在基于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软件,以从根本上解决这个问题。    

pdf文件在线预览 pdf文件在线预览插件,将文件复制到web目录,直接在jsp中用 立即下载

相关推荐

JSP文件在线预览

JSP文件在线预览

用JSP在IE中打开本地的.doc/.xls/.pdf并浏览

为了让能在IE浏览器中自动打开的设置:需要在WEB.XML中进行如下的设置:在WEB.XML中添加,其中:     :   文件的扩展名     :   除了该类型文件的可执行文件,同WINDOW注册表中的     /HKEY_CLASSES_ROOT下该类文件的Content   Type   的值一样.     如能在IE中自动打开DOC,XLS,PDF文件的配置如下:        

璀璨星空 3229

jsp在线浏览pdf文件的jar包和插件

javaWeb开发中在浏览器中在线预览pdf文件,该插件直接拷贝至项目中,再写1行代码就可以搞定在线预览pdf文件,非常方便!

JSP页面内嵌PDF文档

最近碰到一个需求,需要把PDF文档通过JSP页面展示给用户。网上相关的资料很多,主要使用Object标签来实现的。 Insert title here <% String docPath = request.getParameter("docPath ")

gavinloo的专栏 1万+

JSP页面显示PDF,根据PDF路径在JSP页面显示PDF

根据PDF的存放路径,将PDF文件显示在JSP页面,可显示多个,也可显示固定的一个 根据具体需求在JSP页面显示一个或者多个PDF

MultiOTP Credential Provider避坑指南:从安装到RDP双因素认证的全流程解析

本文详细解析了MultiOTP Credential Provider从安装到实现RDP双因素认证(MFA)的全流程,重点分享了Docker部署、Active Directory集成及网络级认证(NLA)兼容性等环节的实战避坑经验,旨在帮助运维人员高效、稳定地部署离线双因素认证方案,提升Windows远程桌面安全性。

weixin_29255731的博客 642

在jsp页面上直接打开pdf文档

在jsp页面上直接打开pdf文档

rr987279417的博客 1万+

STM32CubeMX | HAL库实战:ADC多通道采集模式深度解析(轮询、DMA、TIM触发)

本文深度解析了基于STM32CubeMX与HAL库实现ADC多通道数据采集的三种核心模式:轮询、DMA以及TIM触发DMA。文章通过对比分析,详细阐述了各模式的配置要点、适用场景与潜在陷阱,旨在帮助开发者根据实时性、CPU占用及采样精度等需求,选择并实现高效稳定的多通道数据采集方案。

postgres8guard的博客 971

jsp中使用PDF.js实现pdf文件的预览

本文介绍的是在使用jsp作为模板引擎的spring-mvc项目中,如何利用 PDF.js实现pdf文件的预览。

baidu_40120883的博客 5985

强网杯Web题ezphp解题全记录:利用PHP反序列化与条件竞争拿下服务器

本文详细解析了强网杯Web题目ezphp的解题过程,通过PHP反序列化与条件竞争漏洞的组合利用,成功获取服务器权限。文章深入剖析了反序列化链的构造、文件上传绕过技巧以及条件竞争的实际应用,为CTF选手和Web安全研究者提供了宝贵的实战经验。

weixin_29006187的博客 376

MPC模型预测控制实战:从理论到代码实现(Python示例)

本文详细介绍了MPC模型预测控制的实战应用,从理论到Python代码实现。通过构建系统模型、预测方程、优化问题及约束处理,展示了如何实现一个完整的MPC控制器。文章还提供了水箱液位控制的应用案例,帮助读者掌握MPC在工业控制中的实际应用。

weixin_42653691的博客 459

jsp 展示服务器pdf文件,jsp实现pdf在线预览功能

pdf在线预览功能,具体实现:1、contentfile 是webroot目录下的文件夹 待预览的文件上传到此文件夹。2、Specificate 存放预览文件信息的实体类(表)。3、复制代码 代码示例:spath + "\\" + specificate.getTitle(); 路径加 文件名取到文件。public void preview() {String spath = ServletAct...

weixin_42509803的博客 2113

ChatTutor:让AI老师“会写会画”,打造可视化、互动式智能教育新范式

ChatTutor是一款突破性的开源AI教学助手,通过可视化电子白板实现"边讲边写"的沉浸式教学体验。该项目支持数学公式手写输入、动态函数绘图、自动生成思维导图等功能,采用多智能体架构实现专业协同。未来将扩展至编程、物理等STEM教育领域,适用于学生自学、教师备课和教育平台集成。作为MIT协议开源项目,ChatTutor通过赋予AI"教学肢体语言",推动教育从信息传递转向可视化互动建构,重新定义了AI助教的可能性。

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 423

如何解决IE打开Word、Excel乱码问题

在weblogic应用程序下对于有时上传的文件,(如word、excel等)需要打开或下载到本地时,在weblogic容器默认情况下可能是以记事本打开从而导致乱码现象。为解决此问题可以在你的项目(project)下的web.xml文件中增加如下代码即可解决直接打开而出现乱码问题. 为了让能在IE浏览器中自动打开或弹出对话框的设置:需要在WEB.XML中进行如下的设置:在WEB.XML

流浪的蛤蟆 3178

自己的搭建的slam机器人建图导航测试

1、前言 这里是对自己搭建的slam机器人建图导航的功能测试,原本并不想写这一篇的,因为每个小伙伴的需求都不一样,但是发现还是有同学有需求,于是就有了这一篇。本篇属于说明分享类文章,不涉及细节解释。按照步骤操作即可。 本次测试需要建图算法my_slam_gmapping、导航框架navigation、以及explore_lite功能包、mbot_teleop键盘控制功能包等。 环境:ubuntu mate 16.04 + ROS Kinetic 功能包下载:在公众号:小白学移动机器人,发送:建图导航测试,即

「小白学移动机器人」一个专注分享移动机器人相关知识的公众号! 8700

GoAnywhere MFT 身份验证绕过漏洞(CVE-2024-0204)

GoAnywhere MFT 身份验证绕过漏洞(CVE-2024-0204)

weixin_43567873的博客 387

在jsp上显示pdf||网页直接打开PDF 在IE中显示pdf文档的方法及参数设置

一:在jsp上显示pdf   http://hi.baidu.com/velercy/blog/item/be708dea2c3236ddd439c9b4.html <%@ page language="java" import="java.util.*,java.io.*" pageEncoding="ISO-8859-1"%> <% String path = request.ge

点点滴滴,终汇一海! 2万+

Claude Code 从入门到精通,通过实战项目穿插 Agent Skills、MCP、Hooks、子代理、插件等十五个知识点

本文介绍了Claude Code的高级使用技巧,通过一个个人简历网站实战项目,详细讲解了15个核心知识点。主要内容包括:三种权限模式(默认/编辑/计划)的使用与切换;历史会话管理(/resume、/rename、/clear命令);会话回滚功能(/rewind);以及危险参数--dangerously-skip-permissions的注意事项。文章还演示了如何通过计划模式拆分代码文件,并强调了在复杂任务中仔细检查规划步骤的重要性。这些技巧能帮助开发者更高效地使用Claude Code完成项目开发。

1788

【JSP】如何在jsp中打开pdf文件。

// java代码public ActionForward getSoaPdf(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException { Str...

Tuling2020的博客 1010

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

object标签使用pdf插件打开中文文件的问题

用object标签使用pdf插件嵌入ie中      style="Z-INDEX: 0; LEFT:10px; WIDTH: 10px; POSITION: absolute; TOP: -30px; HEIGHT: 10px">                                       "> 当filename变量为英文名称时如:2.pdf,将2.p

lijunjiejava的专栏 3622

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

在jsp页面上直接打开PDF文件

1、在不需要使用插件,直接打开通过链接方式打开 <%@ page language="java" import="java.util.*,java.io.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() ...

weixin_30859423的博客 925

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

JSP直接打开PDF文件

Checking if Acrobat Reader installed (IE4+)...                     document.all [                          document.all.PDFNotKnown ? "IfNoAcrobat" : "IfAcrobat"                          ] .sty

dhmpgt的专栏 4007

java jsp动态生成pdf_在JSP页面生成PDF文件

(1).框架为SSH:xml配置:(blank.jsp页面是啥都没有,完全一个空白页面)/blank.jspJAVA后台:public String showPdf() throws IOException{FileData fileData = fileDataService.getById(id);byte[] bit = fileData.getData();if(bit != null){...

weixin_26938645的博客 1089
上一篇: db2死锁问题
下一篇: java之jdbc连接db2数据库
xiaosu_521
博客等级 码龄19年 20粉丝 28原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值