Invocar ajax apenas se teclar ENTER (JSF 2)

Pessoal,

Estou tentando usar a tag f:ajax do JSF2 para adicionar uma chamada ajax num html:inputText, no entanto, eu gostaria que a requisição ajax acontecesse apenas se o usuário teclasse ENTER.

Meu código é o seguinte:

 <f:ajax event="keypress" onevent="isEnter" listener="#{controller.consultarPaginaInformada}" render="idResult" /> 

Problemas:

1 - O JSF chama o javascript isEnter passando um parametro para ele que contem algumas informações, como por exemplo, o status da requisição ajax (begin,complete,sucess), porém, não é o objeto EVENT o qual eu conseguiria obter o keyCode e verificar se é um ENTER.

2 - Se eu usar onevent=“isEnter(event)”, eu obtenho o evento de fato, porém, ocorre um erro de javascript em seguida. Pelo que verifiquei o isEnter é chamado 3x, uma para cada status (begin,complete,sucess). Aparentemente, o mesmo só processa corretamente na primeira chamada.

3 - PIOR, coloquei o isEnter apenas retornando false e mesmo assim a requisição ajax continuou.

4 - Tentei então usar o jsf.ajax.request ao invés da tag f:ajax, no entanto, não sei como executar o listener (#{controller.consultarPaginaInformada}) dessa forma.

Enfim, alguém sabe como fazer isso (executar a requisição ajax apenas se o usuário teclar ENTER)?

Segue uma solução :

<h:form>
<h:inputText id=“inputField” value="#{helloBean.name}"
onkeypress=“if (event.keyCode == 13) {event.target.blur();event.stopPropagation();return false;} else {return true;};”>
<f:ajax render=“output” execute=“inputField” event=“change”
listener="#{helloBean.myChangeEvent}"/>
</h:inputText>

<h:outputText id=“output” value="#{helloBean.name}" />


</h:form>