在spring security中没有进行身份验证,而是直接转到已验证页面

在spring security中没有进行身份验证,而是直接转到已验证页面,spring,spring-mvc,authentication,spring-security,Spring,Spring Mvc,Authentication,Spring Security,我的安全xml是: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:security="http://www.springframework.org/schema/security" xmlns:p="http://www.springframewo

我的安全xml是:

<beans xmlns="http://www.springframework.org/schema/beans"  
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
       xmlns:security="http://www.springframework.org/schema/security"  
       xmlns:p="http://www.springframework.org/schema/p"   
       xsi:schemaLocation="http://www.springframework.org/schema/beans  
                           http://www.springframework.org/schema/beans/spring-beans.xsd  
                           http://www.springframework.org/schema/security  
                           http://www.springframework.org/schema/security/spring-security-3.2.xsd">  

    <security:http auto-config="true">
        <security:intercept-url method="POST" pattern="/admin**" access="ROLE_USER" />
        <security:http-basic />
    </security:http>

    <security:authentication-manager>
      <security:authentication-provider>
        <security:user-service>
        <security:user name="user" password="pass" authorities="ROLE_USER" />
        </security:user-service>
      </security:authentication-provider>
    </security:authentication-manager>

</beans>
JSP文件::

hello.jsp::

*


在此处插入标题
标题:${Title}
消息:${Message}
* admin.jsp

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page session="true"%>
<html>
<body>
    <h1>Title : ${title}</h1> 
    <h1>Message : ${message}</h1> 

    <c:if test="${pageContext.request.userPrincipal.name != null}">
       <h2>Welcome : ${pageContext.request.userPrincipal.name} 
            <a href="<c:url value="/j_spring_security_logout" />" > Logout</a></h2>  
    </c:if>
</body>
</html>

标题:${Title}
消息:${Message}
欢迎:${pageContext.request.userPrincipal.name}

没别的了。。请帮助我找出我的错误所在

只需在web.xml中更改以下内容,即可解决问题

<filter-mapping>
   <filter-name>springSecurityFilterChain</filter-name >
   <url-pattern>/*</url-pattern>
</filter-mapping>

springSecurityFilterChain
/*

如果您使用pattern=“/admin/**”会发生什么?很抱歉,您的回复太晚了。。但是同样的事情发生了..你能发布Spring配置的其余部分和web.xml吗?也可以尝试删除auto-config=“true”,看看发生了什么我用web.xml和dispatcher-servlet.xml编辑了这个问题..谢谢你。。但是你能告诉我为什么“/*”有效,但“/”或“/*”无效吗?欢迎光临!我真的不知道前者的工作,后者不知道,我的知识是有点模糊的蚂蚁匹配
package com.suva.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HelloController {

    @RequestMapping(value = { "/", "/welcome**" }, method = RequestMethod.GET)
    public ModelAndView welcomePage() {

        ModelAndView model = new ModelAndView();
        model.addObject("title", "Spring Security Hello World");
        model.addObject("message", "This is welcome page!");
        model.setViewName("hello");
        return model;

    }

    @RequestMapping(value = "/admin**", method = RequestMethod.GET)
    public ModelAndView adminPage() {

        ModelAndView model = new ModelAndView();
        model.addObject("title", "Spring Security Hello World");
        model.addObject("message", "This is protected page!");
        model.setViewName("admin");

        return model;

    }

}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@page session="false"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h1>Title : ${title}</h1>   
    <h1>Message : ${message}</h1>   
</body>
</html>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page session="true"%>
<html>
<body>
    <h1>Title : ${title}</h1> 
    <h1>Message : ${message}</h1> 

    <c:if test="${pageContext.request.userPrincipal.name != null}">
       <h2>Welcome : ${pageContext.request.userPrincipal.name} 
            <a href="<c:url value="/j_spring_security_logout" />" > Logout</a></h2>  
    </c:if>
</body>
</html>
<filter-mapping>
   <filter-name>springSecurityFilterChain</filter-name >
   <url-pattern>/*</url-pattern>
</filter-mapping>