我如何从HttpServletResponse.sendError中检索msg

时间:2009-11-23 11:19:17

标签: java tomcat java-ee error-handling

我有两台tomcat服务器在它们之间进行通信。如果其中一台服务器出错,我想向其他服务器发送错误响应。

我发送错误使用: resp.sendError(HttpServletResponse.SC_BAD_REQUEST,e.getMessage());

我正在使用org.apache.commons.httpclient.httpMethod抓住回复。

我的问题是如何检索我添加到错误消息中的e.getMessage()?

感谢

2 个答案:

答案 0 :(得分:3)

您可以通过在web.xml中声明状态代码的特定页面来覆盖发送的页面:

<error-page>
     <error-code>400</error-code>
     <location>/errorMsg.jsp</location>
</error-page>

在JSP中,执行以下操作:

<%@page isErrorPage="true"%>
<%= exception.getMessage(); %>

然后,发回的所有内容都是消息。

答案 1 :(得分:0)

我认为错误消息以HTML格式打包然后发送,因此为了获取消息,您需要解析HTML。

我建议这不是在两台服务器之间传输信息的最有效方式。如果没有人需要查看数据,为什么不以XML等机器可读格式发送消息呢?是否有特定原因需要使用response.sendError()?