Java servlet无法在JBoss中发送text / plain响应

时间:2013-08-24 11:02:34

标签: java servlets jboss content-type

我已经创建了一个将在JBoss中部署的Java Servlet。在进行一些计算后,它只是向客户端响应文本“OK”或“Fail”。它在使用Tomcat 6的开发服务器中运行良好,但当应用服务器是生产服务器上的JBoss 4.2时却不是这样。似乎JBoss将头添加到servlet响应中,因此我的客户端无法处理结果。 Servlet有点像这样(我把所有东西放在doGet函数中):

public void doGet(HttpServletRequest request,HttpServletResponse response) 
    throw IOException, ServletException {        

    String input = request.getParameter("input");
    response.setHeader("Content-Type", "text/plain");
    // response.setContentType("text/plain");

    try {
        if (functionToDoSomething(input)){
            response.getWriter().println("OK");
        }
        else {
            response.getWriter().println("FAIL.");
        }
        response.getWriter().flush();
    }
    catch (Exception e) {
        e.printStackTrace();
    } 
}

通常,客户端会收到纯文本“OK”或“FAIL”以继续此过程。但是,当在JBoss中部署Servlet时,客户端会收到类似的内容:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type></HEAD>
<BODY><PRE>OK
</PRE></BODY></HTML>

在Servlet代码中,我尝试更改内容类型,但似乎不起作用。

JBoss中是否有任何设置使其追加/覆盖Servlet响应的内容类型?提前感谢所有的帮助。

大卫

0 个答案:

没有答案