龙空技术网

SpringBoot找不到JSP异常处理记录

Rebin 97

前言:

此刻姐妹们对“apache显示不了jsp”可能比较重视,兄弟们都需要了解一些“apache显示不了jsp”的相关知识。那么小编同时在网上收集了一些关于“apache显示不了jsp””的相关内容,希望同学们能喜欢,小伙伴们一起来学习一下吧!

一、问题描述

有一个SpringBoot项目,采用的是内置的Tomcat服务,项目使用的是JSP,在项目发布到服务器以后,一切正常,偶尔会发生找不到某个JSP的异常,异常信息如下:

java.lang.ClassNotFoundException org.apache.jsp.XXXX_jsp

以上错误信息是偶发性的,并不能一直存在。

二、问题分析

在Tomcat中,JSP会被编译成以_jsp结尾的servlet文件,SpringBoot默认的Tomcat会将编译后的_JSP文件放在/tmp目录下,而该目录在Linux下是作为临时目录存在,会根据系统的运行对其/tmp下的文件进行清理,导致编译后的_jsp文件被清理,从而找不到该_jsp文件,当在某次访问找不到某个_jsp文件时,会先报一次异常,下次再访问时,Tomcat会重新编译,又会恢复正常。

三、解决方法

在application.properties文件增加Tomcat的工作目录配置,使其指向一个固定目录即可,这样配置以后有可以在更新了jsp文以后不会重新编译,此时只需要删除Tomcat工作目录下的文件即可,这里配置的Tomcat工作目录为/opt/tomcat_loacl

server.tomcat.basedir=/opt/tomcat_loacl

标签: #apache显示不了jsp