Spring-在DispatcherServlet中未找到映射,请求URI包含应用程序名称

Spring-在DispatcherServlet中未找到映射,请求URI包含应用程序名称,spring,spring-mvc,tomcat,uri,Spring,Spring Mvc,Tomcat,Uri,我正在尝试从头开始构建一个Spring应用程序,我用以下目录结构和文件制作了一个简单的应用程序 web.xml 我不明白上面的代码出了什么问题,但我总是得到一个404错误。tomcat日志显示以下内容 15-Mar-2017 16:16:33.127 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /Users/Some

我正在尝试从头开始构建一个Spring应用程序,我用以下目录结构和文件制作了一个简单的应用程序

web.xml

我不明白上面的代码出了什么问题,但我总是得到一个404错误。tomcat日志显示以下内容

15-Mar-2017 16:16:33.127 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /Users/SomeUser/Documents/apache-tomcat-9.0.0.M17/webapps/LearningSpring.war
15-Mar-2017 16:16:34.303 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
15-Mar-2017 16:16:34.501 INFO [localhost-startStop-1] org.springframework.web.servlet.DispatcherServlet.initServletBean FrameworkServlet 'dispatcher': initialization started
15-Mar-2017 16:16:34.533 INFO [localhost-startStop-1] org.springframework.web.context.support.XmlWebApplicationContext.prepareRefresh Refreshing WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:34.594 INFO [localhost-startStop-1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from ServletContext resource [/WEB-INF/dispatcher-servlet.xml]
15-Mar-2017 16:16:35.238 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.registerHandlerMethod Mapped "{[/profile.html],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.learn.spring.app.web.CentralController.showProfile(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
15-Mar-2017 16:16:35.341 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.initControllerAdviceCache Looking for @ControllerAdvice: WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:35.413 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.initControllerAdviceCache Looking for @ControllerAdvice: WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:35.517 INFO [localhost-startStop-1] org.springframework.web.servlet.DispatcherServlet.initServletBean FrameworkServlet 'dispatcher': initialization completed in 1016 ms
15-Mar-2017 16:16:35.527 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /Users/SomeUser/Documents/apache-tomcat-9.0.0.M17/webapps/LearningSpring.war has finished in 2,399 ms
15-Mar-2017 16:16:35.530 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
15-Mar-2017 16:16:35.536 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
15-Mar-2017 16:16:35.536 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 2492 ms
^[15-Mar-2017 16:19:22.994 WARNING [http-nio-8080-exec-5] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring] in DispatcherServlet with name 'dispatcher'
15-Mar-2017 16:19:27.755 WARNING [http-nio-8080-exec-6] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring/] in DispatcherServlet with name 'dispatcher'
15-Mar-2017 16:19:40.881 WARNING [http-nio-8080-exec-7] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring/WEB-INF/jsp/profile.jsp] in DispatcherServlet with name 'dispatcher' 
我注意到的一件事是,所有请求URI都以/LearningSpring/应用程序名称作为前缀,我想这不应该出现

我无法通过URL localhost:8080/LearningSpring/profile.html访问profile.jsp页面,并且index.html没有显示为欢迎页面。当我访问localhost:8080/LearningSpring时,它只是抛出一个404/

我通读了很多答案,在谷歌上搜索了几个小时,但运气不好。请指出问题所在,以提供帮助

谢谢你

几件事

将dispatcher servlet的url模式更改为/; /

通过DispatcherServlet为所有静态资源提供服务;
检查此示例-

解决方案1:将其添加到web.xml*.html和yourl localhost:8080/appName/profile.html解决方案2中:更新方法@requestMapping/profile的requestMapping,并将其添加到yourl localhost:8080/appName/profile中reagrards@hichamabdedaime试过了。没有帮助删除工作区中的文件夹metada并重新启动eclise并尝试重新更改url映射到/帮助我解决访问profile.jsp页面的问题,但是第二件事什么也没做,我仍然无法访问我的index.html页面作为欢迎page@AdityaVikasDevarapalli您确定index.html文件位于webapp文件夹下而不是WEB-INF文件夹下吗?
<mvc:annotation-driven/>
<context:component-scan base-package="com.learn.spring.app.web" />

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/WEB-INF/jsp/"/>
  <property name="suffix" value=".jsp"/>
</bean>
@Controller
public class CentralController {

    @RequestMapping("/profile.html")
    public ModelAndView showProfile(HttpServletRequest request, HttpServletResponse response){
        return new ModelAndView("profile");
    }
}
15-Mar-2017 16:16:33.127 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /Users/SomeUser/Documents/apache-tomcat-9.0.0.M17/webapps/LearningSpring.war
15-Mar-2017 16:16:34.303 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
15-Mar-2017 16:16:34.501 INFO [localhost-startStop-1] org.springframework.web.servlet.DispatcherServlet.initServletBean FrameworkServlet 'dispatcher': initialization started
15-Mar-2017 16:16:34.533 INFO [localhost-startStop-1] org.springframework.web.context.support.XmlWebApplicationContext.prepareRefresh Refreshing WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:34.594 INFO [localhost-startStop-1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from ServletContext resource [/WEB-INF/dispatcher-servlet.xml]
15-Mar-2017 16:16:35.238 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.registerHandlerMethod Mapped "{[/profile.html],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.learn.spring.app.web.CentralController.showProfile(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
15-Mar-2017 16:16:35.341 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.initControllerAdviceCache Looking for @ControllerAdvice: WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:35.413 INFO [localhost-startStop-1] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.initControllerAdviceCache Looking for @ControllerAdvice: WebApplicationContext for namespace 'dispatcher-servlet': startup date [Wed Mar 15 16:16:34 EDT 2017]; root of context hierarchy
15-Mar-2017 16:16:35.517 INFO [localhost-startStop-1] org.springframework.web.servlet.DispatcherServlet.initServletBean FrameworkServlet 'dispatcher': initialization completed in 1016 ms
15-Mar-2017 16:16:35.527 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /Users/SomeUser/Documents/apache-tomcat-9.0.0.M17/webapps/LearningSpring.war has finished in 2,399 ms
15-Mar-2017 16:16:35.530 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
15-Mar-2017 16:16:35.536 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
15-Mar-2017 16:16:35.536 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 2492 ms
^[15-Mar-2017 16:19:22.994 WARNING [http-nio-8080-exec-5] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring] in DispatcherServlet with name 'dispatcher'
15-Mar-2017 16:19:27.755 WARNING [http-nio-8080-exec-6] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring/] in DispatcherServlet with name 'dispatcher'
15-Mar-2017 16:19:40.881 WARNING [http-nio-8080-exec-7] org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/LearningSpring/WEB-INF/jsp/profile.jsp] in DispatcherServlet with name 'dispatcher'