Primeface スケジュール コンポーネントを使用していて、onEventMove イベントに問題があります。私のイベントハンドラーメソッドは次のとおりです。
public void onEventMove(ScheduleEntryMoveEvent event) {
/* I put the id of my object as data of schedule event
* while I constructed event model.
*/
String id = (String) event.getScheduleEvent().getData();
/* And when the move event occure, find my object by
* using the data of the moved event.
*/
MyObject myObject = myObjectManager.findMyObject(id);
/* MyObject also have two attributes, startDate and endDate
*/
Date startTime = myObject.getStartDate();
Date endTime = myObject.getEndDate();
/* I print out startDate and endDate of MyObject and
* new start date and end date of moved event
*/
System.out.println(startTime);
System.out.println(endTime);
System.out.println(event.getScheduleEvent().getStartDate());
System.out.println(event.getScheduleEvent().getEndDate());
}
ここでの問題は、出力が同じであることです。私はステートメントの出力を意味します:
System.out.println(startTime);
の出力と同じです
System.out.println(event.getScheduleEvent().getStartDate());
また、ステートメントの出力
System.out.println(endTime);
と同じです
System.out.println(event.getScheduleEvent().getEndDate());
誰かが私が間違っていることを教えてもらえますか?
myObjectManagerは EJB ステートレス セッション Bean のインスタンスであり、myObjectManager.findMyObject(id)のソース コードは次のとおりです。
public MyObject findMyObject(String id) {
return myObjectEAO.find(id);
}
myObjectEAOも EJB ステートレス セッション Bean のインスタンスであり、myObjectEAO.find(id)のソース コードは次のとおりです。
public MyObject find(String id) {
// em, here, is an instance of entity manager
return em.find(MyObject.class, id);
}