从JSF组件验证错误未渲染

我有了一个需要在编辑模式和当创建模式下拉列表中选择要呈现为只读值,当字段的形式。

只读域(在编辑模式下使用)使用作为纯文本<h:outputText> 在创建模式中,现场呈现<h:selectOneListbox>有“真”的必要属性。

似乎如我所期望的大部分时间工作,但偶尔我得到验证错误时,在编辑模式(选择列表框中没有渲染)。

下面是与他们提供的属性定义的两个字段组使用相同的布尔值的代码片段(只是一个字段否定布尔切换)。

<h:outputLabel id="lblBusinessArea" value="Business Area:" /> <h:panelGroup id="baGroup"> <h:selectOneListbox id="businessAreaList" size="1" rendered="#{shiftDetailsController.canEditBusinessArea}" converter="businessAreaConverter" value="#{shiftDetailsController.selectedBusinessArea}" label="Business Area" required="true"> <f:selectItems id="businessAreaListItems" value="#{shiftDetailsController.businessAreas}" /> <a4j:support id="businessAreaA4j" event="onchange" ajaxSingle="true" reRender="deploymentGroupList, positionPayGroupList, sapPremCodeList" /> </h:selectOneListbox> <h:outputText id="businessAreaRO" rendered="#{!shiftDetailsController.canEditBusinessArea}" value="#{shiftDetailsController.selectedBusinessArea.busAreaDesc}" /> </h:panelGroup>

下面是表示字段(编辑模式),为只读渲染屏幕剪辑。 “保存”按钮被点击,我得到所需领域的一个验证错误消息。

  1. 该值应该在那里的支持bean,因为显示的值是从同一个对象(shiftDetailsController.selectedBusinessArea)。 输出文本使用的业务区域ojbect描述字段和选择字段使用整个对象所在的SelectItem具有在标签中的描述。

从JSF组件验证错误未渲染

任何想法如何这可能是发生? 我可以用它确定所呈现的状态......所以,当它呈现它只是需要相同的布尔值设置所需要的属性...但因为这个问题是间歇性的。我不知道那将真正帮助。

我还证实了在网页上没有其他部件无意中有“业务区域”(这是在确认消息所使用)的标记值来误导箱,其中组分确实有一个空值; 这是一个具有“商务区”的标签只有一个。

--------------解决方案-------------

我想通了什么这个问题的发生。

在此之前提交表单和接收验证错误。 我正在引起该标志控制两个组件的可见性被逆转的变化。

rendered="#{shiftDetailsController.canEditBusinessArea}"

换句话说,我在做什么的形式是导致canEditBusinessArea更改值。 但是,我没有重新呈现面板组(“baGroup”),使用户界面以反映更新。

因此,当我的形式在验证阶段提交的组件被视为被要求...触发发生的验证。 当我说“baGroup”到已翻转编辑商务区旗的动作重新呈现,用户界面​​开始反映更新和提交的表单所具有的值。

分类:验证 时间:2012-01-04 人气:433
本文关键词: 验证,RichFaces的,JSF 1.2
分享到:

相关文章

  • 错误在Netbeans的cssparser-0.9.5.jar使用RichFaces的/ JSF 2014-11-05

    出于某种原因,当我作出轻微的机会挂钩的CSS我得到以下错误标题或任何东西: 删除目录c:\用户... C:\用户\ nbproject文件\ build-impl.xml中:1057:无法删除文件C:\用户\编译\网络\ WEB-INF \ lib目录\ cssparser -0.9.5.jar构建失败(总时间:6秒) 1057行<delete dir="${build.dir}"/> 我解开了变化,但错误似乎仍然存在. 它为什么要删除cssparser jar文件? 有什

  • 是否可以自定义验证添加到JSF豆? 2012-01-29

    这是关于JSF验证. 我知道有进行验证双向 Bean验证 JSF验证 我想写我自己的验证类. 是否有可能到自定义验证类添加到JSF豆? 我不希望有验证类在我facelett. 只有在豆... --------------解决方案------------- 是的,你可以编写自己的验证器类是这样的: @FacesValidator("customValidator") public class CustomValidator implements Validator{ public voi

  • 如何嵌入并在RichFaces的/ JSF页面调用JavaScript脚本 2012-05-22

    我一直在四处寻找的方法嵌入并调用JavaScript函数在JSF页面. 我还使用RichFaces的. 要定义的功能,看来我可以在一个跨浏览器支持的方式做到这一点: <a4j:outputPanel ajaxRendered="true"> <f:verbatim> <script type="text/javascript"> function datum() { alert("hi"); } </sc

  • 验证消息在JSF页面的底部显​​示 - 使用javax面临developmentstage消息 2012-10-29

    我被困在JSF显示错误消息. 我的要求给出如下: 我有一个用户的形式,其中,用户必须输入像名字,姓氏,用户名和EMAILADDRESS的细节. 所有这些领域都是强制性的,这些领域中,用户名和EMAILADDRESS是唯一的. 因此,当用户输入的所有字段,如果他点击然后保存在后端我要检查用户名和电子邮件地址是否已在数据库中存在,如果存在的话,我必须显示在页面写着"顶部的错误信息输入的数据是已经存在,请重新输入一次". 而对于名字和姓氏验证消息应显示在每个字段的一面. 我不能使用<h

  • 验证错误后JSF viewparam丢失 2013-04-26

    我现在面临的以下问题:在一个页面中,我列出我的应用程序的所有用户和对每个人的"编辑"按钮,这是一个"GET"链接与?id=<userid> 编辑页面有<f:viewParam name="id" value="#{editUserBean.id}"/>中的元数据. 如果我做了一些错误的输入并提交(我用CDI焊接Bean验证),页面再次显示,但我已经失去了?id=...的网址,因此失去了我的用户的用户ID

  • 我可以做一个JSF验证与在JSF标记指定的选项? 2013-08-23

    例如:我有一个JSF验证器正是如此验证电子邮件: @FacesValidator(value="validateEmail") public class Email implements Validator { private static final String EMAIL_REGEXP = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"

  • 检查验证错误在JSF表单的一部分 2013-12-12

    我建立一个Seam应用程序,这基本上是一个巨大的表格分为不同的部分,或模块. 我需要一种方法来找出当一个模块是"完整的",这意味着在该模块通过字段的所有验证. 那我需要做一些事情的看法,创下了CSS类或什么的. 就像是: <a:region id="region1"> <s:div styleClass="#{invalid ? 'errors' : ''}"> <h:inputText required="

  • 如何创建RichFaces的/ JSF动态手风琴? 2014-04-12

    我想创建一个动态的手风琴,我的用例是什么样子,在一个动作按钮,我想补充1手风琴项目的每一次点击. 我使用JSF 2.0和RichFaces的4.1.0决赛 请帮助我的人. --------------解决方案------------- 您将需要保持你的托管bean项目列表. 然后,你可以使用A4J:重复这个列表迭代在JSF页面,并创造出丰富的:对列表中的每个元素的accordionItem. 按钮的操作方法可能会增加项目对bean的列表.

  • 验证之前刷新JSF 2014-04-13

    我使用JSF验证简单地检查一个字段的长度为15,如果没有错误信息显示. 我的问题,这种方法是,用户输入一个数字是正确的长度,并点击一个按钮和一些信息则显示它. 当用户输入一个号码,其长度是第二次<15然后验证错误被示出,但关于先前编号的信息保持在屏幕上. 我的问题是我不知道该怎么办了页面的刷新. 我不喜欢这样的验证: <h:inputText id="imei" value="#{imeiValidationHandler.imei}" required

  • 有没有办法避免的Bean验证方法提出JSF捕获异常,并处理它们就像在其它bean方法抛出的异常? 2014-05-22

    在JSF项目中,我的工作豆类食品通常是由JSF处理的用户重定向到一个错误页面抛出的异常,但是当他们被一个Bean验证方法中提出,JSF处理它们的相对显示<h:message>标签异常消息,来代替. 我想从豆类提出的其他例外的是,在验证方法抛出的异常进行处理. 有没有一种方法来实现这一目标? 那种我使用的验证通过支持bean验证方法,例如在JSF页面: <h:inputText value="#{Bean.field}" validator="#{Bean.v

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.535 (s). 11 q(s)