This is not a question about what is better. The first works fine when the two EJBs should be deployed as unit therefore whenever one is undeployed the other should also.
When you put them in two jar files then you can deploy/undeploy then idependently. But you need to link the other EJB as external EJB and must look it up with the full JNDI path.
When in 2 separate jars, I just can not deploy the SLSB. I have <ejb-ref> in the deployment descriptor for the SLSB. It always fails with the message that it can not find the entity bean. I would appreciate if you could tell me exact steps.