gpt4 book ai didi

java - Spring配置无法扩展属性

转载 作者:行者123 更新时间:2023-12-02 05:10:19 25 4
gpt4 key购买 nike

我正在尝试通过属性文件启用或禁用授权。但以下不起作用

<global-method-security pre-post-annotations="${enabled}" />

XML 验证失败

在这一行找到多个注释: - cvc-enumeration-valid:值“${enabled}”对于枚举“[disabled,enabled]”不是侧面有效的。它必须是来自 枚举。

有人可以建议我这样做的正确方法吗?

最佳答案

不幸的是,Spring Security XSD 硬编码了该(和其他)属性 IIRC 的可能值:

<xs:attributeGroup name="global-method-security.attlist">
<xs:attribute name="pre-post-annotations">
<xs:annotation>
<xs:documentation>Specifies whether the use of Spring Security's pre and post invocation annotations
(@PreFilter, @PreAuthorize, @PostFilter, @PostAuthorize) should be enabled for this
application context. Defaults to "disabled".
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="disabled"/>
<xs:enumeration value="enabled"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
...

因此,如果您希望 XML 验证成功,则不可能进行属性替换(因为 XML 验证不知道 Spring 的替换标记)。

关于java - Spring配置无法扩展属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27385102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com