在我的 Roo 项目中,我想添加允许用户更改密码的表单。我希望表单有 3 个字段:当前/新/重复密码,因此由于字段及其验证不匹配,我无法使用我用来保存帐户数据的实体。
看来我可以使用任何类作为脚手架控制器的表单(通过--backingType
of web mvc scaffold
),但由于某种原因,它不适用于我的自定义表单字段。
我的项目配置如下:
project --topLevelPackage com.test --projectName temp --java 6 --packaging JAR
persistence setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY
web mvc setup
账户实体:
entity jpa --class com.test.domain.Account
field string --fieldName name
field string --fieldName password
更改密码表格:
class --class ~.form.ChangePasswordForm
field string --fieldName currentPassword
field string --fieldName newPassword
field string --fieldName repeatPassword
这会按预期生成控制器和视图:
web mvc scaffold --class com.test.web.AccountController --backingType ~.domain.Account
这只会创建空控制器,根本没有视图:
web mvc scaffold --class com.test.web.ChangePasswordFormController --backingType ~.form.ChangePasswordForm
所以,我的问题是为什么 Roo 在第二种情况下没有脚手架控制器/视图,以及用 Roo 处理这种场景的最佳方法是什么?