2012-03-03 63 views
0

我的一個bean方法有一個奇怪的問題。 如果我將日期數據類型從java.util.Date改爲java.sql.Dat e, 中的一個方法是我的managedBean調用actionEdit,但當我單擊jsf頁面中的按鈕時,未調用該方法。更改爲java.sql.Date時未調用Bean方法

我actionEdit()方法

public void actionEdit(){   
     try { 

      beanValues.add(selectedRow); 
      for (Schedule editValues : beanValues) { 
       editValues.setStartDate(selectedRow.getStartDate()); 
       editValues.setRemarks(selectedRow.getRemarks()); 

      } 
      ScheduleDAO.editSchedule(beanValues); 
      beanValues.clear(); 
     } catch (Exception e) { 
      // TODO: handle exception 
      logger.info("exception " + e.getMessage()); 
      e.printStackTrace(); 
     } 
    } 

,它被稱爲像下面

<p:commandButton value="Save" 
         action="#{schedule.actionEdit()}">             
         </p:commandButton> 

有什麼能爲這種現象的原因JSF?有任何想法嗎?

感謝

回答

1

將其改回java.util.Date和持久層只有使用java.sql.Date

另請參閱我對上一個問題的回答:Date Format Error java.sql.SQLException: Invalid column type

+0

謝謝,我會看看。但是,當我更改爲java.sql.Date時,爲什麼方法停止工作?根本不會被調用! – user75ponic 2012-03-03 17:40:08

+1

發生轉換失敗。閱讀服務器日誌或添加''查看缺少的錯誤消息。 JSF不能將字符串提交值轉換爲'java.sql.Date',只能轉換爲'java.util.Date'。 'java.sql.Date'只能在JDBC上下文中使用**,不能在模型中使用。 – BalusC 2012-03-03 18:28:50

+0

很好的解釋讓我明白。讚賞。 – user75ponic 2012-03-03 18:33:06

相關問題