【问题标题】:HTTP Status 404 - Servlet mvc-dispatcher is not available jars already added in user library being usedHTTP 状态 404 - Servlet mvc-dispatcher 不可用 jars 已添加到正在使用的用户库中
【发布时间】:2014-05-03 13:21:02
【问题描述】:

即使在用户库中添加了所有 jars 后仍然出现错误 HTTP 状态 404 - Servlet mvc-dispatcher 不可用 jars 已添加到正在使用的用户库中。尝试了各种无法解决无法发布屏幕截图,因为我没有 10 分

web.xml 中的 Servlet 映射代码如下:

    <servlet>
     <servlet-name>mvc-dispatcher</servlet-name>
     <servlet-class>org.springframework.web.servlet.DispatcherServlet.class</servlet-class>
     <load-on-startup>1</load-on-startup>
     </servlet>

     <servlet-mapping>
     <servlet-name>mvc-dispatcher</servlet-name>
     <url-pattern>*.spring</url-pattern>
     </servlet-mapping>

我的jsp在下面

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <form action="Login.spring" method = "post">
    <input type = "text" name = "userName" id = "userName">
    <input type = "password" name = "password" id = "password">
    <input type = "submit">
    </form>
    </body>
    </html>

我的控制器在下面
包 com.lnt.controller;

    import java.util.ArrayList;
    import java.util.List;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.servlet.ModelAndView;

    import com.lnt.services.AuthenticateServices;

    @Controller 
    @RequestMapping("/Login.spring")
    public class LoginController {

        //@Autowired
         AuthenticateServices authenticateService = new AuthenticateServices();

        @RequestMapping(method=RequestMethod.POST)
        public ModelAndView processCredentials(HttpServletRequest req, HttpServletResponse res)

        {
            String userName =req.getParameter("userName") ;
            String password = req.getParameter("password");
            System.out.println("into login controller");
            String message = "Invalid credentials";
            List<String> userdetails = new ArrayList<String>();
            userdetails = authenticateService.verifyUserNameAndPassword(userName, password);
            if((userdetails)!=null)
                {
                message = "welcome" + userName ;
            }
            return new ModelAndView("results", "message", message) ;
        }



        }

这是堆栈跟踪:

java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet.class 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) 在 org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1095) 在 org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:993) 在 org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421) 在 org.apache.catalina.core.StandardContext.start(StandardContext.java:4734) 在 org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 在 org.apache.catalina.core.StandardHost.start(StandardHost.java:840) 在 org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 在 org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) 在 org.apache.catalina.core.StandardService.start(StandardService.java:525) 在 org.apache.catalina.core.StandardServer.start(StandardServer.java:754) 在 org.apache.catalina.startup.Catalina.start(Catalina.java:595) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 在 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

【问题讨论】:

  • 没有人可以帮忙吗?
  • 不要发布截图。你的问题非常模糊。贴相关代码,贴相关配置。发布预期的输出。发布实际输出。
  • 我之前从未遇到过这个错误这是由于缺少 jar 文件,即使我添加了包含 servlet 调度程序类的 spring mvc webservlet jar。我正在尝试使用spring和hibernate使用spring MVC制作一个登录应用程序
  • mvc-dispatcherorg.springframework.web.servlet.DispatcherServlet.class1 mvc-dispatcher*.spring
  • 编辑您的问题。 cmets中的代码很难阅读。

标签: java spring-mvc


【解决方案1】:

你的配置错误

 <servlet-class>org.springframework.web.servlet.DispatcherServlet.class</servlet-class>

&lt;servlet-class&gt; 元素需要类名。没有这样的类叫做

org.springframework.web.servlet.DispatcherServlet.class

你可能是说

org.springframework.web.servlet.DispatcherServlet

【讨论】:

  • 给出错误。即使在更改类名并从名称中删除 .class 以及构建和清理之后。
  • java.lang.ClassNotFoundException: org.apache.catalina.loader 的 org.springframework.web.servlet.DispatcherServlet.WebappClassLoader.loadClass(WebappClassLoader.java:1680) 的 org.apache.catalina.loader .WebappClassLoader.loadClass(WebappClassLoader.java:1526)
  • 我从类中的 jar 文件中复制了合格的类名
  • @user2152452 那么你还没有将罐子添加到它们应该在的位置。它们应该在生成的 WAR 中的 WEB-INF/libs 中。
猜你喜欢
  • 1970-01-01
  • 2018-07-15
  • 1970-01-01
  • 2012-06-01
  • 2012-06-16
  • 1970-01-01
  • 2015-09-17
  • 1970-01-01
  • 2021-07-27
相关资源
最近更新 更多