首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

Cannot invoke cn.hakim.web.formbean.projectinfo.DocumentsForm.setPrivacy,该如何解决

2014-01-03 
Cannot invoke cn.hakim.web.formbean.projectinfo.DocumentsForm.setPrivacy错误类型字段 是在一个类里面

Cannot invoke cn.hakim.web.formbean.projectinfo.DocumentsForm.setPrivacy
错误类型字段 是在一个类里面定义的


代码 

package cn.hakim.bean.project;

public enum Privacy {
NOTENCRYPTED{
public String getName(){
return "不加密";
}
},
CONFIDENTIAL{
public String getName(){
return "机密";
}
},
TOPSECRET{
public String getName(){
return "绝密";
}
};
public abstract String getName();
}



下面是 这个表的尸体类

//保密级别
private Privacy privacy = Privacy.NOTENCRYPTED; 默认给这个给他。

@Enumerated(EnumType.STRING)
@Column(length = 13, nullable = false)
public Privacy getPrivacy() {
return privacy;
}
public void setPrivacy(Privacy privacy) {
this.privacy = privacy;
}


Form类里

  private Privacy privacy;

  public Privacy getPrivacy() {
    return this.privacy;
  }

  public void setPrivacy(Privacy privacy) {
    this.privacy = privacy;
  }



下面是修改界面 的代码,就是点击 修改提交 的时候包错误。

<tr style="display:none;">
                             <th>保密级别</th>
                             <td alt="Cannot invoke cn.hakim.web.formbean.projectinfo.DocumentsForm.setPrivacy,该如何解决" />
目测 枚举有问题
[解决办法]
我觉得可能是这样的
privacy是一个枚举类型
而你的value是CONFIDENTIAL
CONFIDENTIAL是一个字符串
把radio里的value改成
privacy.NOTENCRYPTED
privacy.CONFIDENTIAL
privacy.TOPSECRET

热点排行