gpt4 book ai didi

java - jdbc spring security,apache commons dbcp

转载 作者:搜寻专家 更新时间:2023-11-01 01:11:25 26 4
gpt4 key购买 nike

在 Spring Security 中,我定义了一个 jdbc 身份验证管理器:

<security:authentication-manager>
<security:authentication-provider>
<security:jdbc-user-service data-source-ref="securityDataSource"/>
</security:authentication-provider>
</security:authentication-manager>

<bean id="securityDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="org.postgresql.Driver"/>
<property name="url" value="jdbc:postgresql://127.0.0.1:5432/mydb"/>
... user and password props ...
</bean>

此时我发现我需要 Jakarta Commons DBCP。我添加了 commons-dbcp-1.4,出现以下异常:

...java.lang.NoClassDefFoundError: org/apache/commons/pool/KeyedObjectPoolFactory

这个路径实际上不包含在 commons dbcp 1.4 中。
我又错过了什么?

已编辑
好的,将依赖项添加到公共(public)池,它起作用了,因为使用正确的凭据我不再获得“错误凭据”页面。但我收到 HTTP 状态 403 - 访问被拒绝。
似乎我的用户已通过身份验证,但未获得授权。
任何的想法...? :-)

我的 http 元素是:

<security:http auto-config="true" >
<security:intercept-url pattern="/**" access="ROLE_USER"/>
</security:http>

我有一个“测试”用户绑定(bind)到“authorities”表中的“USER”角色。

谢谢

最佳答案

Commons DBCP 依赖于 Commons Pools 库,因此,您实际上需要下载 commons-pool jar 文件,并将它们包含在您的路径中。

Commons Pool Downloads

您可能还需要下载 commons-collections 包。

关于java - jdbc spring security,apache commons dbcp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6509200/

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