私はviewとしてindex.jspファイルを持つSpring MVCプロジェクトを開発しようとしています。私はTomcatのWebサーバ上で実行するために私のプロジェクトを構成したHTTPステータス404 on jsp spring mvc
@EnableWebMvc
@Configuration
@ComponentScan(basePackages = "-----")
public class MainConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/Content/**")
.addResourceLocations("/Content/");
registry.addResourceHandler("/Scripts/**")
.addResourceLocations("/Scripts/");
}
@Bean
public InternalResourceViewResolver viewResolver() {
InternalResourceViewResolver viewResolver
= new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/jsp/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
}
:私は検索と私は設定クラスの下にある2つの助けによってこれを行う必要がありますが見つかりました:
public class MainInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
public static HashMap<String, String> response_code = new HashMap<String, String>();
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[] { MainConfiguration.class,
WebSocketConfig.class};
}
@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
super.onStartup(servletContext);
Security.addProvider(new BouncyCastleProvider());
servletContext.addListener(new MainContextListener());
}
}
、これはMainConfigurationクラスです内部intellij。 index.jspが直接path:webapp/index.jspにある場合は、プログラムを実行した後にブラウザで開きますが、サブフォルダに移動すると表示されません。
このコードの部分は、春にアドレスを与えるべきではないので、URLを見つけて404エラーを出すべきではありませんか?
viewResolver.setPrefix("/WEB-INF/jsp/");
viewResolver.setSuffix(".jsp");
[最小限で完全で検証可能な例](http://stackoverflow.com/help/mcve)を共有してください。 – CrazyCoder