spring-mvc访问本地html文件
项目中要用到在线预览word文档,刚开始考虑是要将word转成pdf文件,然后再直接在浏览器打开pdf文档即可,
但是项目部署在Linux下,在网上搜了一下没有找到合适的方法,
后来项目组讨论用POI生成HTML文件,但是生成的HTML文档是额外生成的,浏览器是无法直接访问POI生成的html文件的,
Not allowed to load local resource: file:///D:/images/word/media/image1.png
这个错误给整的明明白白的。
后来尝试
out=response.getOutputStream();
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
response.setContentType( "text/html;charset=UTF-8" );
XHTMLConverter.getInstance().convert(document, out, options);
out.flush();
out.close();
HTML文件倒是能在页面上显示,但是里面的图片还是显示不出来。404又给我整明白了,因为部署的项目里是没有这些图片的,完全一厢情愿。
没办法了,咨询项目大神,大神就是大神,脑袋都没拍就想到一个方法。
————————————————————
在springmvc-servlet.xml配置文件中
mvc:resources 是加载静态文件的
详见
https://www.cnblogs.com/linnuo/p/7699401.html
在项目中pringmvc-servlet.xml文件里加入
<mvc:resources mapping="/wordview/**" location="file:D:/POITransforms/" />
将html文件放在固定的D:/POITransforms/里,文件夹可以有子集文件夹,子文件夹名可以是自定义的UUID,
我这边点击预览按钮是弹窗里面嵌入了一个iframe , iframe src路径为:
Util.getPath()+'/wordview/temp/5570c3fba83f464fa383e58cd394f860/transforms.html'
另:_________________________________________________________________
//获取项目名称
getPath:function(){
return location.pathname.match(/\/(.+?)(?=\/)/g)[0];
}
temp/5570c3fba83f464fa383e58cd394f860/transforms.html 这一串是返回给前台的生成的HTML文件路径,是固定在D:/POITransforms/
这样一写齐活了,然后再删除D:/POITransforms/ 就可以了
spring-mvc访问本地html文件的更多相关文章
- Spring MVC 处理静态资源文件
摘要: 三个方案: 1.方案一:激活Tomcat的defaultServlet来处理静态文件 2.方案二: 在spring3.0.4以后版本提供了mvc:resources (需要配置annotati ...
- 转载 Spring、Spring MVC、MyBatis整合文件配置详解
Spring.Spring MVC.MyBatis整合文件配置详解 使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. ...
- spring mvc(注解)上传文件的简单例子
spring mvc(注解)上传文件的简单例子,这有几个需要注意的地方1.form的enctype=”multipart/form-data” 这个是上传文件必须的2.applicationConte ...
- node.js简单搭建服务,访问本地站点文件
1.安装nodejs服务(从官网下载安装),node相当于apache服务器 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在D:\nodeJs下创建了server.js文件 v ...
- Spring MVC、MyBatis整合文件配置详解
Spring:http://spring.io/docs MyBatis:http://mybatis.github.io/mybatis-3/ Building a RESTful Web Serv ...
- 搭建nodejs服务,访问本地站点文件
搭建nodejs服务器步骤: 1.安装nodejs服务(从官网下载安装) 2.在自己定义的目录下新建服务器文件如 server.js 例如,我在E:\PhpProject\html5\websocke ...
- 80.简单搭建nodeJS服务,访问本地站点文件
转自:https://blog.csdn.net/iteye_1217/article/details/82679843 搭建nodejs服务器步骤: 1.安装nodejs服务(从官网下载安装),no ...
- Spring MVC访问静态资源
http://www.cnblogs.com/yank/p/4477204.html SpringMVC访问静态资源 在SpringMVC中常用的就是Controller与View.但是我们常常会需要 ...
- 基于Spring Mvc实现的Excel文件上传下载
最近工作遇到一个需求,需要下载excel模板,编辑后上传解析存储到数据库.因此为了更好的理解公司框架,我就自己先用spring mvc实现了一个样例. 基础框架 之前曾经介绍过一个最简单的spring ...
- Spring、Spring MVC、MyBatis整合文件配置详解
原文 http://www.cnblogs.com/wxisme/p/4924561.html 主题 MVC模式MyBatisSpring MVC 使用SSM框架做了几个小项目了,感觉还不错是时候总 ...
随机推荐
- Ubuntu常用软件
//latex公式识别 sudo snap install mathpix-snipping-tool //markdown # or run: # sudo apt-key adv --keyser ...
- this.$router.push、replace、go的区别
1.this.$router.push() 描述:跳转到不同的url,但这个方法会向history栈添加一个记录,点击后退会返回到上一个页面. 用法: 2.this.$router.replace() ...
- 1、Mysql无法创建外键的原因 2、MySql 外键约束 之CASCADE、SET NULL、RESTRICT、NO ACTION分析和作用
在Mysql中创建外键时,经常会遇到问题而失败,这是因为Mysql中还有很多细节需要我们去留意,我自己总结并查阅资料后列出了以下几种常见原因. 1. 两个字段的类型或者大小不严格匹配.例如,如果一个 ...
- Oracle计算两天两个日期间相差的天数
Oracle计算两天两个日期间相差的天数: select to_date('19930411','yyyymmdd')-to_date('19890507','yyyymmdd') from dual ...
- CF 1119C Ramesses and Corner Inversion
https://codeforces.com/problemset/problem/1119/C 题目 给两个矩阵,只能选宽和高大于等于2的子矩阵左上.左下.右上.右下四点翻转(1->0,0-& ...
- word里面对齐用Tab键
1 Tab 组1 2 组2
- Luogu3732 [HAOI2017] 供给侧改革 【后缀数组】【线段树】【乱搞】
题目分析: 这道题我是乱搞的,因为他说$01$串是随机的. 那么我们可以猜测能够让LCP变大的地方很少.求出后缀数组之后可能让LCP变大的地方就等价于从大到小往height里动态加点同时维护这个点左右 ...
- crontab计划任务实例
使用实例 实例1:每1分钟执行一次command 命令: * * * * * command 实例2:每小时的第3和第15分钟执行 命令: 3,15 * * * * command 实例3:在上午8点 ...
- api跨域
1.找方法名称是get开头的2.找get请求类型的 自定义webapi的路由规则,控制到action 1.跨域设置:(服务端)webconfig文件中,system.webServer节点下添加 &l ...
- mysql 数据库表迁移复制
1. 表结构相同的表,且在同一数据库(如,table1,table2) insert into table1 select * from table2 # 完全复制 insert into table ...