From what I have seen so far in various literature, the term "component" does not have precise definition. Just as you mentioned, I have seen a
jsp page referred to as a component; but I have also seen a collection of classes defined as a single component. The term 'component' can be pretty much anything, and therefore it conveys very little useful meaning. At least to me. Anybody, please correct me if I am wrong in this.
Also, you can read what wikipedia crowd have to
say about it.
I particularly like this statement:
A component is an object written to a specification. It does not matter what the specification is...
[ February 23, 2008: Message edited by: Marcus Jastrebowski ]