My question is when it's already been called?
You're in a
JSP file. The output stream will be open at the beginning, to output your html tags.
this object is only for binary output. pls give me reason for both the case
It's ok, you can use a String, in a
servlet. Just don't use that method in a JSP file, as you've seen in your first question.