<form-bean name="asfForm" type="com.bu.test.adf" /> <action-mappings >
    <action
      attribute="asfForm"
      input="/form/asf.jsp"
      name="asfForm"
      path="/asf"
      scope="request"
      type="com.yourcompany.struts.action.AsfAction" />    public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
adf asfForm = (adf) form;// TODO Auto-generated method stub //谁能告诉我为什么 这行报错 并且说我form不能强转成asf类型,这里的adf 是我的Bean类, 我在生成form的时候选择的是已存在的表单bean 
return null;
}
   // 从来没遇到过这样的事情 那位兄弟告知原因 感谢

解决方案 »

  1.   

    你的bean类命名  头字母大写
      

  2.   

    类名首字母大些。你的bean类型com.bu.test.adf是否继承了struts的ActionForm类。
      

  3.   

    adf没有继承actionForm ?? 
      

  4.   

    actionForm 可以直接转实体类???
    我用的是BeanUtilsHelper.copyProperties(对象, 来源);
      

  5.   

    1.大写
    2.继承ActionForm
    如果你是采用模板生成的话,应该都可以避免了!
      

  6.   

    因为在项目中 遇到了这个问题  所以 随便建个工程来测试 所以Bean的名字 是随便起得 觉对有问题的 我就是想知道 为什么我自动生成的Action类中 会报 ActionForm form 类型参数 无法被我自定义的Bean类型 强制转换 struts1.3 不是有3中form 类型吗  一种的 生成的 一种是 已存在的 还有一种是动态的 我用的第二种 已存在的 bean来当我的form 这样的话 我就可以提交信息后 在 Action 类中,利用我的Bean类型 来get得到我需要的信息
      

  7.   

    你们还是没有回答我的问题 为什么 创建的Action类 回报这个错 是我那没配置好 还是框架本身这个就有问题 你们也可以试下 然后告诉我声  万分感谢 其实 这也不是什么大问题 可以使用动态form  但是取值的话 就要一点一点的request.getParameter("")来逐个取了 这很麻烦 我认为 如果 有什么好方法 也请告知!!
      

  8.   


    public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
    Abc showForm = (Abc) form;// TODO Auto-generated method stub 
    //你们说的我都是照着做的 可是 这个地方还是报错 类型无法强制转换  Abc 是我的form类型 创建的时候也继承了ActionForm ,可还是报错 
    return null;
    }
    //非常希望知道答案 
      

  9.   

    这个问题应该很明显了struts自动组装form的时候,是根据config配置文件中读的。也就是说你的配置文件中的fromBean写的不是Abc这个,所以强行转的时候报类型错误配置的时候一定要小心。这也是你命名不规范导致的。命名不规范的话,逻辑再好的代码,也是稀烂.希望能帮到你
      

  10.   

    1.fromBean继承ActionForm,检查
    2.AsfAction继承Action,检查
    3.贴出fromBean和AsfAction的代码来,异常信息来
    4.打印adf asfForm = (adf) form
    这里的form到底是什么类型的?