基于Java服务器的web应用程序中的HTTP状态代码

基于Java服务器的web应用程序中的HTTP状态代码,java,xml,http-status-codes,http-upload,data-exchange,Java,Xml,Http Status Codes,Http Upload,Data Exchange,我有一个Java的web应用程序,它使用XML进行数据交换。我已经编写了一个servlet,它使用HTTPPOST从特定客户机上传XML文件。Post方法成功完成后,将向客户端发送200 OK消息(使用默认的web服务器HTTP状态)。现在,我需要在我的应用程序中包含一些HTTP状态代码,以便当上传出现问题时,客户端获得一些HTTP状态消息(例如,400错误请求,502错误网关)。如何在web应用程序中添加HTTP状态代码?请帮我提建议。谢谢你可以使用或 这些方法导致servlet容器执行的操作

我有一个Java的web应用程序,它使用XML进行数据交换。我已经编写了一个servlet,它使用HTTPPOST从特定客户机上传XML文件。Post方法成功完成后,将向客户端发送200 OK消息(使用默认的web服务器HTTP状态)。现在,我需要在我的应用程序中包含一些HTTP状态代码,以便当上传出现问题时,客户端获得一些HTTP状态消息(例如,400错误请求,502错误网关)。如何在web应用程序中添加HTTP状态代码?请帮我提建议。谢谢你可以使用或

这些方法导致servlet容器执行的操作有所不同,因此请选择最适合您的情况的方法

  • setStatus()

    如果此方法用于设置错误代码,则容器的 错误页面机制将不会被触发

  • sendError()

    使用指定的状态和状态向客户端发送错误响应 清除缓冲区。服务器默认为创建对的响应 看起来像HTML格式的服务器错误页,其中包含指定的 信息

中提供了状态代码常量的列表。对于您问题中的代码:

您可以使用或

这些方法导致servlet容器执行的操作有所不同,因此请选择最适合您的情况的方法

  • setStatus()

    如果此方法用于设置错误代码,则容器的 错误页面机制将不会被触发

  • sendError()

    使用指定的状态和状态向客户端发送错误响应 清除缓冲区。服务器默认为创建对的响应 看起来像HTML格式的服务器错误页,其中包含指定的 信息

中提供了状态代码常量的列表。对于您问题中的代码:

响应。发送错误(res.SC\u错误请求,“需要重要参数”); 其中response是您的HttpServletResponse 看

响应。发送错误(res.SC\u错误请求,“需要重要参数”); 其中response是您的HttpServletResponse 看

@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) {

    // handle upload

    // if error
    response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);

    // or
    response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
                       "An unknown error occurred");
}