【问题标题】:view reolver mapping not working proeprly in maven webapp project查看解析器映射在 maven webapp 项目中无法正常工作
【发布时间】:2020-07-22 12:27:55
【问题描述】:

我制作了没有 xml 映射文件的基于 java 的项目
我创建了一个控制器如下:

public class TestController {
//@ResponseBody
@RequestMapping("/test")
public String helloController()
{
    return "helloworld";
}

我在 WEB-INF/view 文件夹下创建了名为 helloworld.jsp 的 jsp 文件 我的视图解析器如下:

 @Configuration
 @ComponentScan(basePackages="com.oyolife.controller")
 public class LoveCalCulaorAppConfig {
@Bean
public InternalResourceViewResolver view()
{
 InternalResourceViewResolver viewResolver=new InternalResourceViewResolver() ;
viewResolver.setPrefix("WEB-INF/view/");
viewResolver.setSuffix(".jsp");
return  viewResolver;
 }
 }

在运行此程序员时会出现以下错误: **警告:GET /lovebalance/myweb.com/WEB-INF/view/helloworld.jsp 没有映射 ** 这意味着 tomcat 从视图 reslover 添加前缀和后缀,但它没有正确映射 helloworld.jsp

额外的 webinitilizer 代码在这里

AnnotationConfigWebApplicationContext xwac=new AnnotationConfigWebApplicationContext();
    xwac.register(com.oyolife.config.LoveCalCulaorAppConfig.class);
    DispatcherServlet dispatcherservlet=new DispatcherServlet(xwac);
    //register dispatcher servlet with spring
    ServletRegistration.Dynamic 
    mycustdispatcherservlet=servletContext.addServlet("mydispatcherservlet",dispatcherservlet);

    mycustdispatcherservlet.setLoadOnStartup(1);
    mycustdispatcherservlet.addMapping("/myweb.com/*");
  }

【问题讨论】:

  • 您是否将 @Controller 添加到您的 TestController 中,还是您的帖子中缺少该内容?
  • 是的,如果我将 String 返回到 @ResponseBody 而不是返回 viewResolver,我已经添加了它以及它的工作发现

标签: spring model-view-controller


【解决方案1】:

其实代码没什么问题,1.右键服务器>添加/删除项目>删除项目
2.右键项目>运行>maven安装
3.右键单击项目>运行>在服务器上运行
现在它工作正常

【讨论】:

    猜你喜欢
    • 2018-09-09
    • 1970-01-01
    • 2014-07-19
    • 1970-01-01
    • 1970-01-01
    • 2014-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多