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 にサーブレット応答のコンテンツ タイプを追加/上書きする設定はありますか? すべての助けを前もって感謝します。
デビッド