レスどうもありがとうございます。

>>68
> ひとついうがsaxでhtmlは読めんぞ。
> ちゃんとhtmlパーサ使え。
そのとおりなのですが、今回はかなりきれいな xhtml 形式の HTML が
渡されることが業務要件で保障されている(らしい)ので、saxを使うことになりました。
SAXはある程度使えるようになったが、↓は少しやってみたけどよくわからんかった。
http://htmlparser.sourceforge.net/

>>70
なるほど、扱っているデータがテキストなので、オレパーサの引数は Stream ではなく
Writer にすべきですね。
Servlet から渡すときも、response.getOutputStream() ではなく response.getWriter() を
使うようにします。
BufferedWriter をかませるかどうかは状況やテストをしてみて考えますが、
オレパーサの本体からははずすようにしてみます。
勉強になりました。どうもありがとうございました。