Necesito inyectar Spring beans en un convertidor JSF (Primefaces). Intenté inyectar frijoles usando EL resolver. Sin embargo, los granos son null
dentro de los convertidores.Cómo inyectar Spring Bean en el convertidor JSF
Mi convertidor de JSF:
public class DepartmentConverter implements Converter {
private DepartmentService departmentService;
//getter setter for this property
@Override
public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2) {
//codes
}
@Override
public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2) {
//Codes
}
}
faces-config.xml
:
<converter>
<converter-id>DepartmentConverter</converter-id>
<converter-class>com.studinfo.jsf.converter.DepartmentConverter</converter-class>
<property>
<property-name>departmentService</property-name>
<property-class>com.studinfo.services.DepartmentService</property-class>
<default-value>#{DepartmentService}</default-value>
</property>
</converter>
EL resolución:
<application>
<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
</application>
Cuando puedo depurar mi código, la propiedad es departmentService
null
. Puedo acceder a los beans de Spring dentro de un bean JSF administrado de la misma manera.