Can you elaborate on the verbosity of the default names?
beanInterface is mandatory, but can contain the bean class for no-interface views.
@EJB(name = "java:global/ejb/AlienEntityHome", beanInterface = AlienEntityHome.class) @LocalBean // needed if implementing any interfaces
Well, the new portable jndi name syntax is quite long - .../<archive-name>/<module-name>/BeanClassName, and may confuse someone who does not know what's in those archives. /aliens/AlienEntityHome is much clearer and developer-friendly in my opinion.
Using the class as a beanInterface worked for me, thanks!
Kudos for finding such a solution.