experiment5.dataStruct.MeetingData 必须有一个默认构造函数 也就是 public MeetingData (){} 这样的函数,
因为  以后  unmarshal  的时候  是 用类似 Class.forName("experiment5.dataStruct.MeetingData").newInstance().readObject(in);这样的方式来恢复对象状态的 ,这个时候没有任何参数传入。

解决方案 »

  1.   

    我给MeetingData加了构造函数还是不行啊
    public class MeetingData implements java.io.Serializable{  public int meetingID;   //会晤id  public Timestamp start;     // 起始时间  public Timestamp end;      // 结束时间  public String label;           //会晤标题  public String initedUser;      // 会晤发起者  public String bookedUser;     // 会晤对象  public MeetingData() {  }
      public MeetingData(int meetingID, String initedUser, String bookedUser,
                     Timestamp start, Timestamp end, String label) {
        this.meetingID = meetingID;
        this.initedUser = initedUser;
        this.bookedUser = bookedUser;
        this.start = start;
        this.end = end;
        this.label = label;
      }  public void dispalyMeeting() {
        System.out.println(meetingID + "   " + initedUser + "   " +
                           bookedUser + "   " + start.toString() + "   " +
                           end.toString() + "   " + label);
      }}
      

  2.   

    既然楼主知道使用VO的模式,那怎么会进行不下去呢?:)
    这里建议你不要在你的MeetingData使用构造函数,这是个不好的思维
    你可以在你的记录集的循环中使用:
    ArrayList list=new ArrayList();
     while(rst.next()) {
      MeetingData data=new MeetingData();
      data.setXXX(rs.getString("xxx"));
      .....
      list.add(data);
    }
    这样不是很好吗?