J2EE virou JEE
JEE é um padrão da indústria para desenvolvimento de aplicações portáveis, robustas e seguras. Da uma olhada na FAQ:
http://java.sun.com/javaee/reference/faq/javaee_faq.jsp#javaee
Então o JEE te da ferramentas para desenvolver aplicativos web, webservices, componentes de persistência, sistemas baseados em mensagens etc.
Ok. quando você desenvolve aplicações simples no Java, você utiliza o JSE (Java Standard Edition) que seria mais apropriado para aplicações que rodam no cliente (na sua máquina mesmo). Por exemplo: uma calculadora desktop … feita em Swing apenas.
Mas quando você precisa de um aplicativo multi-usuario ou com requisitos de robustez ou segurança maior, você vai sentir necessidade de utilizar o JEE.
Ok, neste caso, você colocaria sua aplicação não na sua máquina cliente, mas em uma máquina servidor (uma máquina com mais capacidade).
E para iniciar este aplicativo no servidor, você precisará de containers. Containers são outros sistemas capazes de receber seu próprio aplicativo e iniciá-los, deixando-os prontos para seus usuários utilizarem.
O JBoss é um servidor de aplicações. Ou um conjunto de containers que receberá sua aplicação, iniciará ela e a deixará pronta para seus usuários utilizarem.
Vamos supor que eu faça uma aplicação web. Eu vou colocar ela dentro do JBoss. O JBoss possui um container Web, o qual receberá minha aplicação, inciará e dará um endereço web para ela.
Depois de iniciada, eu vou no browser e acesso minha aplicação que está la dentro do JBoss, que por sua vez está na máquina servidora. A url seria:
http://servidor:8080/minhaaplicacao
servidor seria a maquina fisica
8080 é a porta default que o jboss disponibiliza as aplicações que estão dentro de seu container web
minhaaplicacao foi o nome dado ao meu sistema