Click on the image below to view it full size in an image viewer !
Java programming language classes that dynamically process requests and construct responses, usually for HTML pages

Here we distinguish between 'servlets' as a technology and a *Servlet class, written in the Java language (and also of course involved in JavaEE).

The source text «wrapper» Component helps to tie up some of the loose ends concerning the *Page analysis class, which is extended to HTML (and also XML) using dedicated analysis models, which provide distinct namespaces.

Note the Generalization "ladders" ! This is an indication that the analysis is converging.

Note also that we are now dealing directly with the more specific JavaEE versions of the analysis classes.

We could introduce some analysis operations with *Request as an argument and *Response as a return value, however in this case it will be left until later, so that reverse-engineered operations of a "designed" Servlet class can be referenced by the «wrapper» Component.

The above "associative" diagram is useful, however it does not offer much of a sense of flow of request and response; for that we need ports, as shown next ..