Java 如何使用Openfaces/JSF调用方法而不呈现页面?
我正试图用OpenFaces3在bean中调用Save方法。虽然Firefox不呈现页面,但Internet Explorer呈现页面 我目前正在使用以下代码行:Java 如何使用Openfaces/JSF调用方法而不呈现页面?,java,ajax,jsf,jsf-2,openfaces,Java,Ajax,Jsf,Jsf 2,Openfaces,我正试图用OpenFaces3在bean中调用Save方法。虽然Firefox不呈现页面,但Internet Explorer呈现页面 我目前正在使用以下代码行: <o:commandLink value="Save" action="#{beanX.save}"> <h:graphicImage url="/images/save_48.png" /> </o:commandLink> <h:commandLink value="Save">
<o:commandLink value="Save" action="#{beanX.save}">
<h:graphicImage url="/images/save_48.png" />
</o:commandLink>
<h:commandLink value="Save">
<h:graphicImage url="/images/save_48.png" />
<f:ajax event="click" render="@none" listener="#{beanX.save}" />
</h:commandLink>
有什么想法吗
我找到了一种使用标准JSF组件的方法。如何使用
o:commandLink
解决这个问题?您可以在jsf2.0中使用
和render
属性
<h:form>
<h:inputText value="#{managedBean.val1}" >
<f:ajax event="keyup" render="result" listener="#{managedBean.someThingToDoListener}"/>
</h:inputText>
<h:inputText value="#{managedBean.val2}" >
<f:ajax event="keyup" render="result" listener="#{managedBean.someThingToDoListener}"/>
</h:inputText>
<h:outputText id="result" value="#{managedBean.result}"/>
</h:form>
另请参见
- 谢谢Jigar Joshi。你给了我关键的暗示。它适用于以下代码行:
<o:commandLink value="Save" action="#{beanX.save}">
<h:graphicImage url="/images/save_48.png" />
</o:commandLink>
<h:commandLink value="Save">
<h:graphicImage url="/images/save_48.png" />
<f:ajax event="click" render="@none" listener="#{beanX.save}" />
</h:commandLink>
我以前访问过这个网站,我没有想到,o:commandLink
可能无法处理这个问题,可能是一个bug
使用带有侦听器属性的
h:commandLink
而不是o:commandLink
和f:ajax
解决了我的问题。哪个IE版本?控制台中有JS错误吗?我不做OpenFaces,但这听起来很像是有一个JS错误,因此ajax的东西坏了,因此JSF页面被优雅地降级为ajaxless页面。如果是这种情况,请尝试升级OpenFaces.IE 6和8。没有JS错误。然而,我已经找到了一种处理问题的方法。看看我自己对这个问题的回答。谢谢你的帮助,谢谢Jigar Joshi。你给了我解决问题的关键提示!那它就是OpenFaces中的一个bug。如果你喜欢OpenFaces,就向他们报告。