Actually ejb-jar.xml file provides the metadata of the EJBs plus it also includes some other useful stuff like defining security roles, method permissions, transactions etc.
One of the advantages of the configuration/meta data files is without changing the actual application code we can change the application behavior by changing these property values.
Now if we move these settings to the annotations in the actual business components, do we need to change the components code, build and redeploy every time if there are any changes in those property values.