integracion Spring 3 con JSF 2
buenas tardes,
estoy tratando de integrar spring mvc con jsf 2, pero tengo un error con la inyección del bean de spring en el managed bean del jsf, si alguien tiene un ejemplo claro de esta integracion usando las anotaciones,
muchas gracias.
este es el error que me aroja:
com.sun.faces.mgbean.ManagedBeanCreationException: No se puede crear el bean administrado institucionController. Se han encontrado los problemas siguientes:
- No existe la propiedad institucionDao para el bean administrado institucionController.
- Inicie sesión o regístrese para enviar comentarios



Pregunta
Quieres inyectar los beans de Spring en los Managed Bean de JSF?? Eso se logra agregando una linea de configuración al faces-config.xml:
De esta manera pudes usar las sessiones que ofrece JSF2 (Request, Session, Aplication, View), ejemplo:
@ViewScoped
public class ControladorBean implements Serializable {
//Aqui se inyecta el bean dao de Spring
@ManagedProperty(value = "#{dao}")
private Dao dao;
@SuppressWarnings("unused")
@PostConstruct
private void init() {
//Aqui se inicializan valores despues de la inyección, no confundir con el constructor
}
//Setters y Getters de tus propiedades
public void setDao(Dao dao) {
this.dao = dao;
}
}
he tratado de realizarlo asi
he tratado de realizarlo asi pero no me funciona, me dice No existe la propiedad dao, mis dao los implemente asi:
public class Dao extends GenericoDao<Institucion> implements DaoInterface {
.....
}
mi daogenerico es:
protected EntityManager em = null;
@PersistenceContext
public void setEntityManager(EntityManager em) {
this.em = em;
}
mmmmmm
Trata de anotar tu DAO de esta manera:
public class Dao extends GenericoDao<Institucion> implements DaoInterface {
No uses el value!!!
También falta que escanees tus bean de spring en el aplicationContext.xml asi:
<context:component-scan base-package="com.empresa.proyecto" />