Vale, ya se que era lo que ocurría. Resulta que en ambos proyectos, el archivo de configuración tenían el mismo nombre en el raíz de sus respectivos proyectos, de tal manera que al añadir un proyecto en el otro como dependencia y empaquetarlos en un jar, tenían el mismo nombre en la misma ruta y daban un conflicto entre ellos.
Hola,
soy un poco novato en esto, así que de antemano pido disculpa por cualquier disparate que pueda decir.
Hace cosa de un año trabajé en un proyecto MVP usando Spring, este proyecto dividía sus distintas capas en proyectos aislados, un proyecto para los Daos, otro para los servicios, etc. El caso es que cuando programaba, de lo unico que me tenia que preocupar era de la creación de los beans puesto que todo estaba ya configurado.
A día de hoy me estoy montando un proyecto personal con un desarrollo algo similar. El problema lo estoy teniendo a la hora de configurarl. Tengo un proyecto dao que se empaqueta como un .jar dentro de un proyecto servicio. En dicho proyecto Dao, tengo el xml de configuración de Spring en src/java/resources con un bean declarado de la siguiente manera:
bean name="claseDao" class="com.proyecto.package.ClaseDao"
y en el proyecto servicio, dentro del xml de configuración Spring tengo lo siguiente:
import resource="classpath:**/proyectoDao/springContext.xml"
bean name="claseService" class="com.proyecto.package.ClaseService">
<property name="claseDao" ref="claseDao"></property>
</bean
Este proyecto servicio también será empaquetado en un jar y será una dependencia para la parte de presentación de la aplicación.
El caso es que intente crear un bean del servicio y me salto el siguiente error
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'claseService' defined in class path resource [springContext.xml]: Cannot resolve reference to bean 'claseDao' while setting bean property 'claseDao'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'claseDao' is defined
A lo que entiendo que no consigue inyectar la clase dao al servicio mediante su correspondiente metodo setter porque no encuentra la clase para inyectarla, pero la clase si que existe en el proyecto dao.
Por mas que busco en google no encuentro la solución a resolver esto entre proyectos, o bien por mi falta de conocimiento y hacer malas pruebas o bien por mi ignorancia.
Agradecería muchísimo si alguien pudiese ayudarme con este problema .
Saludos.