簡體   English   中英

Spring View Resolver返回404

[英]Spring View Resolver returning 404

對於為什么我在這個新項目中遇到問題感到困惑。 只需嘗試確保每當Controller返回定義jsp文件名稱的字符串時,Spring就會在特定目錄中返回具有特定名稱的jsp文件。

@Controller
public class TestController {

    @RequestMapping("/test")
    public String test2(HttpServletResponse response, HttpServletRequest request) {
        System.out.println("Returning test.jsp");
        return "test";
    }

}

還有視圖解析器...

@Bean
public InternalResourceViewResolver viewResolver() {
    InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
    viewResolver.setViewClass(JstlView.class);
    viewResolver.setPrefix("/WEB-INF/views/");
    viewResolver.setSuffix(".jsp");
    return viewResolver;
}

在這種情況下,我希望domain.com/test上的控制器顯示“ src / main / webapp / WEB-INF / views / test.jsp”。 這似乎在我所有的舊項目上都可以正常工作,但是在配置此項目時,它將無法配合,並且我不斷收到404錯誤。

有什么想法為什么它找不到要顯示的正確的jsp文件?

編輯:問題已解決,解決方案在下方發布。

您是否在春季配置中注冊了控制器?( @ComponentScan <context:component-scan .../><context:component-scan .../>

解決了問題。 不出所料,這有點愚蠢。

問題歸結於pom.xml中不存在Apache Tomcat依賴項。 備查:

    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM