zhengqx123456
zhengqx123456
2010-11-30 15:35
浏览 242
已采纳

struts2 数据类型转换

最近在做一个ssh2项目
action 中用domain model
public baseService bs;
public saleslipinputservice ss;
public syukoInputDto syukodto
其中 syukoInputDto 为一domain model
syukoInputDto :
private String actionKbn;
private TkrClientTbl client;
private TkrCurTbl curr;
private String errmsg;
private String flg;
private TkrSyukoTbl syukotbl;
TkrSyukoTbl 为一实体bean
里面有string 类型int类型 double类型数据字段
考虑到string到double转换struts2可能有问题
加了一个转换类
public class DoubleConvert extends StrutsTypeConverter {

@Override  
public Object convertFromString(Map context, String[] values, Class toClass) {   
    if (Double.class == toClass) {   
        String doubleStr = values[0];   
        if (doubleStr.length()==0){
            return 0;
        }
        Double d = Double.parseDouble(doubleStr);   
        return d;   
    }   
    return 0;   
}   

@Override  
public String convertToString(Map context, Object o) {   
    return o.toString();   
}   

}
在jsp页面中先用ajax方式查询TkrSyukoTbl
查询结果放在jsp页面、再修改、提交
但提交时没有到达action中的相应方法
大概在struts2的数据类型转换拦截器、或set方法时就出错了
也没有出错提示、直接跳转到刚才的登录jsp
且文本框为空
但是我不用ajax方式查数据、而是直接在文本框中填数据、
则能跳到相应的action方法
不知为何?
各位是否碰到类似问题?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • luxixi3600
    luxixi3600 2010-11-30 18:31
    已采纳

    你看看请求ajax返回来的东西是什么吧,我估计会不会返回的不是值,而是某个页面的全部代码。

    点赞 评论
  • luxixi3600
    luxixi3600 2010-11-30 17:13

    我曾经用ajax的时候遇到过这样的事情,
    就是spring再注入的时候,配置return一般用success然后到一个页面或者其他什么的,
    但是使用ajax的时候,这个地方不需要写return,你试试把return删掉看看行不行。

    点赞 评论

相关推荐