posted 7 years ago
Java EE is the specification. Tomcat is simply one (partial) implementation of that specification. But then again, so is jetty. Glassfish, JBoss/Wildfly, WebLogic Server, IBM's WebSphere, the JoNaS server, all implementations. The spec is strictly documentation, not products. Unlike Microsoft's Office suite, where the specification is ultimately dependent on an implementation (Microsoft's own products).
Sun/Oracles does provide what's known as reference implementations of their specs. For example, Mojarra for JavaServer Faces. I understand that Tomcat served as the reference implementation for the servlet/JSP spart of the J2EE spec, but was supposedly abandoned in favor of Glassfish.
A reference implementation isn't all that special. What it means is basically that that is the platform that Sun/Oracle uses to proof/demonstrate the specification implementation. the Java specs are the final definition, even about the reference implementation. Oracle will quite cheerfully apply a battery of validation tests to any implementation of that spec - for a fee, of course - and if the product in question passes, will certify it.
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.