me gustaría utilizar las anotaciones JSF y algunas de primavera anotaciones para inyectar un grano de primavera/servicio en un grano de JSF administrados. (en el jan de jsf solo quiero usar las anotaciones jsf) No quiero usar anotaciones como @named
/@inject
.JSF 2 inyecte primavera frijol/servicio con @ManagedProperty y sin xml
He intentado encontrar una solución en la red pero sin suerte.
Ejemplo
@ManagedBean
@ViewScoped
public class MyBean {
@ManagedProperty(value = "#{mySpringBean}")
private MySpringBean mySpringBean;
public void setMySpringBean(MySpringBean mySpringBean) {
this.mySpringBean = mySpringBean;
}
public void doSomething() {
//do something with mySpringBean
}
}
es algo como esto posible sin el uso de XML. Por ejemplo, no me gustaría usar algo como
FacesContextUtils.getWebApplicationContext(context).getBean("MySpringBean");
o en faces-config.xml
<managed-bean>
<managed-bean-name>myBean</managed-bean-name>
<managed-bean-class>com.mytest.MyBean</managed-bean-class>
<managed-bean-scope>view</managed-bean-scope>
<managed-property>
<property-name>mySpringBean</property-name>
<value>#{mySpringBean}</value>
</managed-property>
</managed-bean>
es algo así como lo anterior es posible con anotaciones y sin la definición de todos los granos jsf/propiedades y la primavera beans/propiedades para cada bean en los archivos config xml?
Es curioso, yo utilizar este método de inyección y funciona para mí, pero entonces yo también incluir la inyección propiedad en mi 'applicationContext.xml' también. El Spring EL resolver no parece funcionar con beans ViewScoped que he notado. Intente cambiar esto a SessionScoped y vea si la propiedad se inyecta. –
Quiero evitar el applicationContext.xml (soy un poco obstinado, gracias) Pero gracias :) – Dimman