- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个页面,我想根据 View 参数给出的值包含页面的一部分(在本例中为页脚)。
我的 ViewScoped
支持 bean 在 preRenderView 上初始化
<f:metadata>
<f:viewParam name="racecode" value="#{displayResults.racecode}" />
<f:event type="preRenderView" listener="#{displayResults.init}" />
</f:metadata>
这会查询数据库以获取要包含的页脚的名称。然后,以这种方式使用:
<h:panelGroup id="customFooter" display="block">
<ui:include src="#{displayResults.customFooter}" />
</h:panelGroup>
这总是给我缺页。但是,如果我手动输入页面名称,它就会起作用。如果我用 h:outputText
替换 ui:include
也是一样。
我知道它与 JSF 的阶段有关,并且在 ui:include
完成时,该值尚未设置。 (阅读并更好地理解这些阶段是我的 TODO 列表中的内容)。
问题依然存在。我怎样才能完成这样的事情。让一个 bean 使用 viewParam,查询数据库并在 ui:include
中使用该值?
最佳答案
@wemu 已经说明了原因。 <ui:include src>
在 init()
之前被评估方法被调用。他提议<f:phaseListener>
然而,解决方案很笨拙。
只需使用 @ManagedProperty
/@PostConstruct
在 @RequestScoped
上 bean 。
@ManagedProperty("#{param.racecode}")
private String racecode;
@PostConstruct
public void init() {
// ...
}
关于java - 用户界面 :include dependent on viewParam,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12729035/
如果 f:viewParam,我执行重定向(或错误)是空的? 当我添加 required="true" , 没发生什么事。有什么选择? 最佳答案 When I add required=
我有一个驱动的搜索屏幕。我正在尝试将其实现为单个接受多个值。 我相信正确的网址看起来像 ?state=COMPLETE&state=PENDING XHTML部分如下: 我已经在backi
我正在使用 JSF 和 Primefaces,我的问题是: 我有一个页面(page1.jsf),它接收一个带有字符串列表(空格分隔)的 View 参数: listConverter 将字符串转
我有一个页面,我想根据 View 参数给出的值包含页面的一部分(在本例中为页脚)。 我的 ViewScoped 支持 bean 在 preRenderView 上初始化 这会
有什么区别和 在 JSF 2.1 中? 最佳答案 简单的说: 用于内部 附上 UIViewParameter作为当前 View 的元数据。例如,如果您访问页面 myapp/check.jsf?id=3
当我单击下面页面上的命令按钮时,导航失败。 (单击按钮刷新页面,删除 URL 参数并显示所需的错误消息,而不是导航到索引页面) 但是,如果我删除必需的属性或删除 f:ajax 标记,导航就可以正常工作
我目前正在尝试将记录的 id 从一个页面发送到另一个页面。 所以在第 1 页,我有这样的事情: 在目标页面(TInput.xhtml)中,我有这样的东西来捕获
我想创建一个表单来简单地修改一些项目实体的字段。 为此,我创建了一个请求范围的 bean 和一个 View ,该 View 与转换器一起使用以告知 bean 正在编辑哪个实体。 bean @Named
我想分享我使用 primefaces、f:viewParam 和 p:commandButton 的经验,并提出几个问题。请看一下此页面:
我有一个 xhtml 页面,其中有一个带有 f:param 的输出链接 Start 在目标页面中,我有 View 参数 f:metadata> 我的
像这样定义 View 参数有什么区别: 并在 ManagedBean 中定义属性,如下所示: @Inject @ManagedProperty(value = "#{param.id}")
假设我已经有一个自定义类之间的转换器 Car和 String . 有没有办法优雅地做到这一点 工作时mybean.cars是 Set或 List而不仅仅是一个 Car ,而不必在汽车列表和字符串列表
我正在尝试 MyFaces CODI 及其出色的功能。一个非常有用的东西是类型安全导航。我可以在 Controller bean 中指定操作方法的结果,如下所示: public Class goBac
抱歉,可能是另一个非常基本的问题。在我的 ViewScoped bean 中,“viewParam”看起来已经设置好了,但是当我开始使用它时,它的值为 null。我在 setter (setEvent
我们有一个设置,我们将不同的可选 View 参数传递给 JSF 页面,并在设置参数后处理后续 View 操作。一个非常简单的例子如下所示: page.xhtml:
我有一个 JSF 页面上的标记,用于在转换和验证后将 GET 参数设置为相应的托管 bean。 如果发生转换或验证错误,则会从资源包中获取适当的错误消息并显示在 上。 (也可以是 或 )。 该
也许有人可以启发我。 如果放置 在模板内,setter setValue is never called, i.e. the preRender method 'call()' is cal
我有以下页面:
我有一个 viewscoped bean,它通过 f:viewparam 接收参数并使用它们在模型中设置值。页面回发后,参数从 url 中消失,但初始参数设置的模型值以某种方式保留。 这是保存参数的安
我想为 View 参数使用标准的 JSF 转换器 (javax.faces.convert.DateTimeConverter) 来自文档: You can refer to the converte
我是一名优秀的程序员,十分优秀!