- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有几个<p:messages>
应该处理单个 bean 产生的不同类型错误的元素。现在,我从浏览器获取的某个元素的 clientID 始终相同,因为内部没有生成的 id(总共 3 个 ID)。
无论我将哪个 clientID 传递给 FacesContext.addMessage(),我最终都会在每个 <p:messages>
上显示所有错误消息。元素。
浏览器中的一个 clientID:regelDetailAccordion:duoDlgForm2:regelDetail
浏览器中的另一个 clientID:regelDetailAccordion:duoDlgForm1:messagesNeuerFehler
bean 码:FacesContext.getCurrentInstance().addMessage(X, new FacesMessage(...));
哪里X
clientID 前面是否(不)是 :
和/或仅regelDetail
有和没有:
在前。全部尝试过:(
对话框-包括:
<ui:insert name="insertDuo"><ui:include src="/includes/duoRegelStmt.xhtml" />
</ui:insert>
显示我所有的 messages
的对话框:
<p:dialog widgetVar="newDuoDialog" id="newDuoDlg" modal="true">
<p:layout id="layout">
<p:layoutUnit position="west">
<ui:insert name="insertDetailStmt">
<h:form id="stmtDetailForm">
<ui:include src="/includes/stmtDetail.xhtml" /> <!-- left side -->
</h:form>
</ui:insert>
</p:layoutUnit>
<p:layoutUnit position="center">
<ui:insert name="insertDetailRegel">
<ui:include src="/includes/regelDetail.xhtml"/> <!-- right side -->
</ui:insert>
</p:layoutUnit>
</p:layout>
</p:dialog>
对话框右侧显示我的 3 个中的 2 个 messages
:
<ui:composition>
<h:panelGrid id="unterheaderUndAccordion">
<h:panelGrid rendered="#{...}" id="regelUnterheader"/>
<p:accordionPanel multiple="true" activeIndex="0,1" id="regelDetailAccordion" rendered="#{...}">
<p:tab>
<h:form id="duoDlgForm1">
<ui:insert name="neuerFehler">
<ui:include src="/includes/neuerFehler.xhtml" />
</ui:insert>
<h:selectOneMenu value="#{regelBean.selectedFehlerCode}" id="selFCode"
onChange="submit()" process="@this" valueChangeListener="#{regelBean.changeFehlerCode}">
<p:ajax event="change" update="duoDlgForm1" />
<f:selectItems ... />
</h:selectOneMenu>
</h:form>
</p:tab>
<p:tab>
<h:form id="duoDlgForm2">
<h:panelGrid>
<p:messages id="regelDetail" showDetail="true" closable="true"/>
</h:panelGrid>
</h:form>
</p:tab>
</p:accordionPanel>
</h:panelGrid>
</ui:composition>
neuerFehler 包含 messages
定义如下
<p:messages id="messagesNeuerFehler" showDetail="true" closable="true"/>
在我看来,当我输入 X
的正确值时,只有正确的消息字段才会显示消息,即使其他 messages
已更新。如果是这样,我必须输入的正确 clientID 是什么?预先非常感谢,我已经无计可施了:(
最佳答案
如果我正确理解问题,您可能会阻止使用 Primefaces 选择器更新某些组件,如下所示:
<h:form>
<h:inputText ... />
<h:inputText ... />
<h:inputText ... styleClass="noupdate" />
<h:inputText ... />
<h:inputText ... />
<p:commandButton ... update="@(form :not(.noupdate))"/>
</h:form>
BalusC 的原始回答 here .
如果这没有帮助,您可以在消息组件上使用 for- 属性吗?在我看来,您希望 FacesMessage 中的 clientid 是消息组件的标识符,而它是出现错误的组件的标识符。抱歉,如果我理解错误。
关于java - FacesMessage 不接受浏览器 clientID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24265716/
我有一个 JSF 2.1 + PrimeFaces 3.3 页面:
我有一个 JSF 2.1 + PrimeFaces 3.3 页面:
在我的 JSF 应用程序中,有一个 Filter 用于检查身份验证过程。当认证失败时,过滤器重定向到login.xhtml。 如何将 FacesMessage 从 Filter 传递到我的登录页面?
我在我的应用程序中显示消息 但是,消息显示很简单,我想将它们保留在屏幕上,直到它们被手动关闭。 我怎样才能做到这一点? 编辑: 我调用生成消息的运行方法。我调用组件 pbAjax,然后更新 growl
我编写了一个“不太正确”的代码来以编程方式计算 globalOnly 消息。 for (final FacesMessage message : facesContext.getMessageList
我有几个应该处理单个 bean 产生的不同类型错误的元素。现在,我从浏览器获取的某个元素的 clientID 始终相同,因为内部没有生成的 id(总共 3 个 ID)。 无论我将哪个 clientID
我在 java bean 中抛出 NullPointerException 并在 FacesServletWrapper 中捕获该异常。在 FacesServletWrapper 中,我始终只得到 S
我正在尝试向现有大型 SEAM 项目的用户添加信息消息。我添加了 到 .xhtml 页面,这些是我在名为 AbstractChartController 的类的代码中的尝试但是当页面在操作后刷新时,没
我想显示这样的错误信息,"以下 header 无效 1.Name 2.Roll no 我如何在 jsf 中使用面孔消息来显示这个?请帮助我。 最佳答案 如果不使用 javascript 和 css 实
这个问题在这里已经有了答案: How to show faces message in the redirected page (1 个回答) 6年前关闭。 我正在寻找一种优雅的 JSF 方式来执行此
我正在使用 PrimeFaces 轮询组件来刷新一些内容。 ... ... content to refresh ... ... ..
在我的屏幕上,我有一个下拉(选择框),在选择该下拉列表中的任何选项时,我使用 javascript/css 在选择框旁边显示一个或多个文本框 - display:none 和 display:bloc
在支持 bean 的 @PostConstruct 方法中,我调用 EJB,该 EJB 可能会返回一些我想通过 p:messages 在页面上显示的消息。但是,即使我添加 FacesMessages
我希望能够使用 JSF/Seam/RichFaces 进行 Ajax 调用,并使用相关的 h:messages 组件更新页面。这没有问题。我能够执行适当的重新渲染。但是,我也希望能够利用 rich:e
我们正在将我们的 Tomcat 服务器从 Tomcat 6(使用 JDK 5)迁移到 Tomcat 7(使用 JDK 7)和一些在停止工作之前工作的功能。 我们使用 Trinidad 1.2.14 和
我目前正在从核心 jsf 2.0 book + glassfish + cdi 学习 jsf 2.0。 我想问一个关于使用 bean-validation-framework 处理 jsf 页面或托管
在我的应用程序中,人脸消息不会在 UI 上呈现,不确定究竟是什么导致了这个问题。在服务器日志中,我看到了这个: WARNING: FacesMessage(s) have been enqueued,
我有一个具有以下方法的 ViewScoped bean: public Item getItem() { try { itemID = Integer.parseInt
我正在从 JSF 应用程序发送电子邮件。我需要它,这样当我发送电子邮件时,会显示 FacesMessage 以确认操作,并且浏览器会重新加载到同一页面。我的代码显示了人脸,但没有重新加载同一页面。 p
我是 JSF 的新手,正在为一个问题而苦苦挣扎。我希望有人能帮助我。 问题: 不是 bean 的处理程序检测来自 TCP/IP 管道的消息。 处理程序需要创建一个新的 FacesMessage 以在消
我是一名优秀的程序员,十分优秀!