一个困扰我几天的struts2的问题!

Error setting expression 'age' with value '[Ljava.lang.String;@46a658'
ognl.MethodFailedException: Method "setAge" failed for object com.action.RegistAction@edec92 [java.lang.NoSuchMethodException: com.action.RegistAction.setAge([Ljava.lang.String;)]
问题描述:我用struts标签做的页面,页面有name(String),age(int),date(Date)三个字段,然后我什么都不填,直接提交
前几天我在javaeye的问答频道问了一个问题,但是我觉得应该是我问问题的方式不对,所以到现在还是没有答复,其实我觉得这是正常的,因为如果我碰到这样一个问题,就是只把一大推错误写在上面,然后让你去解决,感觉有点丈二和尚摸不着头脑,今天我仔细分析了下问题,发现问题的关键就是在于页面什么东西都没有,所以导致age字段转成int型时出错,这样就会导致报出以上错误!但是如果我在提交前先在age列任意填上一个数字(非数字也会同样的错误),他就会直接提交过去!虽然找到问题的关键所在,但是到目前为止,还是没有找到合适的解决方案!唯一的办法就是把age改为String类型的,但是这样就违背了实际处理问题的宗旨啊!碰巧的是我今天在做struts2的另外一个小程序的时候,正好也碰到同样的问题,只是这次那个变量变成了一个对象,后来,我试着把项目不用用myelipse自带的struts2.1,而是自己写struts.xml和web.xml文件,竟然惊奇的发现,竟然没有相关的错!不知道这算不算是MyEclipse的一个bug呢?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值