问题标签 [mojarra]

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 回答
6181 浏览

java - 在 Eclipse Indigo 上配置 JSF 2.0 的问题

我正在 IDE Eclipse Indigo(最新版本)上使用 JSF 2.0 开发 Web 应用程序。

但是在Project ->Properties -> Project Facets上,选项JavaServer Faces在版本 1.2 上配置,当我尝试将版本更改为 2.0 时,出现一条错误消息

无法将项目方面 JavaServer Faces 的版本更改为 2.0。

奇怪的是,我项目中的JSF库都是2.0版本。

我认为这是导致我的页面不显示简单的 xhtml 标签(如<h:outputLabel>和)的问题<h:inputText>

我正在使用的 JSF 库是在 Mojarra 项目 2.0.6 上获得的

希望有人可以帮助我提前谢谢

0 投票
2 回答
2196 浏览

jsf-2 - 如何在操作方法完成之前提交响应

<h:commandLink/>调用 JSF 标记的操作方法时显示以下错误消息:

错误消息的含义非常简单,但我的问题是如何在操作方法完成执行之前提交响应。

(此错误只是不时发生,而不是每次单击 commandLink 时。)

编辑:我在下面附上一些代码,如果这有助于获得解决方案:

标记:

动作方法:

0 投票
1 回答
997 浏览

java - Google App Engine 上的 JSF - java.lang.NoSuchFieldError: FaceletCache

使用 GAE 1.5.5 和 Mojarra 2.0.6 FCS,我在启动日志中看到以下消息。

Mojarra 2.0.4 也会出现这种情况,这是文章配置 JavaServer Faces 2.0 以使用 Eclipse 在 Google App Engine 上运行中给出的版本。

该项目只是一个基本的 JSF 应用程序,其中包含链接文章中的 web.xml。

这是一个已知问题吗?我还将把它发布在 Google App Engine / Java 论坛上。

0 投票
0 回答
2811 浏览

jsf - h:selectOneMenu required="true" 在验证失败时恢复为 bean 值

我在创建/编辑表单上有这样的东西:

在创建新对象的情况下,required验证按预期工作。

在编辑对象的情况下,如果我将有效值更改为占位符“-- 选择--”,我会收到验证失败 w/预期的 requiredMessage,因为 itemValue 是空白(“”);但是,HTML<select>将恢复为已从 bean 中选择的任何选项,而不是保留来自表单提交的无效用户输入。

重申一下,required=trueonh:selectOneMenu本身可以正常工作,生成预期的消息 - 唯一错误的是值恢复为 bean 值,而不是保留空白提交值。(我通过 Chrome 开发人员工具栏确认确实为 POST 发布了一个空字符串<select>。)

为什么会这样?更准确地说,为什么h:selectOneMenu不表现得像h:inputTextUIInput 显示来自表单的无效用户输入,并且不从 bean 刷新其值?这两个控件都扩展了相同的 UIInput 基类并实现了 EditableValueHolder,因此我希望它们的生命周期表现相同。

另外,澄清一下,我在 web.xml 中的任何地方都没有INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL上下文参数。

这是 Mojarra 2.1.3 / Glassfish 3.1.1 上的 JSF 应用程序。

0 投票
1 回答
2630 浏览

jsf - JSF UIComponent 绑定、可序列化和视图范围

我有一个实现的视图范围 bean Serializable,以及一个UIComponent通过绑定传入的 bean。

UIComponent不可序列化,因此会破坏会话恢复 。

这里的最佳做法是什么?

我应该将 UIComponents 标记为transient吗?或者将 binding= 用于除请​​求范围的 bean 之外的任何东西是不好的做法?

我正在使用 Glassfish 3.1.1、Mojarra 2.1.3 和 PrimeFaces 2.2。

0 投票
1 回答
1921 浏览

ajax - ui:repeat - 从列表中添加/删除元素无法正常工作

我的 .xhtml 文件中有以下代码

当页面被渲染时。并且用户单击 addSchedule 链接我希望 ui repeat 将添加新的 div class="term" 空值绑定到输入,因为:

我正在将带有 null 价格附加信息和日期的新课程对象添加到 ui:repeat 使用的列表中。

相反,我得到了新的

部分与从先前条目复制的值。

当我从列表中删除元素时(在 managedBean 中,列表中的正确对象被删除)我看到刚刚删除的对象中的数据:/

有人遇到过这种问题吗?你有什么建议吗?

0 投票
1 回答
2124 浏览

java - javax.faces.bean 包的真正来源是什么?

我只是在学习 JSF、RichFaces 和 Maven。我发现了奇怪的事情: javax.faces.bean包仅在http://javaserverfaces.java.net提供的分发中退出。

它在 Maven 存储库http://mvnrepository.com/artifact/com.sun.faces/jsf-impl/2.1.4中不存在。

看起来如果我尝试构建richfaces-4.0.0.Final\examples\richfaces-showcase 也不会被检索到。

目前我只成功使用了richfaces的日历,因为它不使用bean。但问题不在于如何成功运行所有展示。问题是如何以适当的方式制作它,即javax.faces.bean通过 maven 和公共 maven 存储库检索包。

我想知道maven不应该解决那种问题吗?在这种特殊情况下,谁应对混乱负责?

0 投票
1 回答
2300 浏览

java - f:ajax 监听器在渲染后执行?

考虑以下jsf:

正如我从文档中收集到的,f:ajax 标记中的“监听器”应该在部分视图“:current”被重新渲染之前执行。这是基于:

  • docs.oracle.com/javaee/6/tutorial/doc/gkace.html :在生命周期的 Invoke Application 阶段调用一次监听器的 processAjaxBehavior 方法
  • javaserverfaces.java.net/nonav/docs/2.0/pdldocs/facelets/ :将参与请求处理生命周期的“渲染”部分的组件的标识符
  • www.ibm.com/developerworks/library/j-jsf2/:渲染确实在调用之后......

方法“#{taskManager.stopCurrentAtSpecified}”将在给定时间停止任务并将其设置为“null”,这意味着重新渲染评估“#{taskManager.currentTask!= null}”不再为真,因此网格面板应该消失。不是这种情况。该任务确实已停止,但重新渲染的视图仍显示旧任务。刷新整个页面将正确呈现它。

此外,我玩弄了“#{taskManager.changeStart}”,它会将“#{taskManager.currentStop}”更新为一个非常大的日期,因此您会怀疑是否执行了侦听器并在之后执行了渲染,日历会反映这个大日期,它不会。

我发现有人有类似的问题,但他的问题没有得到解答:f:ajax with listener and render

我正在使用 Mojarra 2.1.2

0 投票
1 回答
1231 浏览

jsf-2 - 带有 h:commandLink 的 JSF 2 自定义组件在 ui:repeat 中

我开发了一个自定义组件(受 BalusC 的这篇文章启发),其中包含一个显示可点击表格页面列表的标签。 在循环块内有一个异步调用一个动作,发布一个参数。参数值在每个循环中都会发生变化。这是页面代码:ui:repeat
h:commandLink

现在,cc.attrs.pager组件属性注意到视图范围的支持 bean,其pagescurrentPage属性通过 getter 可见,changePage方法是要调用的操作。cc.attrs.render组件属性是每次动作执行后要刷新的目标。这是相关的bean代码:

初始渲染是完美的:所有页面链接都正确显示,当前页码未链接,如所愿。问题显示转到另一个页面:没有任何反应。
尽管h:commandLink使用确切的循环参数值发布操作,但响应始终返回相同的页面(第一个页面)。调试它,我观察到执行没有进入这两种changePage方法中的任何一种。我不确定这个问题是否与 相关ui:repeat,但忽略它,我可以说相同的机制确实适用于其他目的。

有什么建议吗?

0 投票
1 回答
4160 浏览

jsf - 这是 Primefaces 错误还是 Mojarra/MyFaces 错误

column当我在中时,我似乎无法触发事件dataTable。这是我的简单演示

这是我的托管豆

我的问题似乎是事件没有被触发,这意味着delete永远不会被调用。

我环顾四周,知道 Mojarra 在嵌套 UIData 组件方面有很多问题,所以我尝试了 Mojarra 2.1.4,仍然没有解决问题。我试过Myfaces 2.1.5,还是不行!!!这是 Primefaces 的错误吗?我什h:panelGroup至用作包装器,update但它仍然不起作用。

编辑:事实证明,p:tree上面的dataTable是单击 时未触发事件的根本原因commandButton。如果我删除p:tree它,它会立即工作。请注意p:tree,当我单击结帐时,它本身工作得很好,在我的托管 bean 上触发了事件。