Java 从intellij上的tomcat获取错误404
我试图在intellij中运行tomcat,一切都正常,但当我试图在浏览器中打开相应的页面时,我得到了 HTTP状态404–未找到使用说明源服务器未找到目标资源的当前表示形式,或者不愿意透露存在该表示形式。我到处找了,没有找到答案,希望你能帮忙。 我的代码如下:Java 从intellij上的tomcat获取错误404,java,spring,tomcat,intellij-idea,Java,Spring,Tomcat,Intellij Idea,我试图在intellij中运行tomcat,一切都正常,但当我试图在浏览器中打开相应的页面时,我得到了 HTTP状态404–未找到使用说明源服务器未找到目标资源的当前表示形式,或者不愿意透露存在该表示形式。我到处找了,没有找到答案,希望你能帮忙。 我的代码如下: @EnableWebMvc @Configuration @ComponentScan({"com.asign.controller"}) public class WebConfig extends WebMvcConfigurerA
@EnableWebMvc
@Configuration
@ComponentScan({"com.asign.controller"})
public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
@Bean
public InternalResourceViewResolver resolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setViewClass(JstlView.class);
resolver.setPrefix("/WEB-INF/");
resolver.setSuffix(".jsp");
return resolver;
}
}
@Configuration
public class WebInit extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Class<?>[] getRootConfigClasses() {
return null;//new Class<?>[]{RootConfig.class};
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[]{WebConfig.class};
}
@Override
protected String[] getServletMappings() {
return new String[]{"/"};
}
}
@Controller
public class AppController {
@RequestMapping(value = "/")
public String helloWorld(Model model) {
//let’s pass some variables to the view script
model.addAttribute("wisdom", "Goodbye XML");
return "hey"; // renders /WEB-INF/views/hey.jsp
}
}
对于任何面临同样问题的人:我无法使这个项目工作,但我使用了来自
它在我的Intellij中运行得很好(在我从pom.xml中删除插件之后)尝试将您的
InternalResourceViewResolver
前缀更新到您的视图文件夹:
resolver.setPrefix("/WEB-INF/views/");
您需要在视图文件夹中有
hey.jsp
。它仍然不起作用。我还尝试访问localhost:8081/,localhost:8081/{myprojectname},但仍然无法工作。如果我单击“全部部署”按钮,我确实会看到tomcat欢迎页面,但我仍然没有看到我的页面。检查您是否在Browser中启用了代理嘿,您解决了吗?
resolver.setPrefix("/WEB-INF/views/");