我对spring mvc相当新,我试图启动一个非常简单的项目,只会在空白页面上显示问候语但由于某种原因我似乎无法让它在tomcat服务器上运行,我已经过去了一小段代码,我不相信有任何错误,并确保tomcat服务器配置正确,任何人都可以给我的任何帮助将不胜感激(这不是任何任何类型的任务,这纯粹是我试图学习Spring MVC并学习正确的配置,因为经过几个小时的研究我发现它没有任何问题)
我也是纯粹用java做的,没有xml。没有使用任何依赖管理器(No Maven或Gradle)但我确实拥有所有必需的jar
我首先配置调度程序servlet并将其传递给webConfig,以便应用程序上下文可以通过组件扫描加载bean,因为这是一个简单的项目我没有RootConfig类
在我的WebConfig中,我启用了Spring MVC,我给ComponentScan提供了一个基础包,它将搜索所有Controller类来为应用程序上下文创建bean,并创建一个简单的视图解析器,它将使用指定的前缀和后缀包装视图名称< / p>
我的控制器再次非常简单我将该类注释为&#34; /&#34;的默认处理程序。请求和映射sayHello方法来处理对&#34; / home&#34;的请求。我将一条简单的消息附加到模型(地图)并返回视图名称
最后我的视图显示了消息,我知道的jsp标题中的标签是没用的,因为我没有在表单中使用任何标签,它们只是之前尝试遗留下来的东西
当我在tomcat服务器上运行此应用程序时,我得到以下内容,我正在运行Tomcat 7,它支持spring mvc java配置
tomcat服务器正常运行
据我所知,服务器配置正确
如评论中所述,我收到的警告是
SpringProjLibs是我创建的用户库,将我所有的弹簧罐放在
中这个评论以及对此警告的一些研究使我意识到我没有将库添加到部署程序集中,如下所示(蓝色突出显示的条目不存在,我添加了)在添加蓝色线后解决了这个问题
我添加了对这篇文章的跟进,因为这仍然与我原来的问题有关。完成上述步骤后,它解决了这个问题,但另一个问题出现了。
我收到以下错误,但tomcat无法启动
2018年6月18日下午5:57:37 org.springframework.web.servlet.DispatcherServlet initServletBean 严重:上下文初始化失败 org.springframework.beans.factory.BeanCreationException:错误 创建名称为&#39; requestMappingHandlerAdapter&#39;定义于 类 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration: bean的实例化失败;嵌套异常是 org.springframework.beans.factory.BeanDefinitionStoreException: 工厂方法[公众 org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport.requestMappingHandlerAdapter()] 抛出异常;嵌套异常是 org.springframework.beans.factory.BeanCreationException:错误 创建名为&mvcValidator&#39; mvcValidator&#39;在课堂上定义 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration: 调用init方法失败;嵌套异常是 java.lang.NoClassDefFoundError:com / fasterxml / classmate / Filter
在做了一些研究之后,我发现与在线材料中研究和看到的相反,WebConfig类中的@EnableWebMvc和@ComponentScan注释导致了这个问题。我通过将@EnableWebMvc注释移动到Initializer类来解决了这个问题,现在我的类看起来如下所示
这解决了我的所有问题,我的项目成功启动