问题标签 [omnifaces]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1735 浏览

jsf-2 - JSF 可选旧值在清除它们后返回

我正在使用 JSF、PrimeFaces 3.2、Omnifaces 1.1、JBoss AS 7.1.1、Final、Mojarra 2.1.7

我有一个表单,其中包含两个不需要的数字字段,如下所示:

我还在 faces-config 上设置了 OmniFaces ResetInputAjaxActionListener。

bean 属性 field1 和 field2 是整数。

现在的问题是,如果我在 num1 上输入 123,在 num2 上输入 345,然后单击 OK 就可以了。如果我然后从 num1 中删除 123 并将 abc 放在 num2 上。然后显示验证(转换)错误,但 123 又回来了!

如果我让它们都 required=true 那么一切都很好。

有没有办法让这个与可选字段一起工作?

0 投票
1 回答
1792 浏览

jsf - 使用 FullAjaxExceptionHandler 时出现 StringIndexOutOfBoundsException

我正在尝试使用omnifaces 的FullAjaxExceptionHandler,但我正在StringIndexOutOfBoundsException使用org.omnifaces.util.Faces.normalizeViewId(Faces.java:312) [omnifaces-1.1.jar:1.1].

我的 web.xml 文件具有以下错误设置:

我的 servlet在哪里ErroServlet重定向到正确的错误页面,具体取决于请求 url(我有 2 个不同的错误页面)。

我正在尝试使用FullAjaxExceptionHandler,因此也会处理在 ajax 请求期间引发的异常。

我的 ErroServlet 使用以下命令检查它是否是 Ajax 请求:

如果为真,则使用以下命令重定向:

正如我所说,我StringIndexOutOfBoundsException在 servlet 完成后得到了一个。而且,页面不会视觉上重定向。

全栈跟踪:

0 投票
1 回答
1369 浏览

jsf - 使用 OmniFaces 时出现 NullPointerException:printStackTrace

我正在使用 OmniFaces 显示一个漂亮而详细的错误页面,就像展示中的这个页面一样。

这是我的错误页面:

页面渲染得很好,但是当我单击p:commandButton页面末尾的 时,我在of:printStackTrace. 我不明白为什么会发生这种情况,因为该函数已经被调用并打印了它的结果。当我单击另一个表单内的按钮时,我不明白为什么 JSF 会再次尝试调用该函数,甚至更奇怪。

单击命令按钮时的完整堆栈跟踪:

0 投票
1 回答
593 浏览

jsf - jsf突出显示无效输入的标签

是否有一种简单的可能性将特定样式应用于无效的输入标签?

我已经看到omnifaces highlight组件为输入本身完成工作,但是我项目的给定样式指南强制将其用于输入标签。

这样的事情会很棒:

0 投票
1 回答
1731 浏览

ajax - 如何通过 p:ajax 使用 OmniFaces Ajax.updateColumn() 或 Ajax.updateRow()

我正在尝试使用 OmniFaces 1.3 (SNAPSHOT) Ajax 实用程序的 Ajax.updateColumn() 方法。更具体地说,我想用 Ajax.updateColumn(table, 1) 替换使用 p:ajax update=":pageContentPanel",它是一个包含以下 xhtml 的 h:panelGroup(或 p:outputPanel)。

在 bean 中,我有以下内容,由 p:ajax listener="..." 引用:

在尝试使用 Ajax.updateColumn() 时,我将“HtmlDataTable tripDatesDataTable”作为属性添加到 bean。

该 bean 是 JSF @SessionScoped 托管 bean。请让我知道在执行 p:ajax(属于上述 xhtml 中的 p:calendar)时如何调用 Ajax.updateColumn()。谢谢。

0 投票
1 回答
2070 浏览

ajax - OmniFaces Ajax 实用程序的 updateColumn() 不更新 p:dataTable

最近,我关于 OmniFaces Ajax.updateColumn() 的问题得到了以下回答:

如何通过 p:ajax 使用 OmniFaces Ajax.updateColumn() 或 Ajax.updateRow()

在这种情况下,dataTable 是 JSF 标准的 h:dataTable,效果很好。

现在,在这种情况下,当最终用户通过 p:dataTable 之外存在的 p:calendar 组件选择日期时,我正在尝试更新 PrimeFaces p:dataTable。p:dataTable xhtml 如下:

最初和当前正在生产中,p:calendar p:ajax update="..." 更新了“整个”航班 p:dataTable,因此 p:dataTable 中的日期列已成功更新。我知道,我知道,如果它没有坏,那就不要修复它,但是今天我正在修改这段代码和 xhtml,所以我想使用 OmniFaces Ajax 实用程序的 updateColumn() 来只更新“一个”列此 PrimeFaces p:dataTable 的行。

下面是最终用户通过 p:calendar 选择日期时执行的代码片段;这是调用 OmniFaces Ajax 实用程序的 updateColumn() 的代码。

以下是 POJO 定义:

测试时,服务器日志中显示以下内容:

因此,这意味着我获得了 PrimeFaces p:dataTable 的良好参考,因此我将 UIData 类型的组件传递给 Ajax.updateColumn()。

最终结果,PrimeFaces 数据表没有被 OmniFaces Ajax 实用程序的 updateColumn() 更新。

我刚刚注释掉 Ajax.updateColumn(...) 并将 update="..." 重新添加到 p:calendar p:ajax,并且 PrimeFaces 数据表已成功更新。

请告知我可能需要做什么来确保通过 Ajax.updateColumn(...) 更新 PrimeFaces 数据表。谢谢。

0 投票
1 回答
4041 浏览

jsf-2 - Primefaces ManyCheckbox inside ui:repeat calls setter method only for last loop

I have a <p:selectManyCheckbox> inside <ui:repeat>, getting it's items from a List of a certain Object Class (provided by <ui:repeat>-variable) and is supposed to save the chosen items into another List of the same Object Class. But it calls the setter method #{cartBean.setSelectedExtras} only for the last entry (last iteration of <ui:repeat>).

Update: I changed the above construct just the way BalusC proposed.
Declaration in backing bean is now:

When I check checkboxes that were created by the first loops of <ui:repeat> and click the <p:commandButton> inside the same <h:form> the setter method of selectedExtras is not called. When I check the checkboxes created in the last loop of <ui:repeat> and click the <p:commandButton> I get an Exception:

0 投票
1 回答
535 浏览

jsf - OmniFaces 缓存组件是否适合资源缓存?

下面的问题,

每次页面刷新和 ajax 页面更新都会加载 Primefaces、JQuery 脚本和 CSS 文件。如何从缓存中获取文件,而不是为每个请求下载。

被问到:

每次页面刷新时加载 Primefaces 脚本和 css 文件

我推荐了 OmniFaces o:cache 组件。在这种情况下可以使用 o:cache 吗,还是最好使用 servlet 过滤器?

0 投票
1 回答
543 浏览

jsf - 如何使用 OmniFaces Components util 获取 XHTML 页面上组件的 HTML/CSS 属性值?

我有以下呈现的 HTML:

由于我为这个 PrimeFaces 扩展 layoutPane (pe:layoutPane) 分配了一个 ID,我想通过 OmniFaces Components.findComponent 和 JSF UIComponent 检查来自 bean 的显示 CSS。

基于 BalusC 对以下内容的回答:

访问传递给扩展 PrimeFaces 组件的属性

我的 bean 中有以下内容:

服务器日志始终包含以下内容:

请指教。谢谢。

0 投票
1 回答
1347 浏览

jsf - OmniFaces JAR 不允许我的应用程序在 Tomcat 7.0.32 中启动或运行

我正在尝试从 Glassfish 3.1.2.2 迁移到 Tomcat 7.0.32,因为每个人都说 Atmosphere (PrimeFaces Push) 可以与 Tomcat 完美配合,而不能与 Glassfish 配合使用。

我已经将 Mojarra 2.1.4 JAR 添加到 Tomcat /lib 以传递下面讨论的错误:

java.lang.ClassNotFoundException : com.sun.faces.config.ConfigureListener

现在,似乎我需要从我的类路径中删除 OmniFaces (1.3 SNAPSHOT) JAR,因为它会导致错误。最好从下往上阅读,因为 FullAjaxExceptionHandler 首先显示为错误,所以我在我的应用程序中对此进行了评论,然后 OmniPartialView 出现了,但老实说,我不想删除 OmniFaces。

OmniFaces 导致以下讨论的错误:

找不到工厂:javax.faces.application.ApplicationFactory

以下是服务器日志。请自下而上阅读。

请指教。谢谢。