本来就只能转为动态ACTIONFORM.里面同样可以得到FORM的值.

解决方案 »

  1.   

    不对,我的TestForm是extends DynaActionForm, 而且我在TestForm里可以加入一些instance field;    protected ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)
                throws WbxException 
        {
            form.getClass(); //得到的Class是TestForm!        return null;
        }   
      

  2.   

    说明你对DynaActionForm还不是很了解。
    你如果想使用 TestForm testForm = (TestForm)form; 可以不使用DynaActionForm。
    共同使用就没有它意义了。
      

  3.   

    DynaActionForm daForm= (DynaActionForm)form; 
    TestForm testForm = (TestForm)daForm;
    不过此时的将失去使用DynaActionForm的灵活性.
      

  4.   

    DynaActionForm 不同于一般 ActionFrom 之处就是 DynaActionForm的属性.
    可以在配置文件中配置.  如果属性有所改变代码是不需要改的. 因为它是通过 get(?) 来取值的。
    DynaActionForm 是通过反射来实例化对象的. 所以它生成的对象并不是某个具体的类型(TestForm)
    所以也就不能转型.