我又遇到了 JSF 的问题。我仍在学习,非常感谢您的帮助。
<h:form>
<h:selectOneMenu value="#{productBean.productName}">
<f:selectItems value="#{productBean.pizza}" var="pizza" itemValue="#{pizza}" itemLabel="#{pizza.name}" />
<f:ajax listener="#{productBean.valueChanged(pizza)}" render="pizzaResult" />
</h:selectOneMenu>
<h:commandButton value ="Dodaj do zamówienia"/>
<h:outputText id="pizzaResult" value="#{productBean.message}" />
</h:form>
我只想用自定义对象的参数调用方法 valueChanged:Product。这是方法:
public void valueChanged(Product prod)
{
if(prod.getIs_available() == 1)
message = "yes";
else
message = "no";
}
我希望它验证产品是否可用。并将其打印在 outputText 标记中。我认为问题出在 HTML 中,因为所需的所有数据都是字符串,我无法以这种方式发送产品。我应该使用转换器吗?它应该是什么样子?我对转换器知之甚少,ProductConverter 的工作示例会让我头脑清醒。提前致谢。