【发布时间】: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