Seguinte,
Você pode realizar a submissão do formulário através de um clique em botão via javascript.
Se você tem um form como o seguinte:
<h:form id="meuForm">
...
<a4j:commandButton id="meuBotao" action="#{bean.acao}" value="hidden" style="display:none" styleClass="enterButton" />
</h:form>
teria que fazer:
document.getElementById("meuForm:meuBotao").click();
Se você usa jQuery tem um plugin que facilita a administração de hotkeys que é o jquery.hotkeys (eu uso a versão jquery.hotkeys-0.7.9.js)
Aí você pode fazer algo do estilo:
function handleEnter(){
jQuery(document).bind('keydown', 'return', function(evt) {
if (evt.target.tagName.toLowerCase() == "textarea") {//se for de uma textarea vc ignora o enter de deixa o comportamento normal.
return true;
}
// aqui voce pode fazer algo do tipo:
if (jQuery(".enterButton").length){ // certifique-se de que vc tem apenas 1 botao com estilo enterButton no documento.
jQuery(".enterButton")[0].click();
}
return false;
});
}
jQuery(document).ready(handleEnter);