您的位置:首页 > Web前端 > JavaScript

服务器虚拟主机,非根目录jsp文件的引包报错

2017-12-15 17:36 417 查看
最近把写好的JEE项目上传到服务器后,发现所有在文件夹中的jsp页面

在页头部分用<%@page import=”com.xxxx.dao.xxx”%>

导入类后,再浏览器中打开这个jsp页面时会出现

会出现500报错only a type can be imported: XXX resolves to package



发现这个错误后,去百度了好久,终于受到了这篇文章的启发:

http://blog.csdn.net/PengYuZhu/article/details/5868361

原来服务器 /usr/local/tomcat/conf/vhost 目录下的虚拟主机配置文件中是这么写的

<Host name="www.xxx.cc" appBase="/data/wwwroot/www.xxx.cc" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/data/wwwroot/www.xxx.cc" reloadable="false" crossContext="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.xxx.cc_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
</Host>


在标签的属性中,appBase这个属性若填写了路径,tomcat会认为

这个目录下的每一个文件夹,都是一个独立的环境

所以jsp页面去引用其他编译好的class文件时就会报错

所以经过修改后,将标签中的appBase的值置空后,重启tomcat服务器

再次访问原来的页面就可以了,错误完美解决

<Host name="www.xxx.cc" appBase="" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/data/wwwroot/www.xxx.cc" reloadable="false" crossContext="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="www.xxx.cc_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
</Host>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jsp 虚拟主机 服务器
相关文章推荐