gpt4 book ai didi

java - Spring 尝试绑定(bind)所有字段

转载 作者:行者123 更新时间:2023-12-04 06:45:53 30 4
gpt4 key购买 nike

使用 Spring 3

我有两种形式:添加项目和无效项目
我有 ItemAddEditCommand 引用 Item 和一些其他数据。

添加项目效果很好,但我在使项目无效时遇到问题。一般来说,它是一个包含两个表单字段的编辑表单——expirationDate 和comment。

在 Controller 中,我对这两个操作使用相同的命令。不幸的是,当我无效时,Spring 会尝试绑定(bind)所有字段。当开始无效时,我用填充了所有可能字段(包括 id)的 Item 实例填充 ItemCommand

当用户插入 expireDate 和 comment 并提交表单时,除 expiresDate 和 comment 之外的所有其他字段都为空。

除了创建另一个命令还有其他方法吗

最佳答案

我想我找到了。

@InitBinder(value = { INVALIDATE_ITEM_PARAM })
protected void initInvalidateItemBinder(WebDataBinder binder) {
DefaultBindInitializer.initBinder(binder);
binder.setAllowedFields("expireDate", "comment");
binder.setValidator(validator);
}

顺便提一句。也许任何人都可以给我指点如何摆脱 DefaultBindInitializer.initBinder(binder);初始化一些应该始终使用的属性编辑器。也许一些 bean 使它成为默认值,所以我不必一直调用这个方法。

关于java - Spring 尝试绑定(bind)所有字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3776419/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com