Die gesamte Servlet Technologie (JSS), JSP, JSF, Struts und JSTL sind Beispiele für solche JEE Frameworks und sind also praktisch Unterthemen von JEE.
Was soll denn "JSS" sein?
"Servlet Technolgie" ist imho schon ungenau, es handelt sich um die Servlet API, die sich aus der Servlet Spezifikation ergibt.
Die Servlet Spek. & API Teil von JEE.
JSP & JSF bauen auf der Serlvet API auf, kamen auch von SUN (Oracle) bzw. vom JCP, sind auch Teil von JEE.
Struts ist ein Framework für WebApps und baut auf der Servlet & JSP API auf, struts ist aber kein Teil von JEE, sondern einfach nur ein (mittlerweile veraltetes) Framework welches das Leben mit Servelts & JSPs vereinfachen sollte.
JEE ist eigentlich nix weiter als eine Sammlung von Speks und den APIs welche spezifiert wurden, mehr nicht.
Die Implementierungen dieser API kommen meist von anderen "Unternehmen", Tomcat zB. implementiert die Servlet & JSP API (und einige mehr), war früher sogar sie Referenzimplementierung, heute ist es GlassFish.
Die Speks. & APIs kann man sich beim JCP runterladen, die Implementierungen kommen von verschiedenen "Unternehmen".
Die "Garantie" wenn man so will war eben, dass Sun (Oracle) bzw. das JCP die Spezifikation & APIs erstellt und (früher fast ausschliesslich kommerzielle) Hersteller Implementierungen liefern, als Entwickler musste man sich nur an den Standard, die Spezifikation, halten, und theoretisch wäre deine Enterprise App auf jedem verfügbaren JEE Server ohne Änderung gelaufen.
PS: Ist der Umgang mit JEE ohne Servlets überhaupt möglich?
JEE ist nicht gleich Web
Klar, JEE denifiert viele APIs, nicht alle haben etwas mit WebApps zu tun.
Man kann EJBs nutzen ohne WebApp, genauso JPA, etc. pp., genau das macht JEE so unübersichtlich & komplex, dutzende und aberdutzende APIs werden da festgelegt.