This part of the explanation is incorrect:
To retrieve the same object in the JSP, you can either avoid the useBean tag altogether (because the bean is already there). The getProperty tag will find the bean automatically by searching all the scopes starting from page, request, session, and application.
If we don't use <jsp:useBean tag first, <jsp:getProperty will not find the testBean that resides in servlet context attributes.
JSP.5.3 <jsp:getProperty>
...
Note – A consequence of the previous paragraph is that objects that are stored
in, say, the session by a front component are not automatically visible to jsp:set-
Property and jsp:getProperty actions in that page unless a jsp:useBean action, or
some other action, makes them visible.