2013-08-27 69 views
0

我正在将很多以前由调用者servlet部署的Servlet迁移到新的tomcat7安装中。据我所知,我必须在web.xml中创建servlet和servlet映射元素才能使其运行,但我不明白它的作用。 我首先将所有在默认包中的旧servlet类放在名为servlets的包中。 tomcat7中的ROOT文件夹没有一个WEB-INF文件夹,所以我创建了这个文件,并在这个文件夹中创建了一个新的web.xml文件,目前看起来像这样(只有一个servlet启动用,从等/ tomcat7/web.xml文件复制web-app的元素):Tomcat7部署以前由调用者servlet部署的类文件

<?xml version="1.0" encoding="ISO-8859-1"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
         http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0"> 
<servlet> 
     <servlet-name>ScannerServlet</servlet-name> 
     <servlet-class>servlets.ScannerServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>ScannerServlet</servlet-name> 
    <url-pattern>/servlet</url-pattern> 
</servlet-mapping> 
</web-app> 

然后我把我所有的类文件ROOT \ WEB-INF \类\ servlet的 我再启动Tomcat和尝试http://myip.com:8080/servlet/ScannerServlet但我后来得到“所请求的资源不可用 然后我尝试将servlet和servlet映射添加到etc/tomcat7/web.xml中,但没有取得任何成功 我做了什么错误?或者我做了什么?对,但还有一些事情要做吗?

我已经尝试在ROOT中创建一个名为servlet的新文件夹,并在此移动WEB-INF文件夹。 如果我把一个index.html文件放在servlet文件夹中,它会显示出来,如果我打电话http://myip.com:8080/servlet/,但我仍然得到'所请求的资源不可用时试图调用.../servlet/ScannerServlet或.../servlet/servlet/ScannerServlet

回答