我认为@Ischin对表单操作URL感到怀疑是正确的。尝试输入完整路径,看看是否可行。如果是这样,您可以从那里开始找出不匹配的地方。
我唯一想检查的另一件事是web.xml中的过滤器映射。由于您正在访问登录页面,因此已经进行了设置,但是我要检查的是,您不仅在拦截具有特定扩展名的网址等。
同样,就像一个方便,如果您希望请求(一旦登录表单验证了用户身份)转到受保护的资源(在这种情况下为/admin/report.html),则应该删除以下表单:login always-use- default-target =“ true”。将此标志设置为true将导致请求始终转到默认目标网址,通常不是您想要的。从spring安全文档:
映射到UsernamePasswordAuthenticationFilter的defaultTargetUrl属性。如果未设置,则默认值为“ /”(应用程序根目录)。如果将用户带到最初请求的URL,则在尝试访问受保护的资源时不要求用户登录后,将在登录后将其带到该URL。