¿Por qué el mapper de Mybatis me regresa un null usándolo en Spring Security?
Tengo un proyecto basado en Spring MVC, Spring-Security y MyBatis. Usando autenticación personalizada para poder hacer algunas cosas adicionales cree una clase que implementa la interfaz UserDetailsService de Security. Todo me funciona bien si hago ahí la autenticación de manera manual, es decir, si forzo a que el usuario y passw devuelto sea válido todo funciona bien. Así que la clase está bien estructurada, sin embargo si trato de usar un mapper de MyBatis para traer los datos de una BD parece que no se instancia la clase a pesar de que Spring si inyecta la misma al momento de crear el bean.
El código: Código:
public class HermesUserService implements UserDetailsService { |
Me contesto yo solo.
Ha quedado solucionado el problema. Lo que sucedía es que Spring no estaba inyectando ningún bean a la propiedad, si bien, durante la carga de los contextos de la aplicación si se creaban las instancias necesarias. El problema era el orden en que se estaban cargando los contextos y por ende creando los objetos. Lo único que había que hacer es forzar el orden de carga de los diferentes contextos para que el último en cargarse sea el contexto del servlet que usa Spring MVC. Esto lo indicamos en el archivo web.xml que es el que primero abre Spring. En mi caso quedó así: Código:
<context-param> Lo raro del asunto es que no se generaba ninguna excepción, o bueno si se genera pero la tenía que capturar yo mismo para poder saber siquiera que se estaba generando ya que si no lo hacía así al parecer alguna parte del framework se la estaba comiendo sin avisar siquiera. |
La franja horaria es GMT +2. Ahora son las 05:38:23. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi