[英]Spring Controller Request Mapping Does Not Work Correctly
我有一個簡單的請求映射,可打開駐留在靜態文件夾中的html文件。 當請求映射是像'/town'
這樣的單部分請求,但不能在'/visual/town'
這樣'/visual/town'
URL上工作(返回404)時,它可以正常工作。 當我調試時,程序會掉到所需的位置。 當映射由兩部分或更多部分組成時,它只是無法識別它指向的文件。 這對我完全沒有意義。
這個作品:
@Controller("VisualHomeController")
public class HomeController {
@RequestMapping(value = "/town")
public String emergentTown() {
return "static/visual/emergent_town.html";
}
}
這不是:
@Controller("VisualHomeController")
public class HomeController {
@RequestMapping(value = "/visual/town")
public String emergentTown() {
return "static/visual/emergent_town.html";
}
}
這是我的servlet映射,看來問題出在這里:
<servlet-mapping>
<servlet-name>main</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
因此,我發現問題出在servlet映射上。
我需要為附加控制器的第一部分添加另一個servlet映射,該映射是/visual
:
<servlet-mapping>
<servlet-name>main</servlet-name>
<url-pattern>/visual/*</url-pattern>
</servlet-mapping>
然后它起作用了。 因此,每當您想要像/.../new_page
請求時,都需要將...
定義為servlet映射。 注意,僅將主servlet映射更改為/*
不足以實現此目的。
注意:調試時為什么程序會陷入return ...
仍然沒有意義。 我的意思是,如果還需要一個servlet映射,那么前端控制器如何將請求路由到該方法? 並且在這樣做時為什么它無法解析視圖?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.