The tiny kernel and short startup times in Glassfish v3 could have a huge impact to the architecture of... Rich Clients. The 0.5 (actually 0.486 S :-)) second startup time makes it interesting for embedding it into Rich Clients (e.g. Swing Apps). In that case the Glassfish could be started in process, as an embedded "service" in the client thread. This would in turn allow to use container services, especially DI, transactions and resource management of EntityManagers etc. With this approach the same bytecode could be deployed into the appserver (standalone Glassfish v3), as well as directly to the client (embedded Glassfish v3). The advantage here: you could use direct databinding techniques on the client (no DTOs, VOs etc. are needed any more...), but still make the same business logic available for SOA-like and webapplications.
In my talk TS-3559 (Fiday, 13.30) I will explain the benefits of such architectural approach. ...there is only one big problem: Glassfish v3 do not have support for EJB3 yet... But I already explained Jerome Dochez the architecture - and he was interested :-).
NEW online workshop: Web Components training (online)