However, with ear, the ejb deployment descriptors are now distributed to each ejb jars, and I don't really have a central web.xml to specify where to find ~each~ deployment descriptor...
Instead of the single Web-inf/cn.ejb deployment descriptor in this war, the ear has three deployment descriptors and they are packaged in the ejb jars.
when I package all ejb classes into a single war, with a single ejb deployment descriptor and the war's web.xml,it gets a handle on all object with no problem via jndi lookup (although I do want to use references on them now) and everything rtuns as expected, or so it seems.
This name, of course, only makes sense if the EJB is put into a jar. Jars are inconvenient during development, so Resin lets you rename the ejb-jar.xml file as *.ejb and put it in WEB-INF. We'll name it WEB-INF/hello.ejb. You can have as many *.ejb files as you want, Resin will use them all (for example WEB-INF/hello.ejb, WEB-INF/goodbye.ejb).
This makes me to believe that you were right from the beginning and I set you on the wrong path. You can read the complete article here:
However the question still remains whether resin has a j2ee license or not, because if it has then it must allow packing enterprise archives and conforms to current j2ee standards.
Sorry for any inconvenience, I only wanted to help...