wab, eba, application.xml, ...
Why do we need to introduce all of these new concepts? One of the reasons OSGi feels so much nicer than the traditional J2EE stack is that the number of concepts is vastly reduced. The core is kept to the minimal set of concepts to achieve the properties of modularity, dynamicity, and security. When I create a plug-in project in eclipse, there is only one meta-data file, MANIFEST.MF, that I need to worry about.
Compare this to a J2EE project which introduces so many files and descriptors in my project that the IDE designers decided they need to hide them from me to make it 'usable'.