我正在使用 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
.
使用断点,我可以看到我的getNumber1
and正在运行,getNumber2
但从未运行。我可以尝试使用微调器或直接键入输入字段来更改值,设置器也不会运行。setNumber1
setNumber2
有谁知道我在 Showcase 项目中存在的项目中缺少什么?