title: javax.faces.FacesException: DataModel must implement org.primefaces.model.SelectableDataModel when selection is enabled
body: <p>I have another case for this issue which is, I have a model that extends a base entity and that base entity has property id. I've use that id as the rowKey and it throws this error. When I set rowKey's value to any property from the model (not the abstract base) the datatable works.</p>
  
  <p>Note that I'm working on JavaEE6.</p>
  
  <p>The models:</p>
  
  <pre><code>@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;
      } ..
  </code></pre>
  
  <p>The JavaEE6 bean:</p>
  
  <pre><code>@Stateless
  @Named
  public class UserAddressBean implements Serializable {
      private static final long serialVersionUID = -6104153017102665096L; 
  
      private List&lt;UserAddress&gt; addresses;
      private UserAddress address;
  
      public List&lt;UserAddress&gt; getAddresses() {
          addresses = new ArrayList&lt;UserAddress&gt;();
          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;
      }..
  </code></pre>
  
  <p>And the xhtml page:</p>
  
  <pre><code>&lt;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"&gt;
      &lt;ui:define name="content"&gt;
          &lt;h:form id="form"&gt;
              &lt;p:panel&gt;
                  &lt;f:facet name="header"&gt;&lt;/f:facet&gt;
                  &lt;p:dataTable id="addresses" var="address"
                      value="#{userAddressBean.addresses}" rowKey="#{address.id}"
                      selection="#{userAddressBean.address}" selectionMode="single"&gt;
                      &lt;p:column headerText="#{msg['field.description']}"&gt;
                          &lt;h:outputText value="#{address.description}" /&gt;
                      &lt;/p:column&gt;
                  &lt;/p:dataTable&gt;
                  &lt;f:facet name="footer"&gt;&lt;/f:facet&gt;
              &lt;/p:panel&gt;
          &lt;/h:form&gt;
      &lt;/ui:define&gt;
  &lt;/ui:composition&gt;
  </code></pre>
  
  <p>Any idea for the problem?</p>
  
  <p>Thanks,
  <br />czetsuya</p>