javax.des visages.FacesException: DataModel doit mettre en œuvre org.primefaces.de modèle.SelectableDataModel lorsque la sélection est activée

J'ai un autre cas pour cette question, j'ai un modèle qui s'étend d'une entité de base et que l'entité de base a un id de propriété. J'ai utiliser ce code comme rowKey et il met cette erreur. Lorsque j'ai mis rowKey de la valeur à une propriété du modèle (pas la base abstraite) de la datatable œuvres.

Noter que je suis en train de travailler sur JavaEE6.

Les modèles:

@Entity
@SequenceGenerator(name = "ID_GENERATOR", sequenceName = "USER_ADDRESS_SEQ")
public class UserAddress extends BaseEntity { //.. }

@MappedSuperclass
public abstract class BaseEntity implements Serializable, IEntity {
    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(generator = "ID_GENERATOR")
    @Column(name = "ID")
    private Long id;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    } ..

La JavaEE6 bean:

@Stateless
@Named
public class UserAddressBean implements Serializable {
    private static final long serialVersionUID = -6104153017102665096L; 

    private List<UserAddress> addresses;
    private UserAddress address;

    public List<UserAddress> getAddresses() {
        addresses = new ArrayList<UserAddress>();
        UserAddress temp = new UserAddress();
        temp.setDescription("test");
        addresses.add(temp);

        temp = new UserAddress();
        temp.setDescription("test");
        addresses.add(temp);

        return addresses;
    }

    public UserAddress getAddress() {
        return address;
    }

    public void setAddress(UserAddress address) {
        this.address = address;
    }..

Et la page xhtml:

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    template="/shared/page/_oneColumn.xhtml">
    <ui:define name="content">
        <h:form id="form">
            <p:panel>
                <f:facet name="header"></f:facet>
                <p:dataTable id="addresses" var="address"
                    value="#{userAddressBean.addresses}" rowKey="#{address.id}"
                    selection="#{userAddressBean.address}" selectionMode="single">
                    <p:column headerText="#{msg['field.description']}">
                        <h:outputText value="#{address.description}" />
                    </p:column>
                </p:dataTable>
                <f:facet name="footer"></f:facet>
            </p:panel>
        </h:form>
    </ui:define>
</ui:composition>

Une idée du problème?

Grâce,

czetsuya

OriginalL'auteur czetsuya | 2012-10-24