簡體   English   中英

Spring Servlet中的404解析視圖

[英]404 resolving view in spring servlet

我有一個在Eclipse的Tomcat 8上運行的Spring(4)MVC servlet。 當我啟動tomcat時,控制台中沒有錯誤,並且記錄了控制器的所有正確請求映射。 如果我嘗試訪問localhost:8080/app/login則會執行我的控制器方法(通過調試進行檢查),但是我得到一個帶有以下內容的404頁面:

消息/app/WEB-INF/jsp/login.jsp

描述所請求的資源不可用。

我的項目具有以下目錄結構:

project-root
 |-src
 |-WebContent
    |-WEB-INF
       |-jsp
          |-login.jsp

我的配置類:

@EnableWebMvc
@Configuration
@ComponentScan(basePackages = "com.example")
public class WebConfig extends WebMvcConfigurerAdapter {
    @Override
    public void configureViewResolvers(final ViewResolverRegistry registry) {
        registry.jsp("/WEB-INF/jsp/", ".jsp").viewClass(JstlView.class);
    }
    //Other stuff
}

控制器:

@Controller
@RequestMapping("/login")
public class AuthnRequestController {
    @RequestMapping(value = "", method = RequestMethod.GET)
    public ModelAndView getLoginPage() {
        return new ModelAndView("login");
    }
    //Other stuff
}

過去,該應用程序運行良好,但是我正在處理我的工作空間/項目在其他方面的工作,現在我又回到了工作狀態,因此無法使其再次正常工作。

AFAIK,默認情況下,在Maven戰爭項目中,jsp文件應位於/src/main/resources/ 由於您在配置中給了jsp文件前綴/WEB-INF/jsp/ ,因此請嘗試將jsp文件移動到以下位置。

/src/main/webapp/WEB-INF/jsp/

假設:

  • Web部署程序集中未提供到root/WebContent的映射。

  • Web部署程序集中存在到/src/main/webapp的映射。

  • 您的日食正在使用maven war plugin

暫無
暫無

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

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