More or less.
Tomcat, JBoss, Glassfish, etc. are all applications to the Unix
environment. (Or whatever environment/OS you run.)
But in the parlance of web programming, your application is the thing
that a client sees in their web browser. Both JBoss and Tomcat at least
(and probably all other containers) are capable of running more than one
application as a separate virtual host. Exactly like Apache is capable
of running separate websites as virtual hosts.
It's really a quibble over semantics. You could call a Java Enterprise
Edition container a framework, but the entry point for the OS is the
container itself, and the app runs as a series of callbacks.
"Container" is just JEE parlance for the thing that does that work for
you (processes incoming request, sends a response, connects to a DB,
etc.) which conforms to their JEE specification of what a container does.
In the same way we call a database a database even though it's really an
application too, we have different names for different specific types of
applications: demon, shell, name server, etc. Container is just one of
those names.