我的Action 是这样写的!
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
AddForm addForm = (AddForm) form;
Test test=new Test();//第17行
test.add(addForm);
return null;
}

解决方案 »

  1.   

    Test类是这样写的,能正确执行!
    public class Test {
    public Test(){
    System.out.println("???????????????????????");
    }
    public void add(ActionForm form){
    System.out.println("begin Test Class..........");
    AddForm addForm=(AddForm)form;
    String name=addForm.getName();
    String sex=addForm.getSex();
    String age=addForm.getAge();
    String classid=addForm.getClassid();
    Team team=new Team();
    team.setClassid(new Integer(classid));
    SessionFactory sf =new Configuration().configure().buildSessionFactory();
    Session session = sf.openSession();
    Transaction tx = session.beginTransaction();
    Student stu = new Student();
    stu.setName(name);
    stu.setSex(sex);
    stu.setAge(age);

    stu.setTeam(team);
    session.save(stu);
    tx.commit();
    session.close();
    }
    public void add(){
    System.out.println("add() begin Test Class..........");

    String name="dd";
    String sex="w";
    String age="12";
    String classid="101";
    Team team=new Team();
    team.setClassid(new Integer(classid));
    SessionFactory sf =new Configuration().configure().buildSessionFactory();
    Session session = sf.openSession();
    Transaction tx = session.beginTransaction();
    Student stu = new Student();
    stu.setName(name);
    stu.setSex(sex);
    stu.setAge(age);
    stu.setTeam(team);
    session.save(stu);
    tx.commit();
    session.close();
    }
    public static void main(String[] args){
    new Test().add();
    }}