Barring, say, an Apache
J2EE module, JSP requests get passed out of the HTTP server and over to the JSP server and then back in again (subject to config options). Anyway, SSI is done totally within the HTTP server, JSP include is done as part of the JSP process. Normally it would make more sense to have JSP's use their own include feature - it keeps everything in the same frame of reference.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.