I'm working on some other modifications to Container and I will apply this patch (if no one objects).
I think there is a big problem with the deployment order. Right now with an ear that contains many ejb jars we deploy the jars individually in a more or less random order. I believe we need to: 1. get all the classes in all of the .ear in classloaders 2. in a create() step, create each Container and bind it in jndi. Also make the jsr-77 mbean. This step should do everything possible that doesn't look at configuration outside the Container we are create()ing. 3. in a start() step, resolve the jndi local environments, links, etc, and then make the container available to calls. This step hooks up all the configuration that looks outside the current Container. Would this fix the ejb-link problem you refer to? david jencks On 2002.02.20 09:52:09 -0500 Holger Engels wrote: > > Actually it does not work .. here's a patch, that fixes at least the > local > ejb-links. Mappings, that are specified in jboss.xml are not supported as > > of the current implementation. Somebody else posted the same bug, see > jboss-Bugs-520454. > > There's another problem left with ejb-links, that span over different > ejb-jars in an ear, see my previous postings with subject "[JBoss-dev] > bug > in ear deployment". I think we need something like an EARDeployer and / > or > something, that bundles Applications into EnterpriseApplications .. > > BTW: websphere 4 allows to choose between one classloader per ear or one > classloader per ejb-jar. > > Holger > > Index: server/src/main/org/jboss/ejb/Container.java > =================================================================== > RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/Container.java,v > retrieving revision 1.76 > diff -u -r1.76 Container.java > --- server/src/main/org/jboss/ejb/Container.java 17 Feb 2002 > 03:06:45 -0000 1.76 > +++ server/src/main/org/jboss/ejb/Container.java 20 Feb 2002 > 14:45:23 -0000 > @@ -854,12 +854,11 @@ > { > // Internal link > log.debug("Binding "+refName+" to bean source: > "+ref.getLink()); > - if (getApplication().getContainer(ref.getLink()) == > null) > + > + Container refContainer = > getApplication().getContainer(ref.getLink()); > + if (refContainer == null) > throw new DeploymentException ("Bean > "+ref.getLink()+" not found within this application."); > - /* Create a link from the ENC to the localJndiName > where the > - which is the location of the local home > - */ > - Util.bind(envCtx, refName, new > LinkRef(localJndiName)); > + Util.bind(envCtx, ref.getName(), new > LinkRef(refContainer.getBeanMetaData().getLocalJndiName())); > } > else > { > _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development