Migrando Spring Security 2.5.6 a 3.0.1

De Daniel Ayusos:

Antes que nada agradecer a Luis Miguel la posibilidad y oportunidad de poder escribir en su blog (Dani, no es mi blog, ahora ya también es tuyo :))

Hoy me ha dado por migrar de versión de Spring en la aplicación a la nueva release 3.0.1 de Spring, con el fin de conseguir soporte para la nueva especificación JPA 2.0. Ya lo intenté sin éxito hace unos meses, pero es que hasta esta nueva release no han sacado un soporte auténtico, ya que en la versión 3.0.0 tuvieron un bug en la conversión de tipos, si la query se trataba de Criteria (http://jira.springframework.org/browse/SPR-6733)

Aparte de cambiar de JAR en los pom de maven y reconstruir el proyecto me ha tocado cambiar alguna que otra cosilla que me gustaría compartir:

– En maven las nuevas dependencias pasan a ser:

– Los esquemas del xml también cambian y pasan de:

http://www.springframework.org/schema/security

http://www.springframework.org/schema/security/spring-security-2.0.1.xsd

a

http://www.springframework.org/schema/security

http://www.springframework.org/schema/security/spring-security-3.0.xsd

Los cambios que más “quebraderos” de cabeza producen son los relacionados con las clases, siempre que uses el provider que te ofrece Spring y no lo tengas sobreescrito o si usas por ejemplo jasypt para la encriptación de password.

Entre ellos los más significativos serían:

UserService

Por org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl

Authentication-provider:

Deja de estar en raíz para estar dentro de authentication-manager

Jasypt:

org.jasypt.spring.security3.PasswordEncoder es la nueva clase a usar.

Deja un comentario