如何将托管bean的属性注入自定义转换器?
例如,一个通用List,以便我可以从转换器内的列表中提取我的对象?
答案 0 :(得分:9)
在某些情况下,当您需要将一个bean(如ManagedBean,EJB等)注入Converter
或Validator
时,您可以尝试注释Converter
或{{ 1}}作为ManagedBean。例如,您可以尝试:
Validator
您可以在@ManagedBean
@RequestScoped
public class MyConverter implements Converter {
@EJB
private MrEJBBean mrEJBBean;
@ManagedProperty(value="#{mrsManagedBean}")
private MrsManagedBean mrsManagedBean;
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
// Convert to object
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
// Convert to string
}
}
上查看this示例。