User: oberg
Date: 00/08/23 04:00:26
Modified: src/main/org/jboss/ejb Container.java
Log:
Fixed internal ejb-ref links. Still not perfect since it uses JNDI, and beans may
not be bound into JNDI!
Revision Changes Path
1.25 +5 -25 jboss/src/main/org/jboss/ejb/Container.java
Index: Container.java
===================================================================
RCS file: /products/cvs/ejboss/jboss/src/main/org/jboss/ejb/Container.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- Container.java 2000/08/22 19:27:15 1.24
+++ Container.java 2000/08/23 11:00:26 1.25
@@ -67,7 +67,7 @@
* @see ContainerFactory
* @author Rickard �berg ([EMAIL PROTECTED])
* @author <a href="[EMAIL PROTECTED]">Marc Fleury</a>
- * @version $Revision: 1.24 $
+ * @version $Revision: 1.25 $
*/
public abstract class Container
{
@@ -402,7 +402,10 @@
{
// Internal link
Logger.debug("Binding "+ref.getName()+" to internal JNDI source:
"+ref.getLink());
- bind(ctx, ref.getName(), new LinkRef(ref.getLink()));
+ bind(ctx, ref.getName(), new
LinkRef(getApplication().getContainer(ref.getLink()).getBeanMetaData().getJndiName()));
+
+// bind(ctx, ref.getName(), new Reference(ref.getHome(), new
StringRefAddr("Container",ref.getLink()), getClass().getName()+".EjbReferenceFactory",
null));
+// bind(ctx, ref.getName(), new LinkRef(ref.getLink()));
}
else
{
@@ -524,27 +527,4 @@
ctx.bind(n.get(0), val);
}
-
- public static class EjbReferenceFactory
- implements ObjectFactory
- {
- public Object getObjectInstance(Object ref,
- Name name,
- Context nameCtx,
- Hashtable environment)
- throws Exception
- {
- Object con = ((Reference)ref).get(0).getContent();
- if (con instanceof EntityContainer)
- {
- return ((EntityContainer)con).getContainerInvoker().getEJBHome();
- } if (con instanceof StatelessSessionContainer)
- {
- return
((StatelessSessionContainer)con).getContainerInvoker().getEJBHome();
- } else
- {
- return null;
- }
- }
- }
}