本人初学者,现在有一个user表,一个group表,注册user的时候需要选择相应group,提交注册封装user的时候会报错,因为user里面的group引用取不到值啊,怎么解决

解决方案 »

  1.   

    前台表单代码,spring mvc 控制器属性 get set 代码贴一下
      

  2.   

    @Entity
    @Table(name = "cdds_user")
    public class User extends BaseEntity implements java.io.Serializable{
    public static final String ALIAS_DEPARTMENT = "单位";

    public static final String ALIAS_ENABLED = "是否可用";
    public static final String ALIAS_ID = "id";
    public static final String ALIAS_NAME = "姓名";
    public static final String ALIAS_PASSWORD = "密码";
    public static final String ALIAS_USERNAME = "用户名";
    private static final long serialVersionUID = 5454155825314635342L;
    //alias
    public static final String TABLE_ALIAS = "User";

    //date formats
    private DepartmentInfo department;
        /**
         * enabled       db_column: enabled 
         */ 
    @NotNull 
    private java.lang.Boolean enabled;
        //可以直接使用: @Length(max=50,message="用户名长度不能大于50")显示错误消息
    //columns START
        /**
         * id       db_column: id 
         */ 

    private java.lang.Integer id;
        /**
         * name       db_column: name 
         */ 
    @NotBlank @Length(max=45)
    private java.lang.String name;
    //columns END
        /**
         * password       db_column: password 
         */ 
    @NotBlank @Length(max=45)
    private java.lang.String password; /**
         * username       db_column: username 
         */ 
    @NotBlank @Length(max=45)
    private java.lang.String username; public User(){
    } public User(
    java.lang.Integer id
    ){
    this.id = id;
    } public boolean equals(Object obj) {
    if(obj instanceof User == false) return false;
    if(this == obj) return true;
    User other = (User)obj;
    return new EqualsBuilder()
    .append(getId(),other.getId())
    .isEquals();
    } @ManyToOne
    public DepartmentInfo getDepartment() {
    return department;
    } @Column(name = "cdds_enabled", unique = false, nullable = false, insertable = true, updatable = true, length = 0)
    public java.lang.Boolean getEnabled() {
    return this.enabled;
    }

    @Id @GeneratedValue(generator="custom-id")
    @GenericGenerator(name="custom-id", strategy = "increment")
    @Column(name = "id", unique = true, nullable = false, insertable = true, updatable = true, length = 10)
    // @Id 
    // @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="cddsuser")
    // @SequenceGenerator(name="cddsuser",sequenceName="U_AUTOID")
    // @Column(name = "id", nullable = false, insertable = true, updatable = true, length = 10)
    public java.lang.Integer getId() {
    return this.id;
    }

    @Column(name = "cdds_name", unique = false, nullable = false, insertable = true, updatable = true, length = 45)
    public java.lang.String getName() {
    return this.name;
    }

    @Column(name = "cdds_password", unique = false, nullable = false, insertable = true, updatable = true, length = 45)
    public java.lang.String getPassword() {
    return this.password;
    }

    @Column(name = "cdds_username", unique = false, nullable = false, insertable = true, updatable = true, length = 45)
    public java.lang.String getUsername() {
    return this.username;
    }

    public int hashCode() {
    return new HashCodeBuilder()
    .append(getId())
    .toHashCode();
    }

    public void setDepartment(DepartmentInfo department) {
    this.department = department;
    }

    public void setEnabled(java.lang.Boolean value) {
    this.enabled = value;
    }

    public void setId(java.lang.Integer value) {
    this.id = value;
    }

    public void setName(java.lang.String value) {
    this.name = value;
    }
    public void setPassword(java.lang.String value) {
    this.password = value;
    }

    public void setUsername(java.lang.String value) {
    this.username = value;
    }

    public String toString() {
    return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
    .append("Id",getId())
    .append("Username",getUsername())
    .append("Password",getPassword())
    .append("Enabled",getEnabled())
    .append("Name",getName())
    .toString();
    }
    }
      

  3.   

    <input type="hidden" id="id" name="id" value="${user.id}"/> <tr>
    <td class="tdLabel">
    <span class="required">*</span><%=User.ALIAS_USERNAME%>:
    </td>
    <td>
    <form:input path="username" id="username" cssClass="required " maxlength="45" />
    <font color='red'><form:errors path="username"/></font>
    </td>
    </tr>

    <tr>
    <td class="tdLabel">
    <span class="required">*</span><%=User.ALIAS_PASSWORD%>:
    </td>
    <td>
    <form:password path="password" id="password" cssClass="required "  maxlength="45" />
    <font color='red'><form:errors path="password"/></font>
    </td>
    </tr>

    <tr>
    <td class="tdLabel">
    <span class="required">*</span><%=User.ALIAS_ENABLED%>:
    </td>
    <td>
    <form:radiobutton path="enabled" value="true"/>是
    <form:radiobutton path="enabled" value="false"/>否
    <font color='red'><form:errors path="enabled"/></font>
    </td>
    </tr>

    <tr>
    <td class="tdLabel">
    <span class="required">*</span><%=User.ALIAS_NAME%>:
    </td>
    <td>
    <form:input path="name" id="name" cssClass="required " maxlength="45" />
    <font color='red'><form:errors path="name"/></font>
    </td>
    </tr>

    <tr>
    <td class="tdLabel">
    <span class="required">*</span><%=User.ALIAS_DEPARTMENT%>:
    </td>
    <td>
    <form:select path="department" id="department" cssClass="required " items="${departments}"/> 
    <font color='red'><form:errors path="department"/></font>
    </td>
    </tr>
      

  4.   

    public String findAll(Map<String, Object> model,User user){
    List<DepartmentInfo> list = departmentinfoManager.findAll();
    List<String> newList = new ArrayList<String>();
    for(int i=0;i<list.size();i++)
    newList.add(list.get(i).getDepartmentName());
    model.put("departments", newList);
    return "/user/new";
    }