In a Spring Security, I defined a jdbc auth manager:
<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>
At this point I've discovered that I need Jakarta Commons DBCP. I've added commons-dbcp-1.4, i get the following exception:
...java.lang.NoClassDefFoundError: org/apache/commons/pool/KeyedObjectPoolFactory
This path actually isn't included in commons dbcp 1.4.
What am I missing again?
EDITED
Ok, added the dependency to common pool, it works because with the right credentials I no more get the "bad credentials" page.
But I get an HTTP Status 403 - Access is denied.
Seems like my user is authenticated , but isn't authorized.
Any idea...? :-)
My http element is:
<security:http auto-config="true" >
<security:intercept-url pattern="/**" access="ROLE_USER"/>
</security:http>
and I have a "test" user that is bind to the "USER" role in the "authorities" table.
thanks