错误说:由于Maven依赖性,在DispatcherServlet中找不到具有URI的HTTP请求的映射

时间:2018-05-22 08:23:00

标签: java spring spring-mvc

我正在尝试使用java配置中的hibernate在spring中使用角色库进行身份验证和授权。当我运行服务器然后它给我错误sarying没有找到servlet中的URI的映射。

public class ShoppingInitializerWeb implements WebApplicationInitializer {

public void onStartup(ServletContext container) throws ServletException {
    AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
    ctx.register(ShoppingServletConfig.class);
    ctx.setServletContext(container);
    ServletRegistration.Dynamic servlet = container.addServlet("dispatcher", new DispatcherServlet(ctx));

    servlet.setLoadOnStartup(1);
    servlet.addMapping("/*");

}
}

ShoppingServletConfig.java

@Configuration
@EnableTransactionManagement
@ComponentScan(basePackages = "com.project.shopping")
public class ShoppingServletConfig extends WebMvcConfigurerAdapter{
 @Bean
    public ViewResolver viewResolver() {
        InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
        viewResolver.setViewClass(JstlView.class);
        viewResolver.setPrefix("/WEB-INF/ui/view/");
        viewResolver.setSuffix(".jsp");

        return viewResolver;
    }

WebConfigStatic.java

@EnableWebMvc
@Configuration

@ComponentScan(basePackages="com.project.shopping")
public class WebConfigStatic extends WebMvcConfigurerAdapter{
@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
    registry.addResourceHandler("/js/**").addResourceLocations("/ui/js/");
    registry.addResourceHandler("/css/**").addResourceLocations("/ui/css/");
    registry.addResourceHandler("/*.html/**").addResourceLocations("/ui/view/");
}
}

这是我的控制者:

@Controller
@RequestMapping("/")
public class UserController {
@RequestMapping(value = { "/", "/home" }, method = RequestMethod.GET)
public String homePage(ModelMap model) {
    model.addAttribute("user", getPrincipal());
    return "welcome";
}  

我在webapp / WEB-INF / ui / view

中有welcome.jsp

以下是控制台中的错误:

WARNING: No mapping found for HTTP request with URI [/Shoping/home] in DispatcherServlet with name 'dispatcher'

我查找了所有相关的错误并尝试解决但无法解决问题。

1 个答案:

答案 0 :(得分:2)

我在我的Spring项目中遇到了一个相同的项目,我尝试了所有可能的方法,但没有解决方案不能用于该项目,但最后我得到了一个解决方案。

将maven依赖项添加到项目部署程序集之后,我的项目运行良好。因此,您可以尝试使用以下程序,如果您的代码完美,它应该可以使用。

  

右键单击Project,然后选择属性> 部署程序集>   然后点击添加按钮> Java构建路径条目>选择 Maven    依赖>点击完成按钮。

然后更新maven项目,然后mvn clean install ...然后运行。

我希望,它会奏效。