【问题标题】:Spring "alias is required"Spring“需要别名”
【发布时间】:2011-07-15 02:41:27
【问题描述】:

我是 Spring 新手,我正在尝试使用 Spring Blazeds Integration (Flex + Blazeds + Spring + Java) 创建一个应用程序,当我运行该应用程序时出现此错误:

02:51:21,852 INFO  [XmlBeanDefinitionReader] Loading XML bean definitions from ServletContext resource [/WEB-INF/spring/security-config.xml]
02:51:23,937 ERROR [ContextLoader] Context initialization failed
    org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: alias is required.
    Offending resource: ServletContext resource [/WEB-INF/spring/security-config.xml]

security-config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns:security="http://www.springframework.org/schema/security"
    xmlns:beans="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                        http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd">

    <security:http>
        <security:anonymous enabled="false" />
        <security:form-login default-target-url="/myContext/Index.html"
            login-page="/myContext/Login.html" />
        <security:remember-me key="myAppKey" services-ref="rememberMeServices" />
    </security:http>

    <beans:bean id="rememberMeServices"
        class="org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices">
        <beans:property name="key" value="myAppKey" />
        <beans:property name="alwaysRemember" value="true" />
    </beans:bean>

    <security:authentication-manager>
        <security:authentication-provider>
            <security:user-service>
                <security:user name="john" password="john" authorities="ROLE_USER" />
                <security:user name="admin" password="admin" authorities="ROLE_USER, ROLE_ADMIN" />
                <security:user name="guest" password="guest" authorities="ROLE_GUEST" />
            </security:user-service>
        </security:authentication-provider>
    </security:authentication-manager>

</beans:beans>

我正在使用 spring-flex 1.5.0spring-security 2.0.6Spring 3.0

有什么想法吗?

提前致谢, 安德烈

【问题讨论】:

  • 向我们展示完整的堆栈跟踪,而不仅仅是前几行。

标签: spring spring-security alias


【解决方案1】:

我不太确定,但请尝试在 security:authentication-manager 中添加别名:

<security:authentication-manager alias="authenticationManager">

为什么不使用 Spring security 3?

【讨论】:

    【解决方案2】:

    reference manual 中所列,Spring Flex 1.5.0 不能与 Spring Security 2 一起使用。您必须使用 Spring Security 3。

    除此之外,jbbarquero 是正确的,假设这实际上是您的问题。

    【讨论】:

    • 您好,谢谢您的回答。我下载并使用 Spring-Security 3.0.0 配置了该应用程序,并发生了与版本 3.0.5 相同的错误:java.lang.ClassNotFoundException: org.springframework.security.Authentication。我搜索了这个问题,这是因为在 Spring Security 3.0.x 中他们改变了这个类的包(现在是 org.springframework.security.core.Authentication)。知道如何解决这个问题吗?
    • 嗨,我发现了有关 ClassNotFoundException 的问题。除了 spring-flex-core-1.5.0.RELEASE 之外,还有一个额外的库 (org.springframework.flex-1.5.0.CI-367)。删除后,它工作正常!
    • 太棒了!是的,注意不要混合同一个 Spring 项目的版本。我们都应该感谢 Jeremy 终于发布了 Spring Flex 1.5 :)
    猜你喜欢
    • 1970-01-01
    • 2011-11-12
    • 1970-01-01
    • 2016-09-05
    • 2015-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多