jsf ajax必须采用相同的形式?

时间:2011-07-27 02:34:14

标签: java ajax jsf

下面的jsf页面产生如下错误。这是否意味着ajax标记必须与渲染目标的形式相同?反正有办法解决这个限制吗?

严重:错误渲染视图[/ajax.xhtml]
javax.faces.FacesException:包含一个未知的id“sum” - 无法在组件x的上下文中找到它

<h:body>
    <h:form>
        x: 
        <h:inputText id="x" value="#{ajax.x}">
            <f:ajax event="keyup" render="sum mul"/>
        </h:inputText>
        <br/>
        y:
        <h:inputText id="y" value="#{ajax.y}">
            <f:ajax event="keyup" render="sum mul"/>
        </h:inputText>
        <br/>
    </h:form>
    Sum: <h:outputText id="sum" value="#{ajax.sum}"/><br/>
    Multiply: <h:outputText id="mul" value="#{ajax.multiply}"/><br/>
</h:body>

1 个答案:

答案 0 :(得分:1)

只需在id前加冒号

例如。 <f:ajax event="keyup" render=":sum :mul"/>

请参阅this blog post