我在server.xml中添加了一个新的Context来移动我的webapps的ROOT目录,如下所示:
<Context path="" docBase="../sites" debug="0" reloadable="true" >
<Resource name="jdbc/myphoto" auth="Container" type="javax.sql.DataSource"
driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
url="jdbc:derby:C:\apache-tomcat-7.0.12\sites\webtech\WEB-INF\lib\photo"
maxActive="20" maxIdle="10" maxWait="-1" />
</Context>
现在由于某种原因,tomcat无法找到我的自定义java类。我的jsp页面看起来像这样:
... some xhtml ...
<%@ page import="com.domain.webtech.Hello" %>
<%
Hello h = new Hello();
out.print(h.hello());
%>
我可以在 sites / webtech / WEB-INF / classes / com / domain / webtech / 中找到Hello.java文件,这非常简单:
package com.somename.webtech;
public class Hello {
public Hello() {
}
public String hello() {
return "hello, world!";
}
}
我编译了它,甚至将其打包成webtech.jar文件并将其放入 sites / webtech / WEB-INF / lib /
有没有人知道为什么Tomcat没有找到我的课程?
感谢您的时间,
-G。
答案 0 :(得分:1)
您的docBase
必须指向网络根目录。
更改
<Context docBase="../sites" ...>
到
<Context docBase="../sites/webtech" ...>
然后按http://localhost:8080/page.jsp而不是http://localhost:8080/webtech/page.jsp打开您的JSP。