Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring mvc cvc complex type.2.4.c:匹配的通配符是严格的,但是找不到元素';构造函数arg';_Spring Mvc_Spring Security_Password Encryption - Fatal编程技术网

Spring mvc cvc complex type.2.4.c:匹配的通配符是严格的,但是找不到元素';构造函数arg';

Spring mvc cvc complex type.2.4.c:匹配的通配符是严格的,但是找不到元素';构造函数arg';,spring-mvc,spring-security,password-encryption,Spring Mvc,Spring Security,Password Encryption,这是我的spring-security.xml <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springfr

这是我的spring-security.xml

<beans:beans xmlns="http://www.springframework.org/schema/security"

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

    <http auto-config="true" use-expressions="true">
        <intercept-url pattern="/admin**" access="hasRole('ROLE_ADMIN')" />

        <intercept-url pattern="/signup" access="permitAll"></intercept-url>
        <intercept-url pattern="/signin" access="permitAll"></intercept-url>
        <intercept-url pattern="/logout" access="permitAll"></intercept-url>
        <intercept-url pattern="/denied" access="permitAll"></intercept-url>
        <intercept-url pattern="/**" access="isAuthenticated()"></intercept-url>
        <access-denied-handler error-page="/403" />

        <form-login login-page="/signin" default-target-url="/home"
            authentication-failure-url="/denied" />
        <logout logout-success-url="/logout"></logout>
    </http>


    <authentication-manager>  
  <authentication-provider> 
    <password-encoder ref="passwordEncoder" hash="sha-256"/>
  <jdbc-user-service data-source-ref="dataSource"
          users-by-username-query=
            "select email,password, 'true' as enabled from user_login where email=? limit 1"
          authorities-by-username-query=
            "select email, role from user_roles where email =?  " />
      </authentication-provider>

 </authentication-manager> 
    <beans:bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.ShaPasswordEncoder">
     <constructor-arg value="256"/>
 </beans:bean>
</beans:beans>  

我得到了这个错误 cvc复杂类型.2.4.c:匹配的通配符是严格的,但找不到元素“构造函数arg”的声明。 -安全命名空间不支持元素[constructor arg]的修饰 -配置问题:安全命名空间不支持元素[constructor arg]的修饰有问题的资源:文件(项目路径) 我如何解决这个错误


。我想输入密码并检查密码是否与数据库密码匹配。

我认为问题在于
beans
不是默认名称空间。所以你可以试试

<beans:bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.ShaPasswordEncoder">
 <beans:constructor-arg value="256"/>

或者将bean声明为默认名称空间

    <beans xmlns="http://www.springframework.org/schema/beans"

我认为问题在于
bean
不是默认名称空间。所以你可以试试

<beans:bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.ShaPasswordEncoder">
 <beans:constructor-arg value="256"/>

或者将bean声明为默认名称空间

    <beans xmlns="http://www.springframework.org/schema/beans"