弹簧预填充形式不起作用

时间:2015-04-13 12:39:16

标签: java spring forms

我创建了一个基于表单对象的表单 我预填充表单对象然后显示它,但是显示了一些字段而其他一些字段没有。
这是一个产生问题的字段的例子:

JSP:

<tr>
        <td class="label"><a class="required"></a><spring:message code="service.userNumber" /></td>
        <td class="value">
                <form:select path="userNumber">
                    <form:option label="" value="" />
                    <form:options items="${serviceModelList}" itemLabel="description" itemValue="description" />
                </form:select>
                <form:errors path="userNumber" cssClass="errormsg" />
        </td>
</tr>

表单对象的一部分:

@NotEmpty
private String userNumber;

 public DeviceRequestForm(IDeviceRequest deviceRequest) {
    this.id = String.valueOf(deviceRequest.getId());
    this.site = deviceRequest.getSite();
    this.category = deviceRequest.getServiceCategory().getDescription();
    this.userNumber = deviceRequest.getServiceModelDescription(); //this is not null
    this.validator = deviceRequest.getValidator().getUsername();
    this.status = deviceRequest.getStatus();
    if (deviceRequest.getDeviceModel() != null) {
        this.deviceModel = deviceRequest.getDeviceModel().getModel();
    }
}

public String getUserNumber() {
    return userNumber;
}

public void setUserNumber(String userNumber) {
    this.userNumber = userNumber;
}

我的控制器的一部分:

uiModel.addAttribute(WebConstants.DEVICE_REQUEST_FORM, new DeviceRequestForm(deviceRequest));
return ViewConstants.NEW_REQUEST_DEVICE_VIEW;

1 个答案:

答案 0 :(得分:0)

找到解决方案,

要预先填充表单:选择您必须提供一个包含

内所需值的列表

示例:

如果您想使用值“TOTO”预填充表单 你必须在列表中有“TOTO”值