【发布时间】:2020-10-12 16:08:53
【问题描述】:
我有下面的applicationContext-security.xml,其中我使用 SpEL 根据某些条件传递了一个过滤器列表,但由于逗号,spring 无法解析表达式。
<bean id="springSecurityFilterChain" class="org.springframework.security.web.FilterChainProxy">
<sec:filter-chain-map path-type="ant">
<sec:filter-chain pattern="/**"
filters="#{ '${portal.okta.login.enabled}' ? 'httpSessionContextIntegrationFilter' : 'httpSessionContextIntegrationFilter,logoutFilter' }" />
</sec:filter-chain-map>
</bean>
如果您在上面看到 : 'httpSessionContextIntegrationFilter,logoutFilter',这是造成问题的原因。如果我删除逗号并只保留单个过滤器,spring 会很好地解析它。
上述 if-else 的值作为List<Filter> 使用。
我应该怎么做? portal.okta.login.enabled 只是一个取真或假的属性。
【问题讨论】:
-
你能发布整个错误吗?
标签: java spring spring-security