【问题标题】:JSF f:validateDoubleRange minimum="0" not working as expectedJSF f:validateDoubleRange minimum="0" 未按预期工作
【发布时间】:2016-01-05 14:28:46
【问题描述】:

我在 JSF/Richfaces 项目中有以下代码:

<h:inputText id="myValue" label="myValue" value="#{MyMB.value}">
  <f:validateDoubleRange minimum="0" />
  <rich:validator />
</h:inputText>
<rich:message for="myValue" />

现在我可以输入-1,但不能输入"bla bla bla"。 据我所知,-1 小于 0,所以我对这种行为感到困惑。

进入

<f:validateDoubleRange minimum="0.0" />

没有解决这个问题,但是

<f:validateDoubleRange minimum="0.01" />

确实如此。现在我不再被允许输入-1,但遗憾的是也不能输入0(在我的情况下是一个有效数字)。

有谁知道这是关于什么以及如何正确处理?

【问题讨论】:

  • 在哪里?我没有看到这种现象发生(使用 Mojarra 2.2.12)。 &lt;f:validateDoubleRange&gt; 完全按照预期完成工作。您碰巧使用什么 JSF 实现版本?绑定到值绑定表达式的 bean 属性的类型是什么?
  • 因为我必须使用 Glassfish 3.1.2.2,所以我使用的是 Mojarre 2.1.6 和 richfaces 4.3.7.Final。属性类型为“Double”
  • 这可能是该 JSF 实现版本中的一个错误。您可以在该版本的 GlassFish 中将其升级到相对较新的 Mojarra 版本 (2.1.xx)。

标签: validation jsf


【解决方案1】:

以下代码修复了它 - 但我同意 Tiny:这可能是一个错误 ...

<h:inputText id="myValue" label="myValue" value="#{MyMB.value}"> <f:validateDoubleRange minimum="0" /> <a4j:ajax status="status" event="change" execute="@this" render="myValue" /> <rich:validator /> </h:inputText> <rich:message for="myValue" />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 2021-06-04
    • 2022-01-24
    • 2015-05-11
    • 2020-05-15
    • 2014-10-31
    • 2018-02-12
    相关资源
    最近更新 更多