2011-12-30 79 views

回答

9

在一些情況下,當你需要一個bean如ManagedBean,EJB等注入到ConverterValidator,你可以試試你的標註或Converter作爲Validator一個ManagedBean。例如,你可以試試這個:

@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看一看爲例對Validator

+6

+1我還會注意到'Converter'必須通過託管bean值綁定表達式引用,而不是通過註冊的轉換器ID引用。 – McDowell 2011-12-30 10:11:02

+0

感謝它現在非常好:) – djmj 2012-01-06 01:40:20