1

JBoss にデプロイされる Java サーブレットを作成しました。何らかの計算の後、クライアントに「OK」または「Fail」というテキストを返すだけです。Tomcat 6 を使用する私の開発サーバーでは問題なく動作しますが、アプリケーション サーバーが実稼働サーバーの JBoss 4.2 の場合はそうではありません。JBoss がサーブレットの応答にヘッダーを追加しているように見えるため、クライアントが結果を処理できません。サーブレットは次のようになります (すべてを 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 にデプロイされると、クライアントは次のようなものを受け取ります。

<!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>

サーブレット コードで content-type を変更しようとしましたが、うまくいかないようです。

JBoss にサーブレット応答のコンテンツ タイプを追加/上書きする設定はありますか? すべての助けを前もって感謝します。

デビッド

4

0 に答える 0