Jsf 2 JSF2:Ajax请求和站点导航

Jsf 2 JSF2:Ajax请求和站点导航,jsf-2,ajax4jsf,Jsf 2,Ajax4jsf,我刚刚完成Balusc的JSF2教程,输入组件上的blur事件发送的ajax请求遇到了问题 我的页面设置了一个通用边栏,其中包含指向我的不同视图的h:link。 在我的一个视图中,我使用如下代码: <h:panelGrid columns="3"> <h:outputLabel value="title" for="unitTitle"/> <h:inputText id="unitTitle" value="#{unitOverview.unit.

我刚刚完成Balusc的JSF2教程,输入组件上的blur事件发送的ajax请求遇到了问题

我的页面设置了一个通用边栏,其中包含指向我的不同视图的
h:link
。 在我的一个视图中,我使用如下代码:

<h:panelGrid columns="3">
    <h:outputLabel value="title" for="unitTitle"/>
    <h:inputText id="unitTitle" value="#{unitOverview.unit.title}" label="title">
        <f:ajax event="blur" render="unitMessage"/>
    </h:inputText>
    <h:message id="unitMessage" for="unitTitle"/>
</h:panelGrid>

因此,当我导航到另一个站点时,当使用其中一个输入组件时,我会得到一个
http
错误,因为
ajax请求和同时发送到服务器的完整请求

我不熟悉
JSF
,因此我想到了以下解决此问题的方法:

  • 禁用模糊事件
  • 使用ajax链接创建另一个侧栏组件,并获取 来自应用程序范围的视图的不同链接是受管理的 豆子
  • 我有点不喜欢这两种选择,有没有另一种选择我没有考虑?“真实世界”应用程序如何解决这个问题


    提前感谢

    你说得对,发送一个ajax和一个普通的http并行请求不是一个好主意

    好吧,试着用
    更改
    而不是
    模糊
    。它也会在离开输入字段时触发,但只应在发生实际更改时触发

    另外,最好使用xhtml更新您的问题,该xhtml包含完整问题的最小化版本(包括
    ),以便在可能感兴趣的用户IDE中更容易理解和测试问题。:-)


    希望对你有帮助

    你对上面描述的问题有进一步的了解吗?哦,有点忘记了这篇文章,因为我没有时间学习更多的JSF。实际上你的回答并没有解决这个问题,我仍然有不想要的行为。e、 g.当我只是在输入字段中使用tab键时,应显示消息。e、 g.当我在输入字段中写入内容,切换到另一个字段,再次切换回旧字段,删除输入并单击另一个链接时,我仍然存在一个我在开始时遇到的问题:(我想要blur的准确行为,只是没有ajax错误:/