`
wangyanlong0107
  • 浏览: 499776 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

【转】struts ActionForm数据类型不匹配

 
阅读更多

报错信息:

java.servlet.ServletException: BeanUtils.populate

java.lang.IllegalArgumentException: argument type mismach

 

场景:

当页面数据提交时,有时会报这样的错 ,通常jsp 点击提交按钮时没有进入action 直接抛错,配置文件信息检查都正确

 

原因:

BeanUtils 填充时

参数类型不匹配 的意思

 

解决方案:

1、struts 动态上传文件使用<html:file>标签时,form标签需要加 enctype="multipart/form-data" 属性设置

2、查看页面数据类型,

例如:form 中的字段定义成Date 类型,页面也会出错,

可改为:

private Date brithday;
public String getBrithday() {
   return new SimpleDateFormat("yyyy-MM-dd").format(brithday);
}

public void setBrithday(String brithday) throws ParseException {
   this.brithday = new SimpleDateFormat("yyyy-MM-dd").parse(brithday);
}

 

转载:http://anxingyu.javaeye.com/blog/404278

分享到:
评论

相关推荐

    自己写的转换器,包含各种基本的数据类型。

    Struts1框架,作为一个经典的MVC(Model-View-Controller)框架,在处理用户输入与模型数据间的转换时,确实存在一定的局限性,它不像其后续版本Struts2那样内置了丰富的数据类型转换机制。因此,开发者往往需要...

    ActionForm里的get和set方法

    Struts框架在调用set方法时,会尝试进行类型转换,将字符串类型的请求参数转换为ActionForm中属性期望的数据类型。如果转换失败,例如用户输入的不是一个有效的数字,Struts会抛出一个TypeMismatchException。...

    struts项目源代码

    6. **异常处理**:文件上传过程中可能会出现各种异常,如文件过大、文件类型不匹配等,因此需要编写相应的错误处理逻辑。 7. **JSP页面设计**:在前端,你需要创建一个HTML表单,包含`enctype="multipart/form-data...

    struts1jar包

    Struts1是一个经典的Java Web开发框架,由Apache软件基金会维护,它基于Model-View-Controller(MVC)架构模式,为构建动态、数据驱动的Web应用程序提供了强大的支持。标题中的"struts1jar包"指的是Struts1框架所需...

    struts错误处理机制小例子

    开发者可以自定义校验规则,如非空检查、数据类型验证等。如果验证失败,Struts会将错误信息存储在ActionForm的字段中,并通过RequestDispatcher转发回错误页面,显示相应的错误信息。 2. **全局异常处理**:在...

    Struts Validator验证框架详细讲解.txt

    Struts Validator提供了一系列预定义的验证方法,这些方法封装在`org.apache.commons.validator.GenericValidator`类中,可以对各种数据类型进行验证: 1. **isBlankOrNull**:检查字段是否为空或null。 2. **...

    Struts2与Struts1.x的深度比较

    - **Struts2** 自动处理类型转换,包括日期、数字等复杂类型,大大减少了因类型不匹配导致的错误。 5. **异常处理** - **Struts1.x** 的异常处理相对原始,需要在配置文件中指定错误页面,处理方式较为繁琐。 - ...

    深入struts1核心思想.doc

    ActionForm是Struts1中处理用户输入的数据容器。在HTTP请求中,表单数据被封装到ActionForm对象中,通过反射和BeanUtils的转换器将这些数据复制到对应的业务对象属性上。如果需要自定义数据转换,可以通过注册转换...

    Struts2_Validation

    它定义了每个表单字段的验证规则,如非空检查、长度限制、数据类型检查等。 3. **Field-Level验证**:在Validation.xml中,可以为每个Form Bean的字段定义验证规则。例如,`&lt;field-name&gt;username&lt;/field-name&gt;`可以...

    基于struts2的登录源码,采用IDEA编写

    3. **ActionForm/ModelDriven**:在Struts2中,ActionForm类用于封装表单数据,但现在更推荐使用ModelDriven接口,它可以直接绑定到业务对象,简化了代码。 4. **拦截器(Interceptor)**:Struts2的拦截器机制允许...

    Struts1源码解析

    4. `processMapping()`根据URI匹配ActionMapping,找不到匹配项时返回错误信息。 5. `processActionForm()`处理ActionForm,根据ActionMapping创建或查找ActionForm实例,将请求数据绑定到ActionForm。 6. `...

    struts1与Struts2的流程

    如果不存在,创建新的`ActionForm`并填充数据。 - 验证表单数据,如果需要,调用`ActionForm`的`validate()`方法。 - 验证成功后,`ActionServlet`创建或获取`Action`实例,并调用其`execute()`方法。 - `execute...

    Struts2_CRUD.rar_Struts2_CRUD_Struts2的增改删查 操作 示例_struts2_struts2

    2. **ActionForm或POJO**:在早期的Struts2版本中,ActionForm用于收集和验证表单数据。现在,更常见的是直接使用简单的Java POJO对象来承载请求参数,减少了额外的封装层,简化了代码。 3. **JSP页面**:用于展示...

    struts1写的登陆注册增删改查

    Struts1 ActionForm可以收集表单数据,Action类处理这些数据,可能包括验证、转换和业务逻辑处理,最后通过DAO将数据存储到数据库中。 4. **文章的删除**:删除操作通常需要用户确认,一旦确认,Action类会根据传入...

    Struts---中文手册

    5. Struts配置文件:struts-config.xml是Struts的核心配置文件,定义了Action、ActionForm、数据源映射等信息。 二、Struts工作流程 1. 用户发起HTTP请求。 2. 请求被前端控制器(ActionServlet)拦截。 3. Action...

    Struts 结合 Validate框架验证详解

    `使Struts支Validator.doc`文档可能进一步详细介绍了如何在Struts项目中集成和使用Validate框架,包括如何创建自定义的验证器类型,以及如何处理复杂的验证逻辑。 总之,结合Struts和Validate框架可以实现高效且可...

    struts2_demo

    这些方法接收来自ActionForm的数据,处理业务逻辑,并返回一个表示结果的字符串,这个字符串与struts.xml中的结果类型匹配。 3. **ActionForm**:通常对应于HTML表单,用于封装用户的输入数据。在Struts2中,...

    struts底层代码

    在Struts中,XML配置文件(如struts-config.xml或struts2的struts.xml)用于定义动作映射、拦截器、结果类型等核心组件。解析XML是Struts框架启动时的重要步骤,它读取配置文件并构建出运行时的配置对象,这些对象...

    java面试知识点总结--Struts.pdf

    3. **Struts数据验证类型**: - 表单验证:发生在ActionForm Bean中,确保用户输入符合表单字段的要求。 - 业务逻辑验证:发生在Action中,基于特定业务规则进行验证。 4. **Form Bean的表单验证流程**: - 用户...

Global site tag (gtag.js) - Google Analytics