Well, I would like to share my vision of what dm Server is and how it could be extended.
So, for me, dm Server is an extension of an operating system. I mean, that when you do not have an application server, you simply deploy your classes (pojo) on the disk of your machine and you start differents «*main programs*» to run your applications (this is what you do with dm Server). The problem you've is that you cannot easily manage the classe's versions dependencies. The pro with a monolithic machine with only POJOs is that it is simple to deploy the classes and you do not need a distributed infrastructure; everything is «*local*». It's exactly what we have in the Cobol world where all the Cobol programs are hosted on the same big mainframe. All «*calls*» between applications (between Cobol programs) are «*local calls*» as we do inside a Java application where all the classes are in the same JVM.
Dm Server is THE BIG JVM of the server where it is hosted. It's like is the operating system were THE JVM. And it's a very good idea in a big IS where you've more than 200 applications (with many many components) and where the number of transactions per seconds is really big.
I could have say that is you run dm Server on a big Unix system or even on a big mainframe, dm Server can be a solution to replace an IMS/mainframe/Cobol solution i.e. A big machine, with all classes as POJOs and a big JVM, the dm Server.
But now, we've a problem, how a remote client, the GUI interface for example, can access the services hosted by dm Server ? Well we can use WebServices but why dm Server cannot host EJB ?
And can OSGI reference be injected into an EJB, packaged into an EJBJAR file ? (I think about @OSGiResource in EasyBeans)