ber*_*tie 9 jsf primefaces jsf-2
我正在尝试ajax功能,我很好奇我怎么能显示当我做ajax的东西时发生的错误消息?例如,我有一个primefaces按钮:
<p:commandButton value="Refresh" update="debugPanel messages"
action="#{checkbocLabBean.submit}"/>
Run Code Online (Sandbox Code Playgroud)
在测试该按钮时,似乎没有任何事情发生,直到我检查服务器日志,这是一个例外.事实证明我有一个错字.应该是#{checkboxLabBean.submit}.
我现在唯一能想到的就是禁用ajax,在我的情况下添加ajax ="false",错误就会显示出来.
在使用ajax请求时,是否还有其他方法可以在开发阶段将错误显示在浏览器中?
Ajax请求是异步发生的.默认情况下,它们不会影响整个文档.在PrimeFaces的ajax请求期间抛出的异常被委托给<p:ajaxStatus>
.你可以做你的事<facet name="error">
.
<p:ajaxStatus>
<f:facet name="start">Loading...</f:facet>
<f:facet name="success"><h:outputText value="" /></f:facet>
<f:facet name="error">An error has occurred!</f:facet>
</p:ajaxStatus>
Run Code Online (Sandbox Code Playgroud)
如果您更希望与错误页面哪位是一个非常合理的选择 - 那么它是很好的了解,PrimeFaces使用jQuery的被窝里,并且可以配置的jQuery如下这样做,以取代当前文档:
<script>
jQuery.ajaxSetup({
error: handleXhrError
});
function handleXhrError(xhr) {
document.open();
document.write(xhr.responseText);
document.close();
}
</script>
Run Code Online (Sandbox Code Playgroud)