Java 无法获取PrimeFaces p:额定值并将其保存到Oracle数据库中
我想使用p:rating组件来投票,并将值保存到数据库中(如果已经投票,以后可以从数据库中提取值)。在实体中,我也有注释字段,我想知道注释是否已经写入以仅添加投票,因此我有时会进行合并而不是持久化(如果DB中没有写入此请求)。 我的.xhtml页面中有以下代码:Java 无法获取PrimeFaces p:额定值并将其保存到Oracle数据库中,java,jsf,jsf-2,primefaces,Java,Jsf,Jsf 2,Primefaces,我想使用p:rating组件来投票,并将值保存到数据库中(如果已经投票,以后可以从数据库中提取值)。在实体中,我也有注释字段,我想知道注释是否已经写入以仅添加投票,因此我有时会进行合并而不是持久化(如果DB中没有写入此请求)。 我的.xhtml页面中有以下代码: <h:form rendered="#{not empty userRequestBean.request.hiredAgency.city}"> <p:rating value="#{
<h:form
rendered="#{not empty userRequestBean.request.hiredAgency.city}">
<p:rating value="#{userRequestBean.rating}" stars="10"
onRate="#{userRequestBean.rateAgency()}">
</p:rating>
</h:form>
但在Rate上,rateAgency方法不被执行。呈现页面时仅执行一次。我如何实现这一点 当您尝试运行服务器方法时,属性
onRate
定义了一个JavaScript(客户端)操作。
您需要一个ajax操作:
<p:rating value="#{userRequestBean.rating}" stars="10" >
<p:ajax event="rate" listener="#{userRequestBean.rateAgency()}" />
</p:rating>
有用的链接:
- 一个好的JSF教程(比如)
<p:rating value="#{userRequestBean.rating}" stars="10" >
<p:ajax event="rate" listener="#{userRequestBean.rateAgency()}" />
</p:rating>