p:selectOneMenu 带有 onChange 的字段不刷新 outputText
p:selectOneMenu field with onChange not refreshing outputText
我在 google 和 Stack Overflow 中进行了搜索,并来到这里尝试让它工作,但它仍然不起作用。
Xhtml:
<p:panel id="testRefresh" header="Basic">
<h:outputText value="#{sBean.headTest}" />
</p:panel>
<p:selectOneMenu valueChangeListener="#{sBean.handleChange}">
<f:selectItem itemLabel="" itemValue="#{null}" />
<f:selectItem itemLabel="Cream Latte" itemValue="Cream Latte" />
<f:selectItem itemLabel="Extreme Mocha" itemValue="Extreme Mocha" />
<f:selectItem itemLabel="Buena Vista" itemValue="Buena Vista" />
<p:ajax event="change" update=":testRefresh" process="@this" />
</p:selectOneMenu>
sBean.java
private String headTest;
//Getter and Setter for headTest and initialized in @PostSconstruct method
public void handleChange(ValueChangeEvent event) throws InterruptedException {
headTest = (String) event.getNewValue();
}
您还知道有在线编辑器可以使用 xhtml 和相应的 bean 测试 JSF 吗?会更容易测试。
感谢您的帮助。
我在您的 *.xhtml 中添加了 <h:form></h:form>
并稍微更改了您的更新语句:
<h:form>
<p:panel id="testRefresh" header="Basic">
<h:outputText value="#{sBean.headTest}"/>
</p:panel>
<p:selectOneMenu valueChangeListener="#{sBean.handleChange}">
<f:selectItem itemLabel="" itemValue="#{null}"/>
<f:selectItem itemLabel="Cream Latte" itemValue="Cream Latte"/>
<f:selectItem itemLabel="Extreme Mocha" itemValue="Extreme Mocha"/>
<f:selectItem itemLabel="Buena Vista" itemValue="Buena Vista"/>
<p:ajax event="change" update="testRefresh"/>
</p:selectOneMenu>
</h:form>
Also do you know any editor online to test JSF with xhtml and respective bean? Would be easier to test.
据我所知,没有在线工具,但您可以创建一个 "skeleton" Spring 项目并在那里进行测试。 Spring Initializr.
是一个好的开始
问题是 Bean 方法中的 throws InterruptedException,扰乱了 xhtml 对它的访问。
我在 google 和 Stack Overflow 中进行了搜索,并来到这里尝试让它工作,但它仍然不起作用。
Xhtml:
<p:panel id="testRefresh" header="Basic">
<h:outputText value="#{sBean.headTest}" />
</p:panel>
<p:selectOneMenu valueChangeListener="#{sBean.handleChange}">
<f:selectItem itemLabel="" itemValue="#{null}" />
<f:selectItem itemLabel="Cream Latte" itemValue="Cream Latte" />
<f:selectItem itemLabel="Extreme Mocha" itemValue="Extreme Mocha" />
<f:selectItem itemLabel="Buena Vista" itemValue="Buena Vista" />
<p:ajax event="change" update=":testRefresh" process="@this" />
</p:selectOneMenu>
sBean.java
private String headTest;
//Getter and Setter for headTest and initialized in @PostSconstruct method
public void handleChange(ValueChangeEvent event) throws InterruptedException {
headTest = (String) event.getNewValue();
}
您还知道有在线编辑器可以使用 xhtml 和相应的 bean 测试 JSF 吗?会更容易测试。
感谢您的帮助。
我在您的 *.xhtml 中添加了 <h:form></h:form>
并稍微更改了您的更新语句:
<h:form>
<p:panel id="testRefresh" header="Basic">
<h:outputText value="#{sBean.headTest}"/>
</p:panel>
<p:selectOneMenu valueChangeListener="#{sBean.handleChange}">
<f:selectItem itemLabel="" itemValue="#{null}"/>
<f:selectItem itemLabel="Cream Latte" itemValue="Cream Latte"/>
<f:selectItem itemLabel="Extreme Mocha" itemValue="Extreme Mocha"/>
<f:selectItem itemLabel="Buena Vista" itemValue="Buena Vista"/>
<p:ajax event="change" update="testRefresh"/>
</p:selectOneMenu>
</h:form>
Also do you know any editor online to test JSF with xhtml and respective bean? Would be easier to test.
据我所知,没有在线工具,但您可以创建一个 "skeleton" Spring 项目并在那里进行测试。 Spring Initializr.
是一个好的开始问题是 Bean 方法中的 throws InterruptedException,扰乱了 xhtml 对它的访问。