javax.servlet.ServletException:无法在名称为“NA-dispatcher”的 servlet 中解析名称为“login”的视图

Posted

技术标签:

【中文标题】javax.servlet.ServletException:无法在名称为“NA-dispatcher”的 servlet 中解析名称为“login”的视图【英文标题】:javax.servlet.ServletException: Could not resolve view with name 'login' in servlet with name 'NA-dispatcher' 【发布时间】:2019-07-16 08:40:46 【问题描述】:

当我运行这个项目时,就会出现这个错误 我已经尝试了更多时间来进行所有更改,但这将无法由我解决。 严重:servlet [NA-dispatcher] 的 Servlet.service() 在路径 [/Sugar_Industry_09_07_19_source] 的上下文中引发异常 [Could not resolve view with name 'login' in servlet with name 'NA-dispatcher'] 根本原因

    NA-dispacher-servlet.xml
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans     
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/mvc 
        http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
        http://www.springframework.org/schema/context 
        http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <context:component-scan base-package="com.controller.*" />

    <mvc:annotation-driven validator="validator">
        <mvc:argument-resolvers>
            <bean class="com.github.dandelion.datatables.extras.spring3.ajax.DatatablesCriteriasMethodArgumentResolver" />
        </mvc:argument-resolvers>

    </mvc:annotation-driven>
    <mvc:resources mapping="/admin/themes/**" location="/admin/themes/" />
    <mvc:resources mapping="/admin/js/**" location="/admin/js/" />
    <mvc:resources mapping="/user/themes/**" location="/admin/themes/" />
    <mvc:resources mapping="/user/js/**" location="/admin/js/" />
    <mvc:resources mapping="/themes/**" location="/themes/" />
    <mvc:resources mapping="/js/**" location="/js/" />
    <mvc:resources mapping="/js/login/**" location="/js/login/" />
    <mvc:resources mapping="/dandelion/**" location="classpath:/META-INF/resources/dandelion/" />


    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.UrlBasedViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.tiles3.TilesView"/>
        <property name="prefix" value="/WEB-INF/pages/"/>
        <property name="suffix" value=".jsp"/>
        <property name="order" value="0" />
    </bean>
    <bean id="tilesConfigurer"
        class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
        <property name="definitions">
            <list>
                <value>/WEB-INF/tiles.xml</value>
            </list>
        </property>
    </bean>


    <bean id="messageSource"
        class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:global" />
        <property name="defaultEncoding" value="UTF-8" />
    </bean>

    <bean id="localeResolver"
        class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
        <property name="defaultLocale" value="en" />
        <property name="cookieName" value="DAMLocaleCookie" />
        <property name="cookieMaxAge" value="3600" />
    </bean>
    <bean id="localeChangeInterceptor"
        class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
        <property name="paramName" value="locale" />
    </bean>



    <bean id="themeSource"
        class="org.springframework.ui.context.support.ResourceBundleThemeSource">
        <property name="basenamePrefix" value="theme-" />
    </bean>
    <bean id="themeChangeInterceptor"
        class="org.springframework.web.servlet.theme.ThemeChangeInterceptor">
        <property name="paramName" value="theme" />
    </bean>
    <bean id="themeResolver"
        class="org.springframework.web.servlet.theme.CookieThemeResolver">
        <property name="defaultThemeName" value="default" />
    </bean>
    <bean id="webContentInterceptor" class="org.springframework.web.servlet.mvc.WebContentInterceptor">
                <property name="cacheSeconds" value="0"/>
                <property name="useExpiresHeader" value="false"/>
                <property name="useCacheControlHeader" value="true"/>
                <property name="useCacheControlNoStore" value="true"/>
     </bean>
    <mvc:interceptors>
        <ref bean="localeChangeInterceptor" />
        <ref bean="themeChangeInterceptor"/>
        <ref bean="webContentInterceptor"/>
    </mvc:interceptors>


    <bean id="validationMessageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:validation" />
    </bean>

    <bean name="validator"  class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
        <property name="validationMessageSource">
            <ref bean="validationMessageSource"/>
        </property>
    </bean>

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

        <property name="maxUploadSize" value="10000000000" /> 
    </bean>
    <bean id="dataSourceNA"
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">

        <property name="driverClassName" value="org.postgresql.Driver" />

        <property name="url" value="jdbc:postgresql://192.168.1.195:5432/UP_Master" /> 
         <!-- <property name="url" value="jdbc:postgresql://localhost:5432/UP_Master" /> -->
         <!-- <property name="url" value="jdbc:postgresql://10.247.102.31:5432/UP_Master" /> -->

        <property name="username" value="postgres" />
        <property name="password" value="postgres" /> 
        <!-- <property name="password" value="Post@2018*" />  -->
    </bean>
    <bean id="DistrictDAO" class="com.dao.DistrictDAOImpl">
        <property name="dataSource" ref="dataSourceNA" />
    </bean>
    <bean id="TalukaDAO" class="com.dao.TalukaDAOImpl">
        <property name="dataSource" ref="dataSourceNA" />
    </bean>
    <bean id="VillageDAO" class="com.dao.VillageDAOImpl">
        <property name="dataSource" ref="dataSourceNA" />
    </bean>
    <bean id="StateDAO" class="com.dao.StateDAOImpl" >
        <property name="dataSource" ref="dataSourceNA" />
    </bean>

    <!-- <bean id="Fps_ReportDAO" class="com.dao.fps_ReportDAOImpl" >
        <property name="dataSource" ref="dataSourceNA" />
    </bean> -->
<!--    
    <bean id="AddGeomDAOMandi" class="com.dao.AddGeomDAOMandiImpl" >
        <property name="dataSource" ref="dataSourceNA" />
    </bean> -->

    <bean id="BufferedDataDAO" class="com.dao.BufferedDataDAOImpl">
        <property name="dataSource" ref="dataSourceNA" />
    </bean>     

        <bean id="QueryBuildDAO" class="com.dao.QueryBuildDAOImpl" >
        <property name="dataSource" ref="dataSourceNA" />
    </bean> 
    <bean id="SugarCaneDAO" class="com.dao.SugarCaneDAOImpl" >
        <property name="dataSource" ref="dataSourceNA" />
    </bean> 
</beans>

2.web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

    <display-name>UrbanPortalGOI</display-name>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    <servlet>
        <servlet-name>NA-dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>NA-dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/spring-database.xml ,
            /WEB-INF/spring-security.xml
        </param-value>
    </context-param>

    <filter>
        <filter-name>springSecurityFilterChain</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>springSecurityFilterChain</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <servlet>
        <servlet-name>datatablesController</servlet-name>
        <servlet-class>com.github.dandelion.datatables.extras.servlet2.servlet.DatatablesServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>datatablesController</servlet-name>
        <url-pattern>/datatablesController/*</url-pattern>
    </servlet-mapping>

   <servlet>
      <servlet-name>dandelionServlet</servlet-name>
      <servlet-class>com.github.dandelion.core.web.DandelionServlet</servlet-class>
      <load-on-startup>2</load-on-startup>
   </servlet>
   <servlet-mapping>
      <servlet-name>dandelionServlet</servlet-name>
      <url-pattern>/dandelion-assets/*</url-pattern>
   </servlet-mapping>


   <filter>
      <filter-name>dandelionFilter</filter-name>
      <filter-class>com.github.dandelion.core.web.DandelionFilter</filter-class>
   </filter>
   <filter-mapping>
      <filter-name>dandelionFilter</filter-name>
      <url-pattern>/*</url-pattern>
   </filter-mapping>


    <filter>
       <filter-name>datatables</filter-name>
       <filter-class>com.github.dandelion.datatables.core.web.filter.DatatablesFilter</filter-class>
    </filter>
    <filter-mapping>
       <filter-name>datatables</filter-name>
       <url-pattern>/*</url-pattern>
    </filter-mapping> 

    <error-page>  
       <error-code>404</error-code>  
         <location>/WEB-INF/pages/404.jsp</location>  
   </error-page>   
    <error-page>  
        <error-code>400</error-code>  
        <location>/WEB-INF/pages/400.jsp</location>  
    </error-page>  

    <error-page>  
        <error-code>500</error-code>  
        <location>/WEB-INF/pages/500.jsp</location>  
    </error-page> 
</web-app>

    tiles.xml
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN" "http://tiles.apache.org/dtds/tiles-config_3_0.dtd">        
<tiles-definitions>  



    <definition name="login" template="/WEB-INF/pages/login.jsp">       
    </definition> 
    <!-- <definition name="pointGeomModuleTile" template="/WEB-INF/pages/addMandiDetail.jsp" >
    </definition> -->

    <definition name="addFormTile" template="/WEB-INF/pages/addForm.jsp" >
    </definition>


    <definition name="addCropCuttingTile" template="/WEB-INF/pages/addCropCutting.jsp" >
    </definition>
    <definition name="addPondTile" template="/WEB-INF/pages/addPond.jsp" >
    </definition>
    <definition name="addSeedTile" template="/WEB-INF/pages/addSeed.jsp" >
    </definition>
    <definition name="addPesticideTile" template="/WEB-INF/pages/addPesticide.jsp" >
    </definition>


    <definition name="viewInfoTile" template="/WEB-INF/pages/viewAllInformation.jsp" >
    </definition>

    <definition name="contactPage" template="/WEB-INF/pages/contact.jsp">

    </definition>

    <definition name="registrationTile" template="/WEB-INF/pages/Registration/UserRegistration.jsp">
     </definition> 



 <definition name="feedbackPage" template="/WEB-INF/pages/layout.jsp">
        <put-attribute name="menu" value="/WEB-INF/pages/menu.jsp" />
        <put-attribute name="body" value="/WEB-INF/pages/feedback.jsp" />
        <put-attribute name="footer" value="/WEB-INF/pages/footer.jsp" />
    </definition>

    <definition name="base.definition" template="/WEB-INF/pages/admin/layout.jsp">
        <put-attribute name="title" value="" />
        <put-attribute name="menu" value="/WEB-INF/pages/admin/menu.jsp" />
        <put-attribute name="body" value="" />
        <put-attribute name="footer" value="/WEB-INF/pages/admin/footer.jsp" />
        <put-attribute name="menuselection" value="home" />
    </definition>

    <definition name="base.user.definition" template="/WEB-INF/pages/admin/layout.jsp">
        <put-attribute name="title" value="" />
        <put-attribute name="menu" value="/WEB-INF/pages/menu.jsp" />
        <put-attribute name="body" value="" />
        <put-attribute name="footer" value="/WEB-INF/pages/footer.jsp" />
        <put-attribute name="menuselection" value="home" />
    </definition>

     <definition name="gisModulePage" template="/WEB-INF/pages/dashboard.jsp">
    </definition>

      <definition name="userHomePage" template="/WEB-INF/pages/userdashboard.jsp">
    </definition>

    <definition name="hello" template="/WEB-INF/pages/temp.jsp">
    </definition>

    <definition name="adminHomePage" extends="base.definition" >
        <put-attribute name="title" value="Urban Portal GOI admin Home Page" />
        <put-attribute name="body" value="/WEB-INF/pages/admin/admin.jsp" />
        <put-attribute name="menuselection" value="home" />
    </definition>

    <definition name="queryBuilderTile" template="/WEB-INF/pages/admin/queryBuilder.jsp" >
    </definition>

    <definition name="CreateBufferChildTile" template="/WEB-INF/pages/CreateBufferChild.jsp" ></definition>
    <definition name="ReportTile" template="/WEB-INF/pages/Fps_Report.jsp" ></definition>

    <definition name="districtReportTile" template="/WEB-INF/pages/district_Report.jsp" ></definition>


</tiles-definitions>

    Lo​​ginController.java
package com.controller.login;

import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;

import org.springframework.security.authentication.AnonymousAuthenticationToken;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.authentication.LockedException;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.ModelAttribute;
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;

@Controller
public class LoginController 

//  FeedBackDAO feedBackDAO = new FeedBackDAOImpl();

    @RequestMapping(value = "/admin/adminHome", method = RequestMethod.GET)
    public ModelAndView adminPage() 
        ModelAndView model = new ModelAndView();
        model.setViewName("adminHomePage");
        return model;
    

    @RequestMapping(value = "/user/userDashboard")
    public ModelAndView userPage() 
        ModelAndView model = new ModelAndView();
        model.setViewName("userHomePage");
        return model;
    

    @RequestMapping(value = "/login",method=RequestMethod.GET)
    public ModelAndView login(@RequestParam(value = "error", required = false) String error,
            @RequestParam(value = "logout", required = false) String logout, HttpServletRequest request) 

        ModelAndView model = new ModelAndView();
        if (error != null) 
            model.addObject("error", getErrorMessage(request, "SPRING_SECURITY_LAST_EXCEPTION"));
        

        if (logout != null) 
            model.addObject("msg", "You've been logged out successfully.");
        

        if (logout != null) 
            request.getSession().removeAttribute("userId");
            request.getSession().invalidate();
            Authentication auth = SecurityContextHolder.getContext().getAuthentication();
            if (!(auth instanceof AnonymousAuthenticationToken)) 
                UserDetails userDetail = (UserDetails) auth.getPrincipal();
                model.addObject("msg",  userDetail.getUsername()+", You've been logged out successfully.");
            
            else
            model.addObject("msg", "You've been logged out successfully.");
            
        

        //model.setViewName("login");

        return new ModelAndView("login");

    

    /*@RequestMapping(value = "/logout",method=RequestMethod.GET)
    public ModelAndView logout() 
        ModelAndView model = new ModelAndView();
        model.addObject("msg", "You've been logged out successfully.");
        model.setViewName("login");
        return model;
    

    @RequestMapping(value = "/logout",method=RequestMethod.POST)
    public ModelAndView logoutpost() 
        ModelAndView model = new ModelAndView();
        model.addObject("msg", "You've been logged out successfully.");
        model.setViewName("login");
        return model;
    */

    @RequestMapping(value = "/logout",method=RequestMethod.GET)
    public ModelAndView logout() 

        return new ModelAndView("redirect:/login?logout=true");
    



    @RequestMapping(value = "/hello",method=RequestMethod.GET)
    public ModelAndView hello() 

        return new ModelAndView("hello");
    
    @RequestMapping(value = "/pleaseLogin",method=RequestMethod.GET)
    public ModelAndView pleaseLogin() 
        return new ModelAndView("redirect:/login","msg","You need to login first to access this site");
    

    @RequestMapping(value = "/logout",method=RequestMethod.POST)
    public ModelAndView logoutpost(HttpServletRequest request)     
        return new ModelAndView("redirect:/login?logout=true");
    

    // customize the error message
    private String getErrorMessage(HttpServletRequest request, String key) 

        Exception exception = (Exception) request.getSession().getAttribute(key);

        String error = "";
        if (exception instanceof BadCredentialsException) 
            error = "Invalid username and password!";
         else if (exception instanceof LockedException) 
            error = exception.getMessage();
         else 
            error = "Invalid username and password!";
        

        return error;
    

    // for 403 access denied page
    @RequestMapping(value = "/user/403", method = RequestMethod.GET)
    public ModelAndView accesssDenied() 

        ModelAndView model = new ModelAndView();

        // check if user is login
        Authentication auth = SecurityContextHolder.getContext().getAuthentication();
        if (!(auth instanceof AnonymousAuthenticationToken)) 
            UserDetails userDetail = (UserDetails) auth.getPrincipal();
            model.addObject("username", userDetail.getUsername());
        

        model.setViewName("403");
        return model;
    

    @RequestMapping(value = "/contact", method = RequestMethod.GET)
    public ModelAndView contact() 
        ModelAndView model = new ModelAndView();
        model.setViewName("contactPage");
        return model;
           
 
    堆栈跟踪
javax.servlet.ServletException: Could not resolve view with name 'login' in servlet with name 'NA-dispatcher'
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1204)
    at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1005)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:952)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:870)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at com.github.dandelion.datatables.core.web.filter.DatatablesFilter.doFilter(DatatablesFilter.java:75)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at com.github.dandelion.core.web.DandelionFilter.doFilter(DandelionFilter.java:113)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
    at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:139)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:85)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:57)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.session.ConcurrentSessionFilter.doFilter(ConcurrentSessionFilter.java:125)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
    at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
    at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
    at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:853)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1587)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)

【问题讨论】:

这个问题由我解决,这是我的电脑问题,这些项目在所有其他电脑上运行 【参考方案1】:

这个问题由我解决,这是我的电脑问题,这些项目在所有其他电脑上运行

【讨论】:

以上是关于javax.servlet.ServletException:无法在名称为“NA-dispatcher”的 servlet 中解析名称为“login”的视图的主要内容,如果未能解决你的问题,请参考以下文章