The Advantages of the Java EE 5 Platform

if basically java ee 5 is doing away with deployment descriptors and putting in annotations.. wouldn't we be losing out on one of the major advantages of using deployment descriptors? for instance, with a deployment descriptor we can make changes and redeploy the app without recompiling or even touching the source code! but since they plan to use annotations to replace deployment descriptors, any modifications to the annotations would need us to recompile the source again right? or is my concept of annotations wrong? i'm unclear about this (annotations) feature of java 5.

EJB 3.0 (JEE5) allows you to configure most application settings via annotations. But EJB 3.0 also supports XML files for overriding default annotation values and configuring external resources such as database connections. So, I guess it's all a matter of choice depending on the type of metadata: for metadata that is coupled to the classes, use annotations i.e. O/R annotations. For application-level metadata i.e AOP metadata, or DB metadata, use deployment descriptors.

Still, I guess building apps on JEE5 is not as flexible as doing so on Spring, especially when it comes to configuration choices.