当前位置: 首页 > 知识库问答 >
问题:

Omnifaces validateBean:无法获取ShowMessage以使attirbute正常工作

桂阳文
2023-03-14

我正在使用Omnifaces

这是我的背景。我有三个输入字段,其中两个在类级约束中耦合(weddingDay必须小于silverWeddingAnniversary;如果需要,我可以附加更多代码)。

@DayIsBeforeAnniversary
@Entity
public class Person implements Serializable
{
    private String name;

    @Temporal(TemporalType.DATE)
    private Date weddingDay;

    @Temporal(TemporalType.DATE)
    private Date silverWeddingAnniversary;
    ...
}
<h:form id="main_form">
    <p:messages />

    <p:outputLabel value="Name" for="id_name" />
    <p:message for="id_name" />
    <p:inputText id="id_name" value="#{personController.person.name}" /><br />

    <p:outputLabel value="Wedding Day" for="id_wedding" />
    <p:message for="id_wedding" />
    <p:calendar id="id_wedding" value="#{personController.person.weddingDay}"  /><br />

    <p:outputLabel value="Silver Wedding Anniversary" for="id_anniversary" />
    <p:message for="id_anniversary" />
    <p:calendar id="id_anniversary" value="#{personController.person.silverWeddingAnniversary}"  /><br/>

    <p:commandButton 
        value="test" 
        action="#{personController.navigate()}" 
        update="@all"/>

    <o:validateBean 
        value="#{personController.person}" 
        showMessageFor="id_wedding id_anniversary" />
</h:form>

因此,我的目的是在<代码>

实际结果有点不同。常规<代码>

那么,我各自做错了什么呢?我怎样才能告诉错误消息出现在两个特定的<代码>

(在Glassfish 4.1.1上使用Omnifaces 2.6.8)


共有1个答案

赵雅懿
2023-03-14
匿名用户

这个问题有两个方面。

>

  • show MessageFor属性无意中将客户端ID解释为完整的客户端ID。以下方法将适用于您。

    <o:validateBean 
        value="#{personController.person}" 
        showMessageFor="main_form:id_wedding main_form:id_anniversary" />
    

    showMessageFor不用于仅将特定输入字段标记为无效。不幸的是,除了抓取<代码>

    <o:validateOrder
        components="id_wedding id_anniversary"
        message="You cannot celebrate wedding anniversary before being married"
        showMessageFor="@all" />
    

    根据问题446,这两个问题都在2.6.9中得到修复。

  •  类似资料:
    • 我正在尝试使用这个基本布局的程序,可以读取Excel文件。我想扩展到此代码之外的内容,但由于某些原因,每次构建代码时,我都会遇到一个错误“注意:C:\Users\Ryan Kabir\Documents\NetBeansProjects\ExcelReader\src\ExcelReader\ExcelReader.java使用或覆盖不推荐使用的API。注意:使用-Xlint重新编译:不推荐使用以

    • 我下面的教程视频链接在这里:http://www.youtube.com/watch?v=wAwQ-noyB98 我安装了Matplotlib,包括其他必要的库:Numpy、dateutil、pytz、pyparsing和六个。 现在,我正在尝试以下命令: 导入matplotlib.pyplot plt。图([1,2,3,4,5,6,7],[5,6,7,8,9,10,11]) 我期待着某种图形出现

    • 来自Mongo Shell 工作并将记录打印到屏幕上。 从快递 我每次都得到空响应。我尝试过不使用ObjectId包装,但我仍然得到空值。mongoDB连接很好,因为我有一个成功返回所有消息。 我做错了什么?

    • 提取的文本:http://pastebin.com/BXFfMy0z 问题pdf:http://www.iwb.ch/media/Unternehmen/Dokumente/inserat_leiter_pm.pdf 如何从该pdf文件中提取正确的文本?

    • 问题内容: 因此,我的设置无法按我想要的方式工作。因此,每当我运行该程序时,它就会立即从0变为100。我尝试使用,任务,并尝试了,但没有任何尝试。 这是我的程序: @MadProgrammer这是我尝试做一名摆动工作人员并将每个名称写入文档并更新进度栏的尝试。该程序将达到86%左右并停止运行,永远不会创建完成的文档。该程序将创建一个空白文档。这是我首先创建的SwingWorker对象,这是两种方法

    • 问题内容: 我在JLayeredpane上有两个JPanels。其中一个显示pdf,重叠的一个具有透明背景(我使用过setOpaque(false))。现在,我可以将图形添加到透明面板中,这样看来我实际上是在注释pdf。我想要一个橡皮擦工具来删除这些注释。我尝试使用以下代码 其中path是由多条线构成的形状。现在,不是在先前的图形上绘制 透明线 ,而是绘制 黑线 。我要去哪里错了? 问题答案: 请