Utilisation de java.util.Map dans h: dataTable

J'ai besoin d'afficher Map à l'aide de <h:dataTable>. Mon backing bean a un Map propriété comme ci-dessous:

public class Bean {

    private Map<Integer,String> map; //+getter

    @PostConstruct
    public void init() {
        map = new TreeMap<Integer,String>();
        map.put(1,"Sasi");
        map.put(2,"Pushparaju");
        map.put(3,"Venkat Raman");
        map.put(3,"Prabhakaran");
    }

}

Puis dans la page JSF je suis en train d'essayer de lier ce Map propriété de la value attribut de <h:dataTable>.

 <h:dataTable border="1" value="#{bean.map}" var="map">
    <h:column id="column1">
        <f:facet name="header">
            <h:outputText value="UserId"></h:outputText>
        </f:facet>
        <h:outputText value="#{map.getKey}"></h:outputText>
    </h:column>
    <h:column id="column2">
        <f:facet name="header">
            <h:outputText value="Email Id"></h:outputText>
        </f:facet>
        <h:outputText value="#{map.getValue}"></h:outputText>
    </h:column>
</h:dataTable>

Il est donné en erreur getKey et getValue n'est pas présent. Je peux comprendre que ce n'est pas la bonne façon de le faire. Comment puis-je présenter une Map à l'aide de <h:dataTable>?

source d'informationauteur DRB