struts2中jsp向action提交list对象中的问题
我的list由action传过来,在修改后再次提交到action,可是问题来了,由于list中所保存的对象是我自己写的user类,其中包括一个int型的变量,当我在页面不...
我的list由action传过来,在修改后再次提交到action,可是问题来了,由于list中所保存的对象是我自己写的user类,其中包括一个int型的变量,当我在页面不输入任何值时,系统报错如下:
WARNING: Error setting expression 'userList[0].amount' with value '[Ljava.lang.String;@31d5e2'
我自己写的拦截器拦截的参数如下:
key=userList[0].amount, value=
很明显是因为当在jsp中不输入任何值时,amount被当作string处理了,请问由什么方法可以解决么?
1楼的做法可以,但是这就违背了我设计这个user类的初衷,amount一定是int来的,而且我也不可能手动去在拦截器写类型转换,一旦我int型的变量多了,那一天忘了写不就麻烦了?
2楼,已映射,我不能在action里组装,问题是组装这个动作struts2已经做了,但是发觉有问题,然后出警告
3楼,我已预置缺省值,但是依然出warning
我完全可以忽视该警告,因为系统并没有报错,也不能令系统出什么问题,我只是想想有误办法可以通过配置什么解决掉,如果一定要写代码,我宁愿在拦截器里写类型转换 展开
WARNING: Error setting expression 'userList[0].amount' with value '[Ljava.lang.String;@31d5e2'
我自己写的拦截器拦截的参数如下:
key=userList[0].amount, value=
很明显是因为当在jsp中不输入任何值时,amount被当作string处理了,请问由什么方法可以解决么?
1楼的做法可以,但是这就违背了我设计这个user类的初衷,amount一定是int来的,而且我也不可能手动去在拦截器写类型转换,一旦我int型的变量多了,那一天忘了写不就麻烦了?
2楼,已映射,我不能在action里组装,问题是组装这个动作struts2已经做了,但是发觉有问题,然后出警告
3楼,我已预置缺省值,但是依然出warning
我完全可以忽视该警告,因为系统并没有报错,也不能令系统出什么问题,我只是想想有误办法可以通过配置什么解决掉,如果一定要写代码,我宁愿在拦截器里写类型转换 展开
6个回答
展开全部
<s:textfield value="%" />
<s:textfield value="$" />
<s:textfield value="#username" />
都试试,看哪个可以
<s:textfield value="$" />
<s:textfield value="#username" />
都试试,看哪个可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我跟楼主出的同样问题。user.id为int类型,缺省值时报NoSuchMethod setId(Ljava.lang.String)。改变setId方法为setId(String id) {this.id = Integer.ValuesOf(id)}后报错。
感觉Struts的默认转换器不能把对象转换成基本数据类型。不知道是不是这样。
感觉Struts的默认转换器不能把对象转换成基本数据类型。不知道是不是这样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你通过user 类进行映射的吧,如果有字段没有映射,会报错,尽量把字段都写全,
如果实在不行,只能通过字段映射,在你的action里再组装你的user 类
如果实在不行,只能通过字段映射,在你的action里再组装你的user 类
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
转换类型 就是 int和String之间的转换 在类里面就可以转换了 getString
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为什么不借助于 js呢, 如果 amount 处理空格后 为 "" 那就 赋给他 0 呗!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询