gpt4 book ai didi

java - 为什么我的 Controller setter 在我的 PrimeFaces 项目中不起作用?

转载 作者:行者123 更新时间:2023-12-01 15:51:55 25 4
gpt4 key购买 nike

我正在使用 Showcase 源代码作为支持,使用 PrimeFaces 2.2.1 创建一些页面。

我创建了一个与 Spinner Showcase 完全相同的页面,具有相同的结构:

<h:form prependId="false">
<p:panel header="Spinners">
<h:panelGrid id="grid" columns="2" cellpadding="5">
<h:outputLabel for="spinnerBasic" value="Basic Spinner: " />
<p:spinner id="spinnerBasic" value="#{spinnerController.number1}" />

<h:outputLabel for="spinnerStep" value="Step Factor: " />
<p:spinner id="spinnerStep" value="#{spinnerController.number2}" stepFactor="0.25" />
</h:panelGrid>
</p:panel>

<p:commandButton value="Submit" update="display" oncomplete="dialog.show()" />

<p:dialog header="Values" widgetVar="dialog">
<h:panelGrid id="display" columns="2" cellpadding="5">
<h:outputText value="Value 1: " />
<h:outputText value="#{spinnerController.number1}" />

<h:outputText value="Value 2: " />
<h:outputText value="#{spinnerController.number2}" />
</h:panelGrid>
</p:dialog>
</h:form>

然后我创建了我的 SpinnerController ,就像 Showcase 中的那个一样,只是将包重命名为 org.myproject.view (这是我正在使用的包名称)。

并将其添加到我的faces-config.xml中:

<managed-bean>
<managed-bean-name>spinnerController</managed-bean-name>
<managed-bean-class>org.myproject.view.SpinnerController</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>

但是当我单击提交按钮时,对话框显示所有带有0的值。

使用断点,我可以看到我的 getNumber1getNumber2 正在运行,但 setNumber1setNumber2 从未运行运行。我可以尝试使用旋转器或直接在输入字段中键入值来更改值, setter 也不会运行。

有谁知道 Showcase 项目中我的项目中缺少什么?

最佳答案

是的,PrimeFaces 有时确实让人头疼。

嗯,你帮我解决了 PrimeFaces 中的 jQuery 问题。现在我想我可以帮助您解决 PrimeFaces 问题:

  • 首先,您不需要 prependId="false"。生成时,您的 div 可以是“j_idt10:display”。您只需将“显示”放在命令按钮上,JSF 就会负责添加第一部分 (j_idt10)。
  • 其次,避免不必要的 ID。您的 h:panelGrid id="grid" 不会被任何其他控件调用,因此它不需要该 id。

这里我只是做了这些步骤,回调就可以了。

关于java - 为什么我的 Controller setter 在我的 PrimeFaces 项目中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5861482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com