In wiki, it says:
Java Platform, Enterprise Edition [...] to deploy [...] distributed, multi-tier Java software, based largely on modular components running on an application server.
As far as i know, distributed means "multiple computers" which is equal to "multiple servers", so why it says in the end "running on an application server" (so only 1 server) ?
Does a JEE application have to be multi-tier ?
Are application based on a Service-oriented architecture also JEE applications ?
Applications using RMI and sockets, are they JEE applications (since the are calls between differents processes which can be on differents servers) ?
multi-tier and/or ditstributed do they have the same meaning ?
When we talk about layers in these apps, is it physical layers ( database, browser, web server,...) or logical layers (data access layer, business layer,...) ?