springboot访问jsp页面变成直接下载?
【摘要】 编辑大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。 前言大家在写springboot的时候不知道你们遇没遇到过这样的问题,当我们满怀信心的在浏览器中输入:localhost://8080/default,然后回车的时候,期待的页面没有显示出来,而是浏览器将你期待的页面作为一个文件在本地下载下来了???打破砂锅问到底,今天,我们就来看看出现此问题之后怎么解决。 01发现Bug如前言所...
编辑
大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。
前言
大家在写springboot的时候不知道你们遇没遇到过这样的问题,当我们满怀信心的在浏览器中输入:localhost://8080/default,然后回车的时候,期待的页面没有显示出来,而是浏览器将你期待的页面作为一个文件在本地下载下来了???打破砂锅问到底,今天,我们就来看看出现此问题之后怎么解决。
01
发现Bug
如前言所述,我将springboot与sringmvc以及mybatis结合的时候,出现的问题,控制器编写正常,返回的是index.jsp,在application.properties中也对页面默认的前缀后缀配置,不可能出现问题,然而运行的时候并未正常显示页面,而是将页面以文件的形式下载下来。前几天在obs中也遇到过这个问题,就是当我们将网页文件上传到obs桶里面的时候,拿着外部链接访问,没有给我们解析成页面,而是将页面直接下载下来了,请求图片也是一样的道理,直接将图片给下载下来了。
如图所示:
编辑
02
解决Bug
出现该问题的原因我们很容易就能联想到是jsp页面解析的问题,浏览器未编译和解析jsp,导致以文件的形式加载,所以当我们访问的时候,就会变成下载。
解决该问题我们只需要在pom文件中加以下代码即可:
<!--用于解析jsp页面-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
该依赖就是编译解析jsp页面的。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)