gpt4 book ai didi

spring - 如何在 spring 安全上下文配置 xml 文件中使用 application.properties 中的 bool 参数?

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

我正在尝试在我的 spring-security 配置 xml 文件中使用 application.properties 中的 boolean 参数。我不知道为什么我可以使用非 bool 参数,但我收到 bool 值错误。

如何使用 bool 参数?

这是我的 application.properties:

JDBC_CONNECTION_STRING=jdbc:mysql://localhost:3306/schema?user=username&password=password
protocol=http
USE_SECURE=false

我的spring-security.xml是:

< remember-me user-service-ref="internalUserDetails" data-source-ref="dataSource" key="this-is-my-key02203452416fw" use-secure-cookie="${USE_SECURE}" />

...但我收到此错误:cvc-datatype-valid.1.2.1: '${USE_SECURE}' 不是 'boolean' 的有效值

我也尝试设置 USE_SECURE=False 但我再次遇到同样的错误。如何在 spring security 配置 xml 文件中使用 bool 参数?

这是我的 web.xml:

<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0" >

<display-name> Name-MyApp</display-name>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!-- Servlets -->
<servlet>
<servlet-name>MyApp</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<!-- Servlets Mappings -->
<servlet-mapping>
<servlet-name>MyApp</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/servlet-context.xml,
/WEB-INF/spring-security.xml
</param-value>
</context-param>

<!-- Filters -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
<filter-name>httpMethodFilter</filter-name>
<servlet-name>MyApp</servlet-name>
</filter-mapping>

<filter>
<filter-name>httpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>

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

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>

最佳答案

看起来传递的是 key “${USE_SECURE}”的值。当我想初始化 bool 值时遇到了类似的问题

<bean id="flag" class="java.lang.Boolean">
<constructor-arg value="${FLAG}"/>
</bean>

它与“属性”一起工作正常,所以我用其他方式解决了我的案子。不知道是不是spring bug?

关于spring - 如何在 spring 安全上下文配置 xml 文件中使用 application.properties 中的 bool 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14937823/

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