[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/16 23:19:52 Modified:src/main/org/jboss/ejb EjbModule.java Log: removed my debug logging statements, oops Revision ChangesPath 1.23 +1 -7 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- EjbModule.java17 Apr 2002 05:40:07 - 1.22 +++ EjbModule.java17 Apr 2002 06:19:52 - 1.23 @@ -83,7 +83,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.22 $ + * @version $Revision: 1.23 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -1064,18 +1064,13 @@ throws DeploymentException { String path = name.substring(0, name.indexOf('#')); - log.info(path: + path); String ejbName = name.substring(name.indexOf('#') + 1); - log.info(ejbName: + ejbName); String us = deploymentInfo.url.toString(); - log.info(us: + us); //remove our jar name String ourPath = us.substring(0, us.lastIndexOf('/')); - log.info(ourPath: + ourPath); for (StringTokenizer segments = new StringTokenizer(path, /); segments.hasMoreTokens(); ) { String segment = segments.nextToken(); - log.info(segment: + segment); //kind of silly, but takes care of ../s1/s2/../s3/myjar.jar if (segment.equals(..)) { @@ -1085,7 +1080,6 @@ { ourPath += / + segment; } // end of else - log.info(ourPath: + ourPath); } URL target = null; try ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/16 23:12:34 Modified:src/main/org/jboss/ejb Tag: Branch_3_0 EjbModule.java Log: removed my debug logging statements, oops Revision ChangesPath No revision No revision 1.21.2.2 +1 -7 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.21.2.1 retrieving revision 1.21.2.2 diff -u -r1.21.2.1 -r1.21.2.2 --- EjbModule.java17 Apr 2002 05:36:18 - 1.21.2.1 +++ EjbModule.java17 Apr 2002 06:12:32 - 1.21.2.2 @@ -83,7 +83,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.21.2.1 $ + * @version $Revision: 1.21.2.2 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -1064,18 +1064,13 @@ throws DeploymentException { String path = name.substring(0, name.indexOf('#')); - log.info(path: + path); String ejbName = name.substring(name.indexOf('#') + 1); - log.info(ejbName: + ejbName); String us = deploymentInfo.url.toString(); - log.info(us: + us); //remove our jar name String ourPath = us.substring(0, us.lastIndexOf('/')); - log.info(ourPath: + ourPath); for (StringTokenizer segments = new StringTokenizer(path, /); segments.hasMoreTokens(); ) { String segment = segments.nextToken(); - log.info(segment: + segment); //kind of silly, but takes care of ../s1/s2/../s3/myjar.jar if (segment.equals(..)) { @@ -1085,7 +1080,6 @@ { ourPath += / + segment; } // end of else - log.info(ourPath: + ourPath); } URL target = null; try ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/16 22:40:07 Modified:src/main/org/jboss/ejb EjbModule.java Log: implemented relative ejb-link (merged from Branch_3_0) Revision ChangesPath 1.22 +99 -30jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- EjbModule.java15 Apr 2002 02:48:53 - 1.21 +++ EjbModule.java17 Apr 2002 05:40:07 - 1.22 @@ -8,6 +8,10 @@ + + + +//import org.jboss.system.UnifiedClassLoader; import java.lang.reflect.Constructor; import java.net.MalformedURLException; import java.net.URL; @@ -20,12 +24,16 @@ import java.util.Hashtable; import java.util.Iterator; import java.util.Map; +import java.util.StringTokenizer; import javax.ejb.EJBLocalHome; -import javax.naming.InitialContext; import javax.management.MBeanServer; import javax.management.ObjectName; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.transaction.TransactionManager; import org.jboss.deployment.DeploymentException; import org.jboss.deployment.DeploymentInfo; +import org.jboss.deployment.MainDeployerMBean; import org.jboss.ejb.BeanLockManager; import org.jboss.ejb.Container; import org.jboss.ejb.plugins.AbstractInstanceCache; @@ -43,27 +51,21 @@ import org.jboss.metadata.SessionMetaData; import org.jboss.metadata.XmlFileLoader; import org.jboss.metadata.XmlLoadable; +import org.jboss.mx.loading.UnifiedClassLoader; import org.jboss.security.AuthenticationManager; import org.jboss.security.RealmMapping; import org.jboss.system.Service; import org.jboss.system.ServiceControllerMBean; import org.jboss.system.ServiceMBeanSupport; -//import org.jboss.system.UnifiedClassLoader; -import org.jboss.mx.loading.UnifiedClassLoader; import org.jboss.util.jmx.MBeanProxy; +import org.jboss.util.jmx.ObjectNameFactory; import org.jboss.verifier.BeanVerifier; import org.jboss.verifier.event.VerificationEvent; import org.jboss.verifier.event.VerificationListener; import org.jboss.web.WebClassLoader; import org.jboss.web.WebServiceMBean; - import org.w3c.dom.Element; -import javax.naming.NamingException; -import javax.transaction.TransactionManager; - -import org.jboss.util.jmx.ObjectNameFactory; - /** * An EjbModule represents a collection of beans that are deployed as a * unit. @@ -81,7 +83,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.21 $ + * @version $Revision: 1.22 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -136,11 +138,11 @@ private final Map moduleData = Collections.synchronizedMap(new HashMap()); - //private MBeanServer server; - // Static - /** Stores a map of DeploymentInfos to EjbModules. */ + /** Stores a map of DeploymentInfos to EjbModules. +* @todo this is silly, do something else. +*/ private static HashMap ejbModulesByDeploymentInfo = new HashMap(); // Public @@ -261,12 +263,21 @@ * not found */ public Container findContainer(String name) + throws DeploymentException { // Quick check Container result = (Container)containers.get(name); if (result != null) + { + //It is in this module return result; - + } + // Does the name include a path? + if (name.indexOf('#') != -1) + { + return locateContainerByPath(name); + } // end of if () + // Ok, we have to walk the tree return locateContainer(name); } @@ -995,10 +1006,6 @@ */ private Container locateContainer(String name) { - // Check for a relative path - if (name.startsWith(..)) - return locateContainerRelative(name); - // Get the top level deployment DeploymentInfo info = deploymentInfo; while (info.parent != null) @@ -1021,25 +1028,21 @@ */ private Container locateContainer(DeploymentInfo info, String name) { - Container result = null; - // Try the current EjbModule - EjbModule module = (EjbModule) ejbModulesByDeploymentInfo.get(info); - if (module != null) + Container result = getContainerByDeploymentInfo(info, name); + if (result != null) { - result =
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/16 22:36:18 Modified:src/main/org/jboss/ejb Tag: Branch_3_0 EjbModule.java Log: implemented relative ejb-link Revision ChangesPath No revision No revision 1.21.2.1 +99 -30jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.21 retrieving revision 1.21.2.1 diff -u -r1.21 -r1.21.2.1 --- EjbModule.java15 Apr 2002 02:48:53 - 1.21 +++ EjbModule.java17 Apr 2002 05:36:18 - 1.21.2.1 @@ -8,6 +8,10 @@ + + + +//import org.jboss.system.UnifiedClassLoader; import java.lang.reflect.Constructor; import java.net.MalformedURLException; import java.net.URL; @@ -20,12 +24,16 @@ import java.util.Hashtable; import java.util.Iterator; import java.util.Map; +import java.util.StringTokenizer; import javax.ejb.EJBLocalHome; -import javax.naming.InitialContext; import javax.management.MBeanServer; import javax.management.ObjectName; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.transaction.TransactionManager; import org.jboss.deployment.DeploymentException; import org.jboss.deployment.DeploymentInfo; +import org.jboss.deployment.MainDeployerMBean; import org.jboss.ejb.BeanLockManager; import org.jboss.ejb.Container; import org.jboss.ejb.plugins.AbstractInstanceCache; @@ -43,27 +51,21 @@ import org.jboss.metadata.SessionMetaData; import org.jboss.metadata.XmlFileLoader; import org.jboss.metadata.XmlLoadable; +import org.jboss.mx.loading.UnifiedClassLoader; import org.jboss.security.AuthenticationManager; import org.jboss.security.RealmMapping; import org.jboss.system.Service; import org.jboss.system.ServiceControllerMBean; import org.jboss.system.ServiceMBeanSupport; -//import org.jboss.system.UnifiedClassLoader; -import org.jboss.mx.loading.UnifiedClassLoader; import org.jboss.util.jmx.MBeanProxy; +import org.jboss.util.jmx.ObjectNameFactory; import org.jboss.verifier.BeanVerifier; import org.jboss.verifier.event.VerificationEvent; import org.jboss.verifier.event.VerificationListener; import org.jboss.web.WebClassLoader; import org.jboss.web.WebServiceMBean; - import org.w3c.dom.Element; -import javax.naming.NamingException; -import javax.transaction.TransactionManager; - -import org.jboss.util.jmx.ObjectNameFactory; - /** * An EjbModule represents a collection of beans that are deployed as a * unit. @@ -81,7 +83,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.21 $ + * @version $Revision: 1.21.2.1 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -136,11 +138,11 @@ private final Map moduleData = Collections.synchronizedMap(new HashMap()); - //private MBeanServer server; - // Static - /** Stores a map of DeploymentInfos to EjbModules. */ + /** Stores a map of DeploymentInfos to EjbModules. +* @todo this is silly, do something else. +*/ private static HashMap ejbModulesByDeploymentInfo = new HashMap(); // Public @@ -261,12 +263,21 @@ * not found */ public Container findContainer(String name) + throws DeploymentException { // Quick check Container result = (Container)containers.get(name); if (result != null) + { + //It is in this module return result; - + } + // Does the name include a path? + if (name.indexOf('#') != -1) + { + return locateContainerByPath(name); + } // end of if () + // Ok, we have to walk the tree return locateContainer(name); } @@ -995,10 +1006,6 @@ */ private Container locateContainer(String name) { - // Check for a relative path - if (name.startsWith(..)) - return locateContainerRelative(name); - // Get the top level deployment DeploymentInfo info = deploymentInfo; while (info.parent != null) @@ -1021,25 +1028,21 @@ */ private Container locateContainer(DeploymentInfo info, String name) { - Container result = null; - // Try the current EjbModule - EjbModule module = (EjbModule) ejbModulesByDeploymentInfo.get(info); - if (module != null) + Container result =
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/14 19:48:53 Modified:src/main/org/jboss/ejb EjbModule.java Log: Changed to use UnifiedLoaderRepository and UnifiedClassLoader from jbossmx. Removed ServiceLibraries, UnifiedClassLoader, and MBeanClassLoader from jboss-system Revision ChangesPath 1.21 +3 -2 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- EjbModule.java14 Apr 2002 01:19:53 - 1.20 +++ EjbModule.java15 Apr 2002 02:48:53 - 1.21 @@ -48,7 +48,8 @@ import org.jboss.system.Service; import org.jboss.system.ServiceControllerMBean; import org.jboss.system.ServiceMBeanSupport; -import org.jboss.system.UnifiedClassLoader; +//import org.jboss.system.UnifiedClassLoader; +import org.jboss.mx.loading.UnifiedClassLoader; import org.jboss.util.jmx.MBeanProxy; import org.jboss.verifier.BeanVerifier; import org.jboss.verifier.event.VerificationEvent; @@ -80,7 +81,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.20 $ + * @version $Revision: 1.21 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: d_jencks Date: 02/04/13 09:10:11 Modified:src/main/org/jboss/ejb EjbModule.java Log: Added ability to declare mbean dependencies from ejbs and container configurations Revision ChangesPath 1.19 +9 -7 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- EjbModule.java13 Apr 2002 01:40:31 - 1.18 +++ EjbModule.java13 Apr 2002 16:10:11 - 1.19 @@ -80,7 +80,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.18 $ + * @version $Revision: 1.19 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -370,19 +370,21 @@ ObjectName jmxName= con.getJmxName(); server.registerMBean(con, jmxName); -serviceController.create(jmxName); +BeanMetaData metaData = con.getBeanMetaData(); +Collection depends = metaData.getDepends(); +serviceController.create(jmxName, depends); // Create JSR-77 EJB-Wrapper log.debug( Application.create(), create JSR-77 EJB-Component ); -BeanMetaData lMetaData = con.getBeanMetaData(); +//BeanMetaData lMetaData = con.getBeanMetaData(); int lType = - lMetaData.isSession() ? - ( ( (SessionMetaData) lMetaData ).isStateless() ? 2 : 1 ) : - ( lMetaData.isMessageDriven() ? 3 : 0 ); + metaData.isSession() ? + ( ( (SessionMetaData) metaData ).isStateless() ? 2 : 1 ) : + ( metaData.isMessageDriven() ? 3 : 0 ); ObjectName lEJB = EJB.create( server, getModuleName().toString(), lType, - lMetaData.getJndiName() + metaData.getJndiName() ); if (debug) { log.debug( Application.start(), EJB: + lEJB ); ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: starksm Date: 02/04/12 13:04:25 Modified:src/main/org/jboss/ejb EjbModule.java Log: Pass the container JMX ObjectName to the class loader rather than the container reference to avoid problems with strong references to the container Revision ChangesPath 1.17 +3 -3 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- EjbModule.java12 Apr 2002 19:30:41 - 1.16 +++ EjbModule.java12 Apr 2002 20:04:25 - 1.17 @@ -78,7 +78,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.16 $ + * @version $Revision: 1.17 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -652,9 +652,9 @@ { Class clazz = cl.loadClass(webClassLoaderName); Constructor constructor = clazz.getConstructor( - new Class[] { Container.class, UnifiedClassLoader.class } ); + new Class[] { ObjectName.class, UnifiedClassLoader.class } ); wcl = (WebClassLoader)constructor.newInstance( - new Object[] { container, cl }); + new Object[] { container.getJmxName(), cl }); } catch (Exception e) { ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: dsundstrom Date: 02/04/12 18:40:31 Modified:src/main/org/jboss/ejb EjbModule.java Log: Moved static application data map to an instance variable to in EjbModule. Should reduce memory leak. Revision ChangesPath 1.18 +27 -1 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- EjbModule.java12 Apr 2002 20:04:25 - 1.17 +++ EjbModule.java13 Apr 2002 01:40:31 - 1.18 @@ -15,9 +15,11 @@ import java.rmi.RemoteException; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.Hashtable; import java.util.Iterator; +import java.util.Map; import javax.ejb.EJBLocalHome; import javax.naming.InitialContext; import javax.management.MBeanServer; @@ -78,7 +80,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.17 $ + * @version $Revision: 1.18 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -130,6 +132,9 @@ private ServiceControllerMBean serviceController; + private final Map moduleData = + Collections.synchronizedMap(new HashMap()); + //private MBeanServer server; // Static @@ -147,6 +152,26 @@ this.name = deploymentInfo.url.toString(); } + public Map getModuleDataMap() + { + return moduleData; + } + + public Object getModuleData(Object key) + { + return moduleData.get(key); + } + + public void putModuleData(Object key, Object value) + { + moduleData.put(key, value); + } + + public void removeModuleData(Object key) + { + moduleData.remove(key); + } + /** * Add a container to this deployment unit. * @@ -642,6 +667,7 @@ // For loading resources that must come from the local jar. Not for loading classes! container.setLocalClassLoader( new URLClassLoader( new URL[ 0 ], localCl ) ); // Set metadata (do it *before* creating the container's WebClassLoader) + container.setEjbModule( this ); container.setBeanMetaData( bean ); // Create the container's WebClassLoader ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: luke_t Date: 02/04/06 13:20:44 Modified:src/main/org/jboss/ejb EjbModule.java Log: Added log warning message for duplicate ejb names Revision ChangesPath 1.15 +5 -2 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- EjbModule.java23 Mar 2002 21:11:02 - 1.14 +++ EjbModule.java6 Apr 2002 21:20:43 - 1.15 @@ -78,7 +78,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.14 $ + * @version $Revision: 1.15 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -154,7 +154,10 @@ */ private void addContainer(Container con) { - containers.put(con.getBeanMetaData().getEjbName(), con); + String ejbName = con.getBeanMetaData().getEjbName(); + if(containers.containsKey(ejbName)) + log.warn(Duplicate ejb-name. Container for + ejbName + already exists.); + containers.put(ejbName, con); con.setEjbModule(this); } ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: ejort Date: 02/03/23 13:11:02 Modified:src/main/org/jboss/ejb EjbModule.java Log: JBoss/JBossMX integration. Also includes a fix to the cluster tests and a more complete ejblink test that currently fails Revision ChangesPath 1.14 +40 -10jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- EjbModule.java17 Mar 2002 12:59:44 - 1.13 +++ EjbModule.java23 Mar 2002 21:11:02 - 1.14 @@ -9,16 +9,20 @@ import java.lang.reflect.Constructor; +import java.net.MalformedURLException; import java.net.URL; +import java.net.URLClassLoader; import java.rmi.RemoteException; +import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.Hashtable; import java.util.Iterator; -import java.util.WeakHashMap; import javax.ejb.EJBLocalHome; +import javax.naming.InitialContext; import javax.management.MBeanServer; import javax.management.ObjectName; +import org.jboss.deployment.DeploymentException; import org.jboss.deployment.DeploymentInfo; import org.jboss.ejb.BeanLockManager; import org.jboss.ejb.Container; @@ -44,10 +48,6 @@ import org.jboss.system.ServiceMBeanSupport; import org.jboss.system.UnifiedClassLoader; import org.jboss.util.jmx.MBeanProxy; -import java.util.ArrayList; -import javax.naming.InitialContext; -import java.net.URLClassLoader; -import org.jboss.deployment.DeploymentException; import org.jboss.verifier.BeanVerifier; import org.jboss.verifier.event.VerificationEvent; import org.jboss.verifier.event.VerificationListener; @@ -78,7 +78,7 @@ * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a * @author a href=mailto:[EMAIL PROTECTED];Adrian.Brock/a - * @version $Revision: 1.13 $ + * @version $Revision: 1.14 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -135,7 +135,7 @@ // Static /** Stores a map of DeploymentInfos to EjbModules. */ - private static WeakHashMap ejbModulesByDeploymentInfo = new WeakHashMap(); + private static HashMap ejbModulesByDeploymentInfo = new HashMap(); // Public @@ -145,9 +145,6 @@ { this.deploymentInfo = di; this.name = deploymentInfo.url.toString(); - - // Keep track of which deployments are ejbModules - ejbModulesByDeploymentInfo.put(di, this); } /** @@ -286,6 +283,12 @@ // Service implementation public void createService() throws Exception { + // Keep track of which deployments are ejbModules + synchronized(ejbModulesByDeploymentInfo) + { + ejbModulesByDeploymentInfo.put(deploymentInfo, this); + } + serviceController = (ServiceControllerMBean) MBeanProxy.create(ServiceControllerMBean.class, ServiceControllerMBean.OBJECT_NAME, @@ -442,6 +445,12 @@ { EJBModule.destroy(server, getModuleName().toString() ); } + + // Keep track of which deployments are ejbModules + synchronized(ejbModulesByDeploymentInfo) + { + ejbModulesByDeploymentInfo.remove(deploymentInfo); + } } // ** @@ -930,6 +939,10 @@ */ private Container locateContainer(String name) { + // Check for a relative path + if (name.startsWith(..)) + return locateContainerRelative(name); + // Get the top level deployment DeploymentInfo info = deploymentInfo; while (info.parent != null) @@ -974,6 +987,23 @@ } // Nothing found + return null; + } + + /** +* Find a container from this deployment package, used to process ejb-link +* that is a relative pathp +* +* Determines the path based on the url. +* +* @param name ejb-name name defined in ejb-jar.xml in some jar in +* the same deployment package +* @return container for the named bean, or null if the container was +* not found +*/ + private Container locateContainerRelative(String name) + { + log.warn(Not implemented: + name); return null; } } ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: reverbel Date: 02/03/14 15:46:49 Modified:src/main/org/jboss/ejb EjbModule.java Log: The container classloader now has the container WebClassLoader as its parent. If the container WebClassLoader is an instance of a WebClassLoader subclass that dynamically generates stub classes (such as the one used by the IIOP module), then the container will see any additional classes loaded by this subclass. Revision ChangesPath 1.12 +6 -5 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- EjbModule.java11 Mar 2002 04:31:34 - 1.11 +++ EjbModule.java14 Mar 2002 23:46:49 - 1.12 @@ -73,7 +73,7 @@ * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a - * @version $Revision: 1.11 $ + * @version $Revision: 1.12 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -574,13 +574,10 @@ ClassLoader localCl ) throws NamingException, DeploymentException { - // Create classloader for this container - // Only used to unique the bean ENC and does not augment class loading - container.setClassLoader( new URLClassLoader( new URL[ 0 ], cl ) ); // Create local classloader for this container // For loading resources that must come from the local jar. Not for loading classes! container.setLocalClassLoader( new URLClassLoader( new URL[ 0 ], localCl ) ); - // Set metadata + // Set metadata (do it *before* creating the container's WebClassLoader) container.setBeanMetaData( bean ); // Create the container's WebClassLoader @@ -614,6 +611,10 @@ } } container.setCodebase(sb.toString()); + + // Create classloader for this container + // Only used to unique the bean ENC and does not augment class loading + container.setClassLoader( new URLClassLoader( new URL[ 0 ], wcl ) ); // Set transaction manager InitialContext iniCtx = new InitialContext(); ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: reverbel Date: 02/03/10 17:24:56 Modified:src/main/org/jboss/ejb EjbModule.java Log: Method initializeContainer was changed to create a WebClassLoader for the container and to register it with the web service. Revision ChangesPath 1.10 +40 -1 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- EjbModule.java8 Mar 2002 20:59:28 - 1.9 +++ EjbModule.java11 Mar 2002 01:24:56 - 1.10 @@ -9,6 +9,7 @@ //import org.jboss.management.j2ee.EjbModule; +import java.lang.reflect.Constructor; import java.net.URL; import java.rmi.RemoteException; import java.util.Collection; @@ -20,6 +21,7 @@ import javax.management.ObjectName; import org.jboss.deployment.DeploymentInfo; import org.jboss.ejb.BeanLockManager; +import org.jboss.ejb.Container; import org.jboss.ejb.plugins.AbstractInstanceCache; import org.jboss.ejb.plugins.SecurityProxyInterceptor; import org.jboss.ejb.plugins.StatefulSessionInstancePool; @@ -39,6 +41,7 @@ import org.jboss.system.Service; import org.jboss.system.ServiceControllerMBean; import org.jboss.system.ServiceMBeanSupport; +import org.jboss.system.UnifiedClassLoader; import org.jboss.util.jmx.MBeanProxy; import java.util.ArrayList; import javax.naming.InitialContext; @@ -47,6 +50,8 @@ import org.jboss.verifier.BeanVerifier; import org.jboss.verifier.event.VerificationEvent; import org.jboss.verifier.event.VerificationListener; +import org.jboss.web.WebClassLoader; +import org.jboss.web.WebServiceMBean; import org.w3c.dom.Element; @@ -67,7 +72,8 @@ * * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a - * @version $Revision: 1.9 $ + * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a + * @version $Revision: 1.10 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -570,6 +576,39 @@ container.setLocalClassLoader( new URLClassLoader( new URL[ 0 ], localCl ) ); // Set metadata container.setBeanMetaData( bean ); + + // Create the container's WebClassLoader + // and register it with the web service. + String webClassLoaderName = conf.getWebClassLoader(); + WebClassLoader wcl; + try + { + Class clazz = cl.loadClass(webClassLoaderName); + Constructor constructor = clazz.getConstructor( + new Class[] { Container.class, UnifiedClassLoader.class } ); + wcl = (WebClassLoader)constructor.newInstance( + new Object[] { container, cl }); + } + catch (Exception e) + { + throw new DeploymentException( + Failed to create WebClassLoader of class: + + webClassLoaderName + : , e); + } + WebServiceMBean webServer = +(WebServiceMBean)MBeanProxy.create(WebServiceMBean.class, + WebServiceMBean.OBJECT_NAME); + URL[] codebase = { webServer.addClassLoader(wcl) }; + wcl.setWebURLs(codebase); + StringBuffer sb = new StringBuffer(); + for (int i = 0; i codebase.length; i++) { + sb.append(codebase[i].toString()); + if (i codebase.length - 1) { +sb.append( ); + } + } + container.setCodebase(sb.toString()); + // Set transaction manager InitialContext iniCtx = new InitialContext(); container.setTransactionManager( (TransactionManager) iniCtx.lookup( java:/TransactionManager ) ); ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: schaefera Date: 02/03/10 20:31:34 Modified:src/main/org/jboss/ejb EjbModule.java Log: Moved the JSR-77 code to the new management module. It contains the specification implementation for MEJB and the JBoss implementation. It does not contain references to JBoss server. The only workaround there is that MEJB needs to use the JMX RemoteMBean- Server which is not available in JBossMX right now. Therefore I added this to a JAR achive under tools/lib. Revision ChangesPath 1.11 +12 -6 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- EjbModule.java11 Mar 2002 01:24:56 - 1.10 +++ EjbModule.java11 Mar 2002 04:31:34 - 1.11 @@ -8,7 +8,6 @@ -//import org.jboss.management.j2ee.EjbModule; import java.lang.reflect.Constructor; import java.net.URL; import java.rmi.RemoteException; @@ -27,6 +26,7 @@ import org.jboss.ejb.plugins.StatefulSessionInstancePool; import org.jboss.logging.Logger; import org.jboss.management.j2ee.EJB; +import org.jboss.management.j2ee.EJBModule; import org.jboss.metadata.ApplicationMetaData; import org.jboss.metadata.BeanMetaData; import org.jboss.metadata.ConfigurationMetaData; @@ -73,7 +73,7 @@ * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a * @author a href=mailto:[EMAIL PROTECTED];Francisco Reverbel/a - * @version $Revision: 1.10 $ + * @version $Revision: 1.11 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -266,7 +266,7 @@ int sepPos = getName().lastIndexOf( / ); String lName = getName().substring(sepPos = 0 ? sepPos + 1 : 0); ObjectName lModule = - org.jboss.management.j2ee.EjbModule.create( + EJBModule.create( server, ( deploymentInfo.parent == null ? lName : deploymentInfo.parent.shortName ), lName, @@ -311,11 +311,17 @@ serviceController.create(jmxName); // Create JSR-77 EJB-Wrapper log.debug( Application.create(), create JSR-77 EJB-Component ); +BeanMetaData lMetaData = con.getBeanMetaData(); +int lType = + lMetaData.isSession() ? + ( ( (SessionMetaData) lMetaData ).isStateless() ? 2 : 1 ) : + ( lMetaData.isMessageDriven() ? 3 : 0 ); ObjectName lEJB = EJB.create( server, getModuleName().toString(), - con.getBeanMetaData() - ); + lType, + lMetaData.getJndiName() +); if (debug) { log.debug( Application.start(), EJB: + lEJB ); } @@ -403,7 +409,7 @@ log.info( Remove JSR-77 EJB Module: + getModuleName() ); if (getModuleName() != null) { - org.jboss.management.j2ee.EjbModule.destroy(server, getModuleName().toString() ); + EJBModule.destroy(server, getModuleName().toString() ); } } ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: schaefera Date: 02/03/03 22:01:14 Modified:src/main/org/jboss/ejb EjbModule.java Log: Added State Management to JDBC and JavaMail and some fixes. Revision ChangesPath 1.8 +3 -2 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- EjbModule.java3 Mar 2002 05:24:21 - 1.7 +++ EjbModule.java4 Mar 2002 06:01:14 - 1.8 @@ -67,7 +67,7 @@ * * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a - * @version $Revision: 1.7 $ + * @version $Revision: 1.8 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -265,7 +265,8 @@ server, ( deploymentInfo.parent == null ? lName : deploymentInfo.parent.shortName ), lName, -deploymentInfo.localUrl +deploymentInfo.localUrl, +getServiceName() ); if( lModule != null ) { ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: ejort Date: 02/03/02 07:59:25 Modified:src/main/org/jboss/ejb EjbModule.java Log: Load the deployment descriptor from the tmp copy to avoid locks on windows Revision ChangesPath 1.6 +2 -2 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- EjbModule.java27 Feb 2002 04:36:44 - 1.5 +++ EjbModule.java2 Mar 2002 15:59:25 - 1.6 @@ -67,7 +67,7 @@ * * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a - * @version $Revision: 1.5 $ + * @version $Revision: 1.6 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -288,7 +288,7 @@ server, ( deploymentInfo.parent == null ? lName : deploymentInfo.parent.shortName ), lName, -deploymentInfo.url +deploymentInfo.localUrl ); if( lModule != null ) { ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development
[JBoss-dev] CVS update: jboss/src/main/org/jboss/ejb EjbModule.java
User: schaefera Date: 02/02/26 20:36:44 Modified:src/main/org/jboss/ejb EjbModule.java Log: Fixed a problem with dropping a standalone EJB module. Applied patches from Scott McLaughlin: - Fixes for EjbModule, EJB, J2EEserver, JDBCDataSource - Adding JavaMail Resource and its MBean Revision ChangesPath 1.5 +7 -1 jboss/src/main/org/jboss/ejb/EjbModule.java Index: EjbModule.java === RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/ejb/EjbModule.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- EjbModule.java26 Feb 2002 06:14:46 - 1.4 +++ EjbModule.java27 Feb 2002 04:36:44 - 1.5 @@ -67,7 +67,7 @@ * * @author a href=mailto:[EMAIL PROTECTED];Rickard Öberg/a * @author a href=mailto:[EMAIL PROTECTED];David Jencks/a - * @version $Revision: 1.4 $ + * @version $Revision: 1.5 $ * * @jmx:mbean extends=org.jboss.system.ServiceMBean */ @@ -395,9 +395,15 @@ //log.error(unexpected exception destroying Container: + con.getJmxName(), e); } // end of try-catch } + log.info( Remove EJB Module: + getModuleName() ); if (getModuleName() != null) { org.jboss.management.j2ee.EjbModule.destroy(server, getModuleName() ); + } + log.info( Remove Application: + getApplicationName() ); + if( getApplicationName() != null ) + { + org.jboss.management.j2ee.J2EEApplication.destroy( server, getApplicationName() ); } } ___ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development