2016-07-28 36 views
0

我正在學習JavaEE,並尋求一些幫助。我試圖從Derby數據庫表中獲取所有記錄以顯示在xhtml頁面(dataTable)上。我收到了這個錯誤「java.lang.ClassCastException:java.util.Vector不能轉換爲java.util.ArrayList」。java.lang.ClassCastException:java.util.Vector不能轉換爲java.util.ArrayList

  1. 有人可以解釋錯誤,我需要如何解決它?
  2. 如何觸發數據表只有在單擊「打印」按鈕時纔會顯示? 在此先感謝

我命名查詢:

NamedQueries({ @NamedQuery(name = 「getAllItemActivities」,查詢= 「從LibraryItemActivity C選擇C」) })

我的bean管理器:

private ArrayList activities;

公衆的ArrayList getActivities(){

return control.getActivites(); 

}

我的控制豆:

公衆的ArrayList getActivites(){

ArrayList<LibraryItemActivity> temp = (ArrayList<LibraryItemActivity>) em.createNamedQuery("getAllItemActivities").getResultList(); 

    return temp; 

}

我的HTML數據表:

<h:form> 
    <h:commandButton value = "Print"></h:commandButton> 
    <h:dataTable value = "#{libraryBeanManager.activities}" var = "a"> 
     <h:column> 
      <f:facet name="header">Book Title:</f:facet> 
      #{a.libraryitemtitle} 
     </h:column> 
     <h:column> 
      <f:facet name="header">Author:</f:facet> 
      #{a.patron} 
     </h:column> 
     <h:column> 
      <f:facet name="header">Publisher:</f:facet> 
      #{a.activitytype} 
     </h:column> 
    </h:dataTable> 
</h:form> 

回答

相關問題