NutzCN Logo
问答 批量修改报错,求解
发布于 3180天前 作者 qq_39c32e91 2057 次浏览 复制 上一个帖子 下一个帖子
标签:

25D5_tm_png

org.nutz.castor.FailToCastObjectException: Fail to cast from <java.lang.String> to <com.bw.ces.dao.bean.table.wlgl.TMateriel> for {0} because:
BorningException:Fail to born 'com.bw.ces.dao.bean.table.wlgl.TMateriel'
by args: [
@(0)]
at org.nutz.castor.Castors.cast(Castors.java:264)
at org.nutz.castor.Castors.castTo(Castors.java:318)

15 回复

入口方法不贴?

2644_tm_png
只能贴一张图不好意思

@wendal 2644_tm_png
只能贴一张图 不好意思

@qq_39c32e91 不要截图!!

@wendal 额 求教啊。大神

com.bw.ces.dao.bean.table.wlgl.TMateriel 这类需要无参数的构造方法

@wendal 刚才加了 还是报同样的错误

@qq_39c32e91 完整贴 入口方法及参数的类,回复框的菜单里面代码块

@wendal public class TMateriel {
/**
* 物料主键
/
@Id(auto = false)
@Prev({ @SQL(db = DB.ORACLE, value = "SELECT SEQ_T_MATERIEL.nextval FROM dual") })
private long materielPk;
/
*
* 机构主键
/
@Column("ORGPK")
private long orgPk;
/
*
* 货物名称
/
@Column("GOODS")
private String goods;
/
*
* 货物规格
/
@Column("SPEC")
private String spec;
/
*
* 数量
*/
@Column("QTY")
private int qty;

public TMateriel() {

}

public long getMaterielPk() {
    return materielPk;
}

public void setMaterielPk(long materielPk) {
    this.materielPk = materielPk;
}

public long getOrgPk() {
    return orgPk;
}

public void setOrgPk(long orgPk) {
    this.orgPk = orgPk;
}

public String getGoods() {
    return goods;
}

public void setGoods(String goods) {
    this.goods = goods;
}

public String getSpec() {
    return spec;
}

public void setSpec(String spec) {
    this.spec = spec;
}

public int getQty() {
    return qty;
}

public void setQty(int qty) {
    this.qty = qty;
}

}

@At("/update")
@Ok("json")
public Object update(HttpSession session,
@Param("::materiel_order") MaterielForm mform,
@Param("::materiel") ArrayList materiels) {

    try {
       // TODOS
       TMaterielOrder mOrder = new TMaterielOrder();
       boolean isUpdate = materielServiceOrder.isUpdateMord(session,
          mOrder);

       if (isUpdate) {
         return BjuiRespContent.successMsg("修改成功!", "ysgl_wlcrkd", "",
              "", true, "", "");
       } else {
         // 如果为假,则返回修改失败
         return BjuiRespContent.errorMsg("有人正在修改,请稍后刷新再试!",
              "ysgl_wlcrkd", "", "", false, "", "");
       }
    } catch (Exception e) {
       return BjuiRespContent.errorMsg("修改失败!", "ysgl_wlcrkd", "", "",
          false, "", "");
    }

}
方法入口

把生成的表单贴一下,目测是表单是问题

@wendal
public Object update(HttpSession session,
@Param("::materiel_order") MaterielForm mform,
@Param("::materiel") ArrayList materiels) {

入口是这个 不知到为什么刚刚那个复制会不同

@wendal
表单是一个没有错误
报的是TMateriel这个类的异常啊

@qq_39c32e91 说了用代码块包起来, 菜单里面有

贴生成的表单!!

你觉得没错,那还来问啥呢

@wendal 额 新手不太会用
@Param("::materiel_order") MaterielForm mform,
@Param("::materiel") ArrayList materiels
不过我知道原因了,是因为两个@param的前缀一样,框架匹配错误。
希望改进这个bug哦

添加回复
请先登陆
回到顶部