根据属性文件的值处理多个spring安全上下文文件

时间:2012-04-27 00:57:46

标签: spring properties spring-security

我在处理多个安全上下文文件时遇到问题。让我来描述一下我要做的事情:

我的现有应用程序与我当前的Spring安全配置完美匹配。我试图引入另一种以不同方式处理应用程序安全性的安全机制。但我希望将现有的安全配置作为备份,并希望处理从属性文件中使用哪一个。

假设我有两个弹簧安全上下文文件:

---->的applicationContext-security.xml文件

---->的applicationContext-安全new.xml

我有一个像这样的财产: spring.config.use.new.config =真

因此,如果属性文件为true,它将使用新的上下文文件。如果出现问题我将只更改属性文件并使用现有的安全机制。

这可能吗?任何信息将受到高度赞赏。期待任何人的回答:(

提前致谢。

1 个答案:

答案 0 :(得分:0)

您用什么构建项目?

如果您使用Maven,您可以使用properties plugin并将其替换为您的web.xml中的配置定义。

您的web.xml看起来像:

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>${security.context.location}</param-value>
</context-param>

你的pom.xml会有:

    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>my.properties</include>
            </includes>
        </resource>
    <resources>

您的.properties文件将包含:

security.context.location = /somewhere/security-context-new.xml

security.context.location = /somewhere/security-context-old.xml