阿里云Tomcat8下面JSP无法编译的解决方案

我在阿里云布署Tomcat的时候,遇到一个非常诡异的问题。上传的JSP无法编译。要么就是找不到类的引用,要不就是找不到include文件的位置。但奇怪的是主页能够编译,就是index.jsp。但在二级目录下的jsp文件都无法编辑。当时我找到许多网上的文章,一般说是servlet-api.jar什么文件冲突之类。但都没有解决。

后来我觉得这个编辑和目录的层级有关系,应该是目录的问题,导致tomcat无法找到正确的路径classes,最终我找到了原因所在,在server.xml配置里面。因为我是按照阿里云的配置,把目录配置到了其它地方。把配置:

<Host name="localhost" appBase="/data/ROOT" unpackWARs="true" autoDeploy="true">

          <Context path="" docBase="/data/ROOT" debug="0" reloadable="false" crossContext="true"/>

修改为:

<Host name="localhost" appBase="/data" unpackWARs="true" autoDeploy="true">

          <Context path="" docBase="/data/ROOT" debug="0" reloadable="false" crossContext="true"/>

就行了。appBase是不包括ROOT这个目录的。

这个问题诡异的地方在于,原来那种配置下,部分页面是可以运行的,导致无法追查原因。

猜你喜欢

转载自blog.csdn.net/erxij/article/details/79552725