Eclipse(Juno)使用Tomcat7测试servlet时出错

Eclipse(Juno)使用Tomcat7测试servlet时出错,eclipse,servlets,tomcat7,Eclipse,Servlets,Tomcat7,关于这个问题,我已经碰壁两天了,所以我最终决定我需要寻求一些帮助 我从一个流行站点下载了一个教程,并将Maven项目导入到我的Eclipse会话中。我设置了我的TomCat7服务器,项目似乎运行良好。但是,当我在Eclipse中的服务器上运行它时,当我试图越过该页面时,我会进入index.jsp页面,得到一个ClassNotFoundException: javax.servlet.ServletException: Error instantiating servlet class c

关于这个问题,我已经碰壁两天了,所以我最终决定我需要寻求一些帮助

我从一个流行站点下载了一个教程,并将
Maven
项目导入到我的
Eclipse
会话中。我设置了我的
TomCat7
服务器,项目似乎运行良好。但是,当我在
Eclipse
中的服务器上运行它时,当我试图越过该页面时,我会进入
index.jsp
页面,得到一个
ClassNotFoundException

    javax.servlet.ServletException: Error instantiating servlet class com.mantiso.SimpleServlet
        org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
        org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
        org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
        org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
        java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        java.lang.Thread.run(Unknown Source)


I did an `mvn package` and I manually deployed it to `tomcat7` and it works fine.  I am assuming that my ClassPath is missing something that prevents TomCat from finding the `SImpleServlet.class` file.  

Does anyone have any advice on debugging this?   

Thanks in advance for your assistance.

Adding ClassNotFoundException and servlet code:

SEVERE: Allocate exception for servlet SimpleServlet
java.lang.ClassNotFoundException: com.mantiso.SimpleServlet
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:506)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:488)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:115)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1148)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:864)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:134)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Unknown Source)
Servlet代码 包com.mantiso

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


@WebServlet(urlPatterns = {"/home", "*.do"}, name="SimpleServlet", initParams = {@WebInitParam(name = "ProductName", value="Welcome Application")})
public class SimpleServlet extends HttpServlet {
    private static final long serialVersionUID = 102831973239L;
    String appName = "My Application";

    @Override
    public void init() throws ServletException {
        appName = getServletContext().getInitParameter("ProductName");
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String name = req.getParameter("name");
        if(name != null) {
            resp.setContentType("text/xml");
            resp.getWriter().printf("<application>" +
                    "<name>Hello %s</name>" +
                    "<product>%s</product>" +
                    "</application>", name, appName);
        } else {
            resp.getWriter().write("Please enter a name");
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String name = req.getParameter("name");
        if(name != null && name != ""){
            resp.getWriter().printf("Hello %s", name);
        } else {
            resp.sendRedirect("index.jsp");
        }
    }
}
import java.io.IOException;
导入javax.servlet.ServletException;
导入javax.servlet.annotation.WebInitParam;
导入javax.servlet.annotation.WebServlet;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns={/home',“*.do”},name=“SimpleServlet”,initParams={@WebInitParam(name=“ProductName”,value=“Welcome Application”)})
公共类SimpleServlet扩展了HttpServlet{
私有静态最终长serialVersionUID=102831973239L;
字符串appName=“我的应用程序”;
@凌驾
public void init()引发ServletException{
appName=getServletContext().getInitParameter(“ProductName”);
}
@凌驾
受保护的void doGet(HttpServletRequest-req,HttpServletResponse-resp)抛出ServletException,IOException{
字符串名称=req.getParameter(“名称”);
if(name!=null){
分别为setContentType(“文本/xml”);
resp.getWriter().printf(“”)+
“您好%s”+
%s+
“”,名称,应用程序名称);
}否则{
resp.getWriter().write(“请输入名称”);
}
}
@凌驾
受保护的void doPost(HttpServletRequest-req,HttpServletResponse-resp)引发ServletException,IOException{
字符串名称=req.getParameter(“名称”);
如果(name!=null&&name!=“”){
resp.getWriter().printf(“Hello%s”,name);
}否则{
分别为sendRedirect(“index.jsp”);
}
}
}

ClassNotFoundExceptionexception在哪里?对不起,这里是异常,servlet代码是用jdk7编译的项目吗?