小编Swi*_*ety的帖子

JSF如何临时禁用验证器来保存草稿

我有一个非常复杂的形式,有很多输入和验证器.对于用户来说,完成该操作需要相当长的时间(甚至超过一小时),因此他们希望能够保存草稿数据,即使它违反了未输入的必填字段等规则.

我相信这个问题在许多Web应用程序中很常见,但是找不到任何公认的模式应该如何实现.你能告诉我如何实现这个目标吗?

现在我可以看到以下选项:

  1. 在"保存草稿"按钮上使用immediate = true不起作用,因为UI数据不会存储在bean上,所以我将无法访问它.从技术上讲,我可以在UI组件树中找到数据,但遍历这似乎不是一个好主意.
  2. 从页面中删除所有字段验证,并在为表单定义的动作侦听器中验证程序数据.再一次,不是一个好主意,形式真的很复杂,有很多字段,所以验证实现这种方式会非常混乱.
  3. 实现我自己的验证器,它将由一些请求属性控制,该属性将被设置为标准表单提交(预期完全验证),并且将被设置为"另存为草稿"提交(当应该跳过验证时).同样,不是一个好的解决方案,我需要为我正在使用的所有验证器提供我自己的包装器.

但是你看,没有人真的合情合理.这个问题真的没有简单的解决方案吗?

validation jsf

12
推荐指数
1
解决办法
2915
查看次数

mercurial - 查看分支上的更改,忽略所有合并提交

我有一个很长一段时间开发的分支.在开发期间,默认分支已多次合并到该分支中.我现在想要检查在该分支上完成的所有更改,忽略合并,以确定将其合并为默认值是否安全.

我试过了

hg diff -r "branch('myBranch') - merge()"

但它仍然显示合并引入的变化.也试过下面这如何显示具体到一个名为分支中DIFF善变,但

hg diff -r "branch('myBranch') - branch('default')"

仍然带来合并带来的变化.

diff mercurial branch branching-and-merging

9
推荐指数
2
解决办法
5073
查看次数