Spring mvc Spring mvc从枚举中选择-选定值问题

Spring mvc Spring mvc从枚举中选择-选定值问题,spring-mvc,Spring Mvc,我正在尝试使用带有枚举值的SpringMVC表单选择。我无法输入所选的值 这是枚举: public enum MessagesType { SL(4, 0, 9000000, 9999999), BL(1,2, 1000000, 1999999); private Integer moduleCode; private Integer subModuleCode; private Integer rangeMin; private Integer rangeMax; Mes

我正在尝试使用带有枚举值的SpringMVC表单选择。我无法输入所选的值

这是枚举:

public enum MessagesType {

SL(4, 0, 9000000, 9999999), 
BL(1,2, 1000000, 1999999);

private Integer moduleCode;

private Integer subModuleCode;

private Integer rangeMin;

private Integer rangeMax;

    MessagesType(Integer moduleCode, Integer subModuleCode, Integer rangeMin, Integer rangeMax) {
        this.moduleCode = moduleCode;
        this.subModuleCode = subModuleCode;
        this.rangeMax = rangeMax;
        this.rangeMin = rangeMin;
    }

... (getters ans setters)
这是表单调用:

<td><form:label path="type">message type:</form:label></td>
                <td>
                    <form:select path="type"  items="${messagesTypes}" itemValue="${messageEditContextDto.type}" />
                </td>
我得到一个例外: org.springframework.beans.NotReadablePropertyException:bean类[com.sapiens.alis.updater.domain.enums.MessagesType]的属性'SL'无效:bean属性'SL'不可读或具有无效的getter方法:getter的返回类型是否与setter的参数类型匹配

请帮忙


感谢Idob

这是通常获取枚举值的方式。为了简单起见,我对你的代码做了一些修改

public enum MessagesType {
    SL("4"), 
    BL("2");

    private String value;

    private MessagesType(String theValue) {
        this.value = theValue;
    }

    public String getValue() {
        return this.value 
    }
}
表格电话:

    <td><form:label>message type:</form:label></td>
    <td>
          <form:select path="type">
              <!-- Characters edition-->
              <c:forEach var="item" items="${MessagesType.values}">
                  <form:option value="{item.value}"><spring:eval expression="item"/></form:option>
              </c:forEach>
          </form:select>
    </td>
消息类型:
这将给你一些关于如何实现目标的想法

    <td><form:label>message type:</form:label></td>
    <td>
          <form:select path="type">
              <!-- Characters edition-->
              <c:forEach var="item" items="${MessagesType.values}">
                  <form:option value="{item.value}"><spring:eval expression="item"/></form:option>
              </c:forEach>
          </form:select>
    </td>