[jboss-cvs] JBossAS SVN: r57481 - in trunk/ejb3: . docs/tutorial/entity docs/tutorial/stateless docs/tutorial/stateless/src/org/jboss/tutorial/stateless/bean src/main/org/jboss/ejb3 src/main/org/jboss/ejb3/deployers src/main/org/jboss/ejb3/embedded src/main/org/jboss/ejb3/enc src/main/org/jboss/ejb3/security src/resources src/resources/META-INF

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Oct 6 17:24:40 EDT 2006


Author: bill.burke at jboss.com
Date: 2006-10-06 17:24:32 -0400 (Fri, 06 Oct 2006)
New Revision: 57481

Added:
   trunk/ejb3/src/main/org/jboss/ejb3/ClassFileFilter.java
   trunk/ejb3/src/main/org/jboss/ejb3/DefaultPersistenceProperties.java
   trunk/ejb3/src/main/org/jboss/ejb3/DeploymentScope.java
   trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentScopeImpl.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBStage2Deployer.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/Ejb3JBoss5Deployment.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DependencyPolicy.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentScope.java
   trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentUnit.java
   trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml
   trunk/ejb3/src/resources/ejb3-connectors-service.xml
Removed:
   trunk/ejb3/src/main/org/jboss/ejb3/EAR.java
   trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java
Modified:
   trunk/ejb3/build.xml
   trunk/ejb3/docs/tutorial/entity/build.xml
   trunk/ejb3/docs/tutorial/stateless/build.xml
   trunk/ejb3/docs/tutorial/stateless/src/org/jboss/tutorial/stateless/bean/CalculatorBean.java
   trunk/ejb3/src/main/org/jboss/ejb3/DeploymentUnit.java
   trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java
   trunk/ejb3/src/main/org/jboss/ejb3/Ejb3JmxDeployment.java
   trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Module.java
   trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentUnit.java
   trunk/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java
   trunk/ejb3/src/main/org/jboss/ejb3/embedded/EJB3StandaloneDeployer.java
   trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentEjbResolver.java
   trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentPersistenceUnitResolver.java
   trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModuleEjbResolver.java
   trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModulePersistenceUnitResolver.java
   trunk/ejb3/src/main/org/jboss/ejb3/security/JaccHelper.java
Log:
jboss 5 ejb3 deployer

Modified: trunk/ejb3/build.xml
===================================================================
--- trunk/ejb3/build.xml	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/build.xml	2006-10-06 21:24:32 UTC (rev 57481)
@@ -427,14 +427,15 @@
             <include name="jboss-ejb3x.jar"/>
          </fileset>
          <fileset dir="${resources}">
-            <include name="META-INF/jboss-service.xml"/>
+            <include name="META-INF/ejb3-deployers-beans.xml"/>
             <include name="META-INF/persistence.properties"/>
          </fileset>
       </copy>
       <copy todir="${build.lib}" file="${resources}/ejb3-interceptors-aop.xml"/>
       <copy todir="${build.lib}" file="${resources}/ejb3-clustered-sfsbcache-service.xml"/>
       <copy todir="${build.lib}" file="${resources}/ejb3-entity-cache-service.xml"/>
-	  <copy todir="${build.lib}" file="${resources}/ejb3-timer-service.xml"/>
+      <copy todir="${build.lib}" file="${resources}/ejb3-timer-service.xml"/>
+      <copy todir="${build.lib}" file="${resources}/ejb3-connectors-service.xml"/>
       <mkdir dir="${build.lib}/embeddable"/>
       <mkdir dir="${build.lib}/embeddable/conf"/>
       <mkdir dir="${build.lib}/embeddable/lib"/>

Modified: trunk/ejb3/docs/tutorial/entity/build.xml
===================================================================
--- trunk/ejb3/docs/tutorial/entity/build.xml	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/docs/tutorial/entity/build.xml	2006-10-06 21:24:32 UTC (rev 57481)
@@ -8,7 +8,8 @@
 
    <property environment="env"/>
    <property name="src.dir" value="${basedir}/src"/>
-   <property name="jboss.home" value="${env.JBOSS_HOME}"/>   <property name="jboss.server.config" value="all"/>
+   <property name="jboss.home" value="${env.JBOSS_HOME}"/>
+   <property name="jboss.server.config" value="default"/>
    <property name="build.dir" value="${basedir}/build"/>
    <property name="build.classes.dir" value="${build.dir}/classes"/>
 
@@ -22,10 +23,10 @@
       <fileset dir="${jboss.home}/server/${jboss.server.config}/lib">
          <include name="**/*.jar"/>
       </fileset>
-      <fileset dir="${jboss.home}/server/${jboss.server.config}/deploy/ejb3.deployer">
+      <fileset dir="${jboss.home}/server/${jboss.server.config}/deployers/ejb3.deployer">
          <include name="*.jar"/>
       </fileset>
-      <fileset dir="${jboss.home}/server/${jboss.server.config}/deploy/jboss-aop-jdk50.deployer">
+      <fileset dir="${jboss.home}/server/${jboss.server.config}/deployers/jboss-aop-jdk50.deployer">
          <include name="*.jar"/>
       </fileset>
       <pathelement location="${build.classes.dir}"/>

Modified: trunk/ejb3/docs/tutorial/stateless/build.xml
===================================================================
--- trunk/ejb3/docs/tutorial/stateless/build.xml	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/docs/tutorial/stateless/build.xml	2006-10-06 21:24:32 UTC (rev 57481)
@@ -8,7 +8,7 @@
 
    <property environment="env"/>
    <property name="src.dir" value="${basedir}/src"/>
-   <property name="jboss.home" value="${env.JBOSS_HOME}"/>   <property name="jboss.server.config" value="all"/>
+   <property name="jboss.home" value="${env.JBOSS_HOME}"/>   <property name="jboss.server.config" value="default"/>
    <property name="build.dir" value="${basedir}/build"/>
    <property name="build.classes.dir" value="${build.dir}/classes"/>
 
@@ -22,10 +22,10 @@
       <fileset dir="${jboss.home}/server/${jboss.server.config}/lib">
          <include name="**/*.jar"/>
       </fileset>
-      <fileset dir="${jboss.home}/server/${jboss.server.config}/deploy/ejb3.deployer">
+      <fileset dir="${jboss.home}/server/${jboss.server.config}/deployers/ejb3.deployer">
          <include name="*.jar"/>
       </fileset>
-      <fileset dir="${jboss.home}/server/${jboss.server.config}/deploy/jboss-aop-jdk50.deployer">
+      <fileset dir="${jboss.home}/server/${jboss.server.config}/deployers/jboss-aop-jdk50.deployer">
          <include name="*.jar"/>
       </fileset>
       <pathelement location="${build.classes.dir}"/>

Modified: trunk/ejb3/docs/tutorial/stateless/src/org/jboss/tutorial/stateless/bean/CalculatorBean.java
===================================================================
--- trunk/ejb3/docs/tutorial/stateless/src/org/jboss/tutorial/stateless/bean/CalculatorBean.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/docs/tutorial/stateless/src/org/jboss/tutorial/stateless/bean/CalculatorBean.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -22,12 +22,23 @@
 package org.jboss.tutorial.stateless.bean;
 
 import javax.ejb.Stateless;
+import javax.sql.DataSource;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
 
 @Stateless
 public class CalculatorBean implements CalculatorRemote, CalculatorLocal
 {
    public int add(int x, int y)
    {
+      try
+      {
+         DataSource ds = (DataSource)new InitialContext().lookup("java:/DefaultDS");
+      }
+      catch (NamingException e)
+      {
+         throw new RuntimeException(e);
+      }
       return x + y;
    }
 

Added: trunk/ejb3/src/main/org/jboss/ejb3/ClassFileFilter.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/ClassFileFilter.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/ClassFileFilter.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,48 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3;
+
+import org.jboss.virtual.VirtualFileFilter;
+import org.jboss.virtual.VirtualFile;
+
+import java.io.IOException;
+
+/**
+ * Comment
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 44334 $
+ */
+public class ClassFileFilter implements VirtualFileFilter
+{
+   public boolean accepts(VirtualFile file)
+   {
+      try
+      {
+         return !file.isArchive() && file.isLeaf() && file.getName().endsWith(".class");
+      }
+      catch (IOException e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/DefaultPersistenceProperties.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/DefaultPersistenceProperties.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/DefaultPersistenceProperties.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,55 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3;
+
+import java.util.Properties;
+import java.net.URL;
+
+/**
+ * Comment
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 55144 $
+ */
+public class DefaultPersistenceProperties
+{
+   private Properties properties;
+
+   public DefaultPersistenceProperties() throws Exception
+   {
+      URL propsUrl = this.getClass().getClassLoader().getResource("META-INF/persistence.properties");
+      properties = new Properties();
+      properties.load(propsUrl.openStream());
+      /* Current hack to establish the hibernate bytecode provider from the
+      externalized persistence.properties
+      */
+      String bcprovider = properties.getProperty("hibernate.bytecode.provider", "javassist");
+      System.setProperty("hibernate.bytecode.provider", bcprovider);
+
+   }
+
+   public Properties getProperties()
+   {
+      return properties;
+   }
+
+}

Copied: trunk/ejb3/src/main/org/jboss/ejb3/DeploymentScope.java (from rev 57146, trunk/ejb3/src/main/org/jboss/ejb3/EAR.java)
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/EAR.java	2006-09-25 17:23:03 UTC (rev 57146)
+++ trunk/ejb3/src/main/org/jboss/ejb3/DeploymentScope.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3;
+
+import java.util.Collection;
+
+/**
+ * Abstraction for accessing contents of an EAR
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision$
+ */
+public interface DeploymentScope
+{
+   public Collection<Ejb3Deployment> getEjbDeployments();
+   void register(Ejb3Deployment deployment);
+   void unregister(Ejb3Deployment deployment);
+
+   /**
+    *  Find a deployment based on its relative deployment name
+    *
+    * @param relativeName expects "../foo.jar"  so expects the .. in front
+    * @return
+    */
+   Ejb3Deployment findRelativeDeployment(String relativeName);
+   String getShortName();
+   String getBaseName();
+}


Property changes on: trunk/ejb3/src/main/org/jboss/ejb3/DeploymentScope.java
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: trunk/ejb3/src/main/org/jboss/ejb3/DeploymentUnit.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/DeploymentUnit.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/DeploymentUnit.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -26,6 +26,8 @@
 import java.util.Map;
 import java.util.Hashtable;
 import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileFilter;
 
 /**
  * Comment
@@ -41,6 +43,8 @@
 
    String getShortName();
 
+   List<VirtualFile> getResources(VirtualFileFilter filter);
+
    URL getUrl();
 
    URL getPersistenceXml();

Deleted: trunk/ejb3/src/main/org/jboss/ejb3/EAR.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/EAR.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/EAR.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -1,47 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2005, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.ejb3;
-
-import java.util.Collection;
-
-/**
- * Abstraction for accessing contents of an EAR
- *
- * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
- * @version $Revision$
- */
-public interface EAR
-{
-   public Collection<Ejb3Deployment> getEjbDeployments();
-   void register(Ejb3Deployment deployment);
-   void unregister(Ejb3Deployment deployment);
-
-   /**
-    *  Find a deployment based on its relative deployment name
-    *
-    * @param relativeName expects "../foo.jar"  so expects the .. in front
-    * @return
-    */
-   Ejb3Deployment findRelativeDeployment(String relativeName);
-   String getShortName();
-   String getBaseName();
-}

Modified: trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -31,6 +31,8 @@
 import org.jboss.logging.Logger;
 import org.jboss.util.file.ArchiveBrowser;
 import org.jboss.util.file.ClassFileFilter;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VFS;
 
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
@@ -84,17 +86,17 @@
    // used for @Management interfaces
    protected MBeanServer mbeanServer;
 
-   protected EAR ear;
+   protected DeploymentScope deploymentScope;
    protected EjbModuleEjbResolver ejbRefResolver;
    protected EjbModulePersistenceUnitResolver persistenceUnitResolver;
 
    //The JACC PolicyConfiguration
    PolicyConfiguration pc;
 
-   public Ejb3Deployment(DeploymentUnit di, EAR ear)
+   public Ejb3Deployment(DeploymentUnit di, DeploymentScope deploymentScope)
    {
       this.di = di;
-      this.ear = ear;
+      this.deploymentScope = deploymentScope;
       try
       {
          initialContext = EJB3Util.getInitialContext(di.getJndiProperties());
@@ -103,13 +105,13 @@
       {
          throw new RuntimeException(e);
       }
-      ejbRefResolver = new EjbModuleEjbResolver(ear, di.getShortName(), ejbContainers, this);
-      persistenceUnitResolver = new EjbModulePersistenceUnitResolver(persistenceUnitDeployments, ear, ejbContainers);
+      ejbRefResolver = new EjbModuleEjbResolver(deploymentScope, di.getShortName(), ejbContainers, this);
+      persistenceUnitResolver = new EjbModulePersistenceUnitResolver(persistenceUnitDeployments, deploymentScope, ejbContainers);
    }
 
-   public EAR getEar()
+   public DeploymentScope getEar()
    {
-      return ear;
+      return deploymentScope;
    }
 
    public KernelAbstraction getKernelAbstraction()
@@ -147,7 +149,7 @@
    public String getScopeKernelName()
    {
       String scopedKernelName = "";
-      if (ear != null) scopedKernelName += ",ear=" + ear.getShortName();
+      if (deploymentScope != null) scopedKernelName += ",ear=" + deploymentScope.getShortName();
       scopedKernelName += ",jar=" + di.getShortName();
       return scopedKernelName;
    }
@@ -238,7 +240,12 @@
       return persistenceUnitResolver.getPersistenceUnitDeploymentInternal(unitName);
    }
 
+   public List<PersistenceUnitDeployment> getPersistenceUnitDeployments()
+   {
+      return persistenceUnitDeployments;
+   }
 
+
    public EJBContainer getEjbContainer(String ejbLink, Class businessIntf)
    {
       return ejbRefResolver.getEjbContainer(ejbLink, businessIntf);
@@ -367,14 +374,13 @@
    protected void deployUrl(Ejb3HandlerFactory factory)
            throws Exception
    {
-      Iterator it = ArchiveBrowser.getBrowser(di.getUrl(), new ClassFileFilter());
-
       InitialContext ctx = initialContext;
       // need to look into every entry in the archive to see if anybody has tags
       // defined.
-      while (it.hasNext())
+      List<VirtualFile> classes = di.getResources(new org.jboss.ejb3.ClassFileFilter());
+      for (VirtualFile classFile : classes)
       {
-         InputStream stream = (InputStream) it.next();
+         InputStream stream = classFile.openStream();
          deployElement(stream, factory, ctx);
       }
    }
@@ -444,7 +450,7 @@
       List<PersistenceMetadata> persistenceMetadata = PersistenceXmlLoader.deploy(persistenceXmlUrl, new HashMap(), new EJB3DTDEntityResolver());
       for (PersistenceMetadata metadata : persistenceMetadata)
       {
-         String earShortName = ear == null ? null : ear.getShortName();
+         String earShortName = deploymentScope == null ? null : deploymentScope.getShortName();
          boolean isScoped = ejbContainers.size() > 0;
          PersistenceUnitDeployment deployment = new PersistenceUnitDeployment(initialContext, this, explicitEntityClasses, persistenceXmlUrl, metadata, earShortName, di.getShortName(), isScoped);
          PersistenceUnitRegistry.register(deployment);

Modified: trunk/ejb3/src/main/org/jboss/ejb3/Ejb3JmxDeployment.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/Ejb3JmxDeployment.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/Ejb3JmxDeployment.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -38,9 +38,9 @@
 
    private static final Logger log = Logger.getLogger(Ejb3JmxDeployment.class);
 
-   public Ejb3JmxDeployment(DeploymentInfo di, EAR ear)
+   public Ejb3JmxDeployment(DeploymentInfo di, DeploymentScope deploymentScope)
    {
-      super(new JmxDeploymentUnit(di), ear);
+      super(new JmxDeploymentUnit(di), deploymentScope);
       this.deploymentInfo = di;
       kernelAbstraction = new JmxKernelAbstraction(di);
 

Modified: trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Module.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Module.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/Ejb3Module.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -43,26 +43,26 @@
 
     public Ejb3Module(DeploymentInfo di)
     {
-       EAR ear = null;
+       DeploymentScope deploymentScope = null;
        if (di.parent != null)
        {
           if (di.parent.shortName.endsWith(".ear") || di.parent.shortName.endsWith(".ear/"))
           {
              synchronized(di.parent.context)
              {
-                ear = (EAR)di.parent.context.get("EJB3_EAR_METADATA");
-                if (ear == null)
+                deploymentScope = (DeploymentScope)di.parent.context.get("EJB3_EAR_METADATA");
+                if (deploymentScope == null)
                 {
-                   ear = new JmxEARImpl(di.parent.shortName);
-                   di.parent.context.put("EJB3_EAR_METADATA", ear);
+                   deploymentScope = new JmxDeploymentScopeImpl(di.parent.shortName);
+                   di.parent.context.put("EJB3_EAR_METADATA", deploymentScope);
                 }
              }
           }
        }
-       deployment = new Ejb3JmxDeployment(di, ear);
-       if (ear != null)
+       deployment = new Ejb3JmxDeployment(di, deploymentScope);
+       if (deploymentScope != null)
        {
-          ear.register(deployment);
+          deploymentScope.register(deployment);
        }
        this.di = di;
     }

Copied: trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentScopeImpl.java (from rev 57146, trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java)
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java	2006-09-25 17:23:03 UTC (rev 57146)
+++ trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentScopeImpl.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,77 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3;
+
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.Collection;
+
+/**
+ * JMX JBoss 4.x Kernel abstraction for an ear.
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 1.17 $
+ */
+public class JmxDeploymentScopeImpl implements DeploymentScope
+{
+   private ConcurrentHashMap<String, Ejb3Deployment> deployments = new ConcurrentHashMap<String, Ejb3Deployment>();
+   private String shortName;
+   private String baseName;
+
+   public JmxDeploymentScopeImpl(String shortName)
+   {
+      this.shortName = shortName;
+      int idx = shortName.lastIndexOf('.');
+      baseName = shortName.substring(0, idx);
+   }
+
+   public Collection<Ejb3Deployment> getEjbDeployments()
+   {
+      return deployments.values();
+   }
+
+   public void register(Ejb3Deployment deployment)
+   {
+      deployments.put(deployment.getDeploymentUnit().getShortName(), deployment);
+   }
+
+   public void unregister(Ejb3Deployment deployment)
+   {
+      deployments.remove(deployment.getDeploymentUnit().getShortName());
+   }
+
+   public Ejb3Deployment findRelativeDeployment(String relativeName)
+   {
+      String relativeShortName = relativeName.substring(3);
+      return deployments.get(relativeShortName);
+   }
+
+   public String getShortName()
+   {
+      return shortName;
+   }
+
+   public String getBaseName()
+   {
+      return baseName;
+   }
+
+}

Modified: trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentUnit.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentUnit.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/JmxDeploymentUnit.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -25,10 +25,16 @@
 import java.util.Hashtable;
 import java.util.List;
 import java.util.Map;
+import java.io.IOException;
 
 import org.jboss.deployment.DeploymentInfo;
 import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
 import org.jboss.mx.util.MBeanProxyExt;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VFS;
+import org.jboss.virtual.VirtualFileFilter;
+import org.jboss.virtual.VisitorAttributes;
+import org.jboss.virtual.plugins.vfs.helpers.FilterVirtualFileVisitor;
 
 /**
  * Comment
@@ -40,7 +46,22 @@
 {
    private DeploymentInfo deploymentInfo;
    InterceptorInfoRepository interceptorInfoRepository = new InterceptorInfoRepository();
+   private VirtualFile virtualFile;
 
+   public JmxDeploymentUnit(DeploymentInfo deploymentInfo)
+   {
+      this.deploymentInfo = deploymentInfo;
+      try
+      {
+         VFS vfs = VFS.getVFS(deploymentInfo.url);
+         virtualFile = vfs.getRoot();
+      }
+      catch (IOException e)
+      {
+         throw new RuntimeException();
+      }
+   }
+
    URL extractDescriptorUrl(String resource)
    {
       String urlStr = deploymentInfo.url.getFile();
@@ -88,33 +109,11 @@
       return extractDescriptorUrl("META-INF/jboss.xml");
    }
 
-/*
-      public URL getPersistenceXml()
-      {
-         return getResourceLoader().getResource("META-INF/persistence.xml");
-      }
-
-      public URL getEjbJarXml()
-      {
-         return getResourceLoader().getResource("META-INF/ejb-jar.xml");
-      }
-
-      public URL getJbossXml()
-      {
-         return getResourceLoader().getResource("META-INF/jboss.xml");
-      }
-*/
-
    public List<Class> getClasses()
    {
       return null;
    }
 
-   public JmxDeploymentUnit(DeploymentInfo deploymentInfo)
-   {
-      this.deploymentInfo = deploymentInfo;
-   }
-
    public ClassLoader getClassLoader()
    {
       return deploymentInfo.ucl;
@@ -167,4 +166,24 @@
    {
       return interceptorInfoRepository;
    }
+
+
+   public List<VirtualFile> getResources(VirtualFileFilter filter)
+   {
+      VisitorAttributes va = new VisitorAttributes();
+      va.setRecurse(true);
+      va.setLeavesOnly(true);
+      va.setRecurseArchives(false);
+      FilterVirtualFileVisitor visitor = new FilterVirtualFileVisitor(filter, va);
+      try
+      {
+         virtualFile.visit(visitor);
+      }
+      catch (IOException e)
+      {
+         throw new RuntimeException(e);
+      }
+      return visitor.getMatched();
+
+   }
 }

Deleted: trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/JmxEARImpl.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -1,77 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2005, JBoss Inc., and individual contributors as indicated
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.ejb3;
-
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.Collection;
-
-/**
- * JMX JBoss 4.x Kernel abstraction for an ear.
- *
- * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
- * @version $Revision: 1.17 $
- */
-public class JmxEARImpl implements EAR
-{
-   private ConcurrentHashMap<String, Ejb3Deployment> deployments = new ConcurrentHashMap<String, Ejb3Deployment>();
-   private String shortName;
-   private String baseName;
-
-   public JmxEARImpl(String shortName)
-   {
-      this.shortName = shortName;
-      int idx = shortName.lastIndexOf('.');
-      baseName = shortName.substring(0, idx);
-   }
-
-   public Collection<Ejb3Deployment> getEjbDeployments()
-   {
-      return deployments.values();
-   }
-
-   public void register(Ejb3Deployment deployment)
-   {
-      deployments.put(deployment.getDeploymentUnit().getShortName(), deployment);
-   }
-
-   public void unregister(Ejb3Deployment deployment)
-   {
-      deployments.remove(deployment.getDeploymentUnit().getShortName());
-   }
-
-   public Ejb3Deployment findRelativeDeployment(String relativeName)
-   {
-      String relativeShortName = relativeName.substring(3);
-      return deployments.get(relativeShortName);
-   }
-
-   public String getShortName()
-   {
-      return shortName;
-   }
-
-   public String getBaseName()
-   {
-      return baseName;
-   }
-
-}

Modified: trunk/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -296,8 +296,8 @@
       if (localBinding == null)
       {
          String name = container.getEjbName() + "/local";
-         EAR ear = ((EJBContainer) container).getDeployment().getEar();
-         if (ear != null) return ear.getBaseName() + "/" + name;
+         DeploymentScope deploymentScope = ((EJBContainer) container).getDeployment().getEar();
+         if (deploymentScope != null) return deploymentScope.getBaseName() + "/" + name;
 
          if (conflictCheck)
             checkForRemoteJndiConflict(container);
@@ -414,8 +414,8 @@
    public static String getDefaultRemoteJndiName(Container container)
    {
       String name = container.getEjbName() + "/remote";
-      EAR ear = ((EJBContainer) container).getDeployment().getEar();
-      if (ear != null) return ear.getBaseName() + "/" + name;
+      DeploymentScope deploymentScope = ((EJBContainer) container).getDeployment().getEar();
+      if (deploymentScope != null) return deploymentScope.getBaseName() + "/" + name;
       return name;
    }
    

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,173 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer;
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.ejb3.DeploymentScope;
+import org.jboss.ejb3.Ejb3Deployment;
+import org.jboss.kernel.Kernel;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.logging.Logger;
+
+import javax.management.MBeanServer;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.List;
+
+/**
+ * Creates initial EJB deployments and initializes only basic metadata.
+ * A registration process is required so that
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57082 $
+ */
+public class EJBRegistrationDeployer extends AbstractSimpleDeployer
+{
+   private static final Logger log = Logger.getLogger(EJBRegistrationDeployer.class);
+
+   private HashSet ignoredJarsSet;
+   private MBeanServer mbeanServer;
+   private Kernel kernel;
+   private Properties defaultPersistenceProperties;
+   private List<String> allowedSuffixes;
+
+   public List<String> getAllowedSuffixes()
+   {
+      return allowedSuffixes;
+   }
+
+   public void setAllowedSuffixes(List<String> allowedSuffixes)
+   {
+      this.allowedSuffixes = allowedSuffixes;
+   }
+
+   public HashSet getIgnoredJarsSet()
+   {
+      return ignoredJarsSet;
+   }
+
+   public void setIgnoredJarsSet(HashSet ignoredJarsSet)
+   {
+      this.ignoredJarsSet = ignoredJarsSet;
+   }
+
+   public MBeanServer getMbeanServer()
+   {
+      return mbeanServer;
+   }
+
+   public void setMbeanServer(MBeanServer mbeanServer)
+   {
+      this.mbeanServer = mbeanServer;
+   }
+
+   public Kernel getKernel()
+   {
+      return kernel;
+   }
+
+   public void setKernel(Kernel kernel)
+   {
+      this.kernel = kernel;
+   }
+
+   public Properties getDefaultPersistenceProperties()
+   {
+      return defaultPersistenceProperties;
+   }
+
+   public void setDefaultPersistenceProperties(Properties defaultPersistenceProperties)
+   {
+      this.defaultPersistenceProperties = defaultPersistenceProperties;
+   }
+
+   public void deploy(DeploymentUnit unit) throws DeploymentException
+   {
+      try
+      {
+         if (unit.getDeploymentContext().isComponent()) return;
+         VirtualFile jar = unit.getDeploymentContext().getRoot();
+         if (!jar.isArchive() || ignoredJarsSet.contains(jar.getName())                 )
+         {
+            log.trace("EJBRegistrationDeployer ignoring: " + jar.getName());
+            return;
+         }
+         if (allowedSuffixes != null)
+         {
+            for (String suffix : allowedSuffixes)
+            {
+               if (jar.getName().endsWith(suffix))
+               {
+                  log.trace("EJBRegistrationDeployer ignoring: " + jar.getName());
+                  return;
+               }
+            }
+         }
+         log.trace("********* Begin Unit: " + unit.getName() + " jar: " + jar.getName());
+         DeploymentScope scope = null;
+         if (unit.getDeploymentContext().getParent() != null)
+         {
+            scope = new JBoss5DeploymentScope(unit.getDeploymentContext().getParent());
+         }
+         JBoss5DeploymentUnit du = new JBoss5DeploymentUnit(unit);
+         du.setDefaultPersistenceProperties(defaultPersistenceProperties);
+         Ejb3JBoss5Deployment deployment = new Ejb3JBoss5Deployment(du, kernel, mbeanServer, unit, scope);
+         // create() creates initial EJB containers and initializes metadata.
+         deployment.create();
+         if (deployment.getEjbContainers().size() == 0 && deployment.getPersistenceUnitDeployments().size() == 0)
+         {
+            log.trace("EJBRegistrationDeployer no containers in scanned jar, consider adding it to the ignore list: " + jar.getName() + " url: " + jar.toURL() + " unit: " + unit.getName());
+            return;
+         }
+         unit.addAttachment(Ejb3Deployment.class, deployment);
+      }
+      catch (Exception e)
+      {
+         throw new DeploymentException(e);
+      }
+   }
+
+   public void undeploy(DeploymentUnit unit)
+   {
+      Ejb3Deployment deployment = unit.getAttachment(Ejb3Deployment.class);
+      if (deployment == null) return;
+      try
+      {
+         deployment.stop();
+      }
+      catch (Exception e)
+      {
+         log.error("failed to stop deployment", e);
+      }
+      try
+      {
+         deployment.destroy();
+      }
+      catch (Exception e)
+      {
+         log.error("failed to destroy deployment", e);
+      }
+   }
+
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBStage2Deployer.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBStage2Deployer.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBStage2Deployer.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,55 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.ejb3.Ejb3Deployment;
+import org.jboss.logging.Logger;
+
+/**
+ * Starts any initial EJB deployment created and initialized
+ * by the EJBRegistrationDeployer
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 57082 $
+ */
+public class EJBStage2Deployer extends AbstractSimpleDeployer
+{
+   private static final Logger log = Logger.getLogger(EJBStage2Deployer.class);
+
+   public void deploy(DeploymentUnit unit) throws DeploymentException
+   {
+      Ejb3Deployment deployment = unit.getAttachment(Ejb3Deployment.class);
+      if (deployment == null) return;
+      try
+      {
+         deployment.start();
+      }
+      catch (Exception e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/Ejb3JBoss5Deployment.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/Ejb3JBoss5Deployment.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/Ejb3JBoss5Deployment.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,85 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.ejb3.DependencyPolicy;
+import org.jboss.ejb3.DeploymentUnit;
+import org.jboss.ejb3.DeploymentScope;
+import org.jboss.ejb3.Ejb3Deployment;
+import org.jboss.ejb3.JmxDependencyPolicy;
+import org.jboss.ejb3.MCKernelAbstraction;
+import org.jboss.ejb3.MCDependencyPolicy;
+import org.jboss.ejb3.security.JaccHelper;
+import org.jboss.kernel.Kernel;
+import org.jboss.logging.Logger;
+
+import javax.management.MBeanServer;
+import javax.security.jacc.PolicyConfiguration;
+
+/**
+ * JBoss 4.0 Microkernel specific implementation
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 56592 $
+ */
+public class Ejb3JBoss5Deployment extends Ejb3Deployment
+{
+   private org.jboss.deployers.spi.deployer.DeploymentUnit deploymentInfo;
+
+   private static final Logger log = Logger.getLogger(Ejb3JBoss5Deployment.class);
+
+   public Ejb3JBoss5Deployment(DeploymentUnit du, Kernel kernel, MBeanServer mbeanServer, org.jboss.deployers.spi.deployer.DeploymentUnit di, DeploymentScope deploymentScope)
+   {
+      super(du, deploymentScope);
+      this.deploymentInfo = di;
+      kernelAbstraction = new MCKernelAbstraction(kernel, mbeanServer);
+
+      // todo maybe mbeanServer should be injected?
+      this.mbeanServer = mbeanServer;
+   }
+
+   protected PolicyConfiguration createPolicyConfiguration() throws Exception
+   {
+      return JaccHelper.initialiseJacc(getJaccContextId());
+
+   }
+
+   protected void putJaccInService(PolicyConfiguration pc, DeploymentUnit unit)
+   {
+      try
+      {
+         JaccHelper.putJaccInService(pc, deploymentInfo);
+      }
+      catch (Exception e)
+      {
+         throw new RuntimeException(e);
+      }
+
+   }
+
+   public DependencyPolicy createDependencyPolicy()
+   {
+      return new JBoss5DependencyPolicy();
+   }
+
+
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DependencyPolicy.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DependencyPolicy.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DependencyPolicy.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.ejb3.MCDependencyPolicy;
+
+/**
+ * Comment
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 44334 $
+ */
+public class JBoss5DependencyPolicy extends MCDependencyPolicy
+{
+   public void addDatasource(String jndiName)
+   {
+      // todo can't implement this until I know how to create the dependency
+   }
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentScope.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentScope.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentScope.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,88 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.ejb3.DeploymentScope;
+import org.jboss.ejb3.Ejb3Deployment;
+import org.jboss.deployers.spi.structure.DeploymentContext;
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Abstraction for an EAR/WAR or anything that scopes EJB deployments
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 55144 $
+ */
+public class JBoss5DeploymentScope implements DeploymentScope
+{
+   private ConcurrentHashMap<String, Ejb3Deployment> deployments;
+   private String shortName;
+   private String baseName;
+
+   public JBoss5DeploymentScope(DeploymentContext parent)
+   {
+      this.shortName = parent.getName();
+      int idx = shortName.lastIndexOf('.');
+      baseName = shortName.substring(0, idx);
+      deployments = (ConcurrentHashMap<String, Ejb3Deployment>)parent.getDeploymentUnit().getAttachment("EJB_DEPLOYMENTS");
+      if (deployments == null)
+      {
+         deployments = new ConcurrentHashMap<String, Ejb3Deployment>();
+         parent.getDeploymentUnit().addAttachment("EJB_DEPLOYMENTS", deployments);
+      }
+   }
+
+   public Collection<Ejb3Deployment> getEjbDeployments()
+   {
+      return deployments.values();
+   }
+
+   public void register(Ejb3Deployment deployment)
+   {
+      deployments.put(deployment.getDeploymentUnit().getShortName(), deployment);
+   }
+
+   public void unregister(Ejb3Deployment deployment)
+   {
+      deployments.remove(deployment.getDeploymentUnit().getShortName());
+   }
+
+   public Ejb3Deployment findRelativeDeployment(String relativeName)
+   {
+      return deployments.get(relativeName);
+   }
+
+   public String getShortName()
+   {
+      return shortName;
+   }
+
+   public String getBaseName()
+   {
+      return baseName;
+   }
+
+}

Added: trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentUnit.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentUnit.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/JBoss5DeploymentUnit.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,164 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.deployers;
+
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileFilter;
+import org.jboss.virtual.VisitorAttributes;
+import org.jboss.virtual.plugins.vfs.helpers.FilterVirtualFileVisitor;
+
+import java.net.URL;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Map;
+import java.io.IOException;
+
+/**
+ * Comment
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @version $Revision: 43304 $
+ */
+public class JBoss5DeploymentUnit implements org.jboss.ejb3.DeploymentUnit
+{
+   private DeploymentUnit deploymentInfo;
+   private InterceptorInfoRepository interceptorInfoRepository = new InterceptorInfoRepository();
+   private Map defaultPersistenceProperties;
+
+   public JBoss5DeploymentUnit(DeploymentUnit deploymentInfo)
+   {
+      this.deploymentInfo = deploymentInfo;
+   }
+
+   URL extractDescriptorUrl(String resource)
+   {
+      try
+      {
+         VirtualFile vf = deploymentInfo.getMetaDataFile(resource);
+         if (vf == null) return null;
+         return vf.toURL();
+      }
+      catch (Exception e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+
+   public URL getPersistenceXml()
+   {
+      return extractDescriptorUrl("persistence.xml");
+   }
+
+   public URL getEjbJarXml()
+   {
+      return extractDescriptorUrl("ejb-jar.xml");
+   }
+
+   public URL getJbossXml()
+   {
+      return extractDescriptorUrl("jboss.xml");
+   }
+
+   public List<Class> getClasses()
+   {
+      return null;
+   }
+
+   public ClassLoader getClassLoader()
+   {
+      return deploymentInfo.getClassLoader();
+   }
+
+   public ClassLoader getResourceLoader()
+   {
+      return deploymentInfo.getClassLoader();
+   }
+
+   public String getShortName()
+   {
+      return deploymentInfo.getDeploymentContext().getRoot().getName();
+   }
+
+   public URL getUrl()
+   {
+      try
+      {
+         return deploymentInfo.getDeploymentContext().getRoot().toURL();
+      }
+      catch (Exception e)
+      {
+         throw new RuntimeException(e);
+      }
+   }
+
+   public String getDefaultEntityManagerName()
+   {
+      String url = getUrl().toString();
+      String name = url.substring(url.lastIndexOf('/') + 1, url.lastIndexOf('.'));
+      return name;
+   }
+
+   public Map getDefaultPersistenceProperties()
+   {
+      return defaultPersistenceProperties;
+   }
+
+   public void setDefaultPersistenceProperties(Map defaultPersistenceProperties)
+   {
+      this.defaultPersistenceProperties = defaultPersistenceProperties;
+   }
+
+   public Hashtable getJndiProperties()
+   {
+      return null;
+   }
+
+   public InterceptorInfoRepository getInterceptorInfoRepository()
+   {
+      return interceptorInfoRepository;
+   }
+
+   public List<VirtualFile> getResources(VirtualFileFilter filter)
+   {
+      VisitorAttributes va = new VisitorAttributes();
+      va.setRecurse(true);
+      va.setLeavesOnly(true);
+      va.setRecurseArchives(false);
+      FilterVirtualFileVisitor visitor = new FilterVirtualFileVisitor(filter, va);
+
+      for (VirtualFile vf : deploymentInfo.getDeploymentContext().getClassPath())
+      {
+         try
+         {
+            vf.visit(visitor);
+         }
+         catch (IOException e)
+         {
+            throw new RuntimeException(e);
+         }
+      }
+      return visitor.getMatched();
+   }
+
+}

Modified: trunk/ejb3/src/main/org/jboss/ejb3/embedded/EJB3StandaloneDeployer.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/embedded/EJB3StandaloneDeployer.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/embedded/EJB3StandaloneDeployer.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -47,6 +47,11 @@
 import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
 import org.jboss.kernel.Kernel;
 import org.jboss.logging.Logger;
+import org.jboss.virtual.VFS;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileFilter;
+import org.jboss.virtual.VisitorAttributes;
+import org.jboss.virtual.plugins.vfs.helpers.FilterVirtualFileVisitor;
 
 /**
  * When initialized properly, this class will search for annotated classes and archives in your
@@ -66,7 +71,8 @@
       private ClassLoader loader;
       private Map defaultProps;
       private Hashtable jndiProperties;
-      InterceptorInfoRepository interceptorInfoRepository = new InterceptorInfoRepository();
+      private InterceptorInfoRepository interceptorInfoRepository = new InterceptorInfoRepository();
+      private VirtualFile virtualFile;
 
       public DeployerUnit(ClassLoader loader, URL url, Map defaultProps, Hashtable jndiProperties)
       {
@@ -85,8 +91,36 @@
          resourceLoader = new URLClassLoader(urls, parent);
          this.defaultProps = defaultProps;
          this.jndiProperties = jndiProperties;
+         try
+         {
+            VFS vfs = VFS.getVFS(url);
+            virtualFile = vfs.getRoot();
+         }
+         catch (IOException e)
+         {
+            throw new RuntimeException();
+         }
       }
 
+      public List<VirtualFile> getResources(VirtualFileFilter filter)
+      {
+         VisitorAttributes va = new VisitorAttributes();
+         va.setRecurse(true);
+         va.setLeavesOnly(true);
+         va.setRecurseArchives(false);
+         FilterVirtualFileVisitor visitor = new FilterVirtualFileVisitor(filter, va);
+         try
+         {
+            virtualFile.visit(visitor);
+         }
+         catch (IOException e)
+         {
+            throw new RuntimeException(e);
+         }
+         return visitor.getMatched();
+
+      }
+
       public Hashtable getJndiProperties()
       {
          return jndiProperties;
@@ -393,9 +427,9 @@
          {
             File dir = new File(url.toURI());
             for (File fp : dir.listFiles())
-            {          
+            {
                if (fp.isDirectory())
-               {               
+               {
                   archives.add(fp.toURL());
                   continue;
                }
@@ -446,7 +480,7 @@
          throw e;
       }
    }
-   
+
    private void lookup(String name)
    {
       System.out.println("lookup " + name);
@@ -467,14 +501,14 @@
       try
       {
          loadMbeanServer();
-                   
+
          for (EJB3StandaloneDeployment deployment : deployments)
-         {   
+         {
             if (deployment.getMbeanServer() == null)
             {
                deployment.setMbeanServer(mbeanServer);
             }
-                       
+
             deployment.start();
             lookup("");
          }
@@ -485,13 +519,13 @@
          throw e;
       }
    }
-   
+
    private void loadMbeanServer()
    {
       if (mbeanServer == null)
       {
          ControllerContext context = kernel.getController().getInstalledContext("MBeanServer");
-       
+
          if (context != null)
             mbeanServer = (MBeanServer) context.getTarget();
          else

Modified: trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentEjbResolver.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentEjbResolver.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentEjbResolver.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -26,7 +26,7 @@
 import org.jboss.ejb3.Ejb3Registry;
 import org.jboss.ejb3.ProxyFactoryHelper;
 import org.jboss.ejb3.Container;
-import org.jboss.ejb3.EAR;
+import org.jboss.ejb3.DeploymentScope;
 
 import javax.naming.NameNotFoundException;
 import java.util.Iterator;
@@ -43,12 +43,12 @@
  */
 public abstract class DeploymentEjbResolver
 {
-   protected EAR ear;
+   protected DeploymentScope deploymentScope;
    protected String errorName;
 
-   protected DeploymentEjbResolver(EAR ear, String errorName)
+   protected DeploymentEjbResolver(DeploymentScope deploymentScope, String errorName)
    {
-      this.ear = ear;
+      this.deploymentScope = deploymentScope;
       this.errorName = errorName;
    }
 
@@ -59,9 +59,9 @@
       int hashIndex = ejbLink.indexOf('#');
       if (hashIndex != -1)
       {
-         if (ear == null) return null;
+         if (deploymentScope == null) return null;
          String relativePath = ejbLink.substring(0, hashIndex);
-         Ejb3Deployment dep = ear.findRelativeDeployment(relativePath);
+         Ejb3Deployment dep = deploymentScope.findRelativeDeployment(relativePath);
          if (dep == null) return null;
          String ejbName = ejbLink.substring(hashIndex);
          return dep.getEjbContainer(ejbName, businessIntf);
@@ -115,9 +115,9 @@
       if (rtnContainer != null) return rtnContainer;
       // search in EAR
       String jarName = null;
-      if (ear != null)
+      if (deploymentScope != null)
       {
-         for (Ejb3Deployment deployment : ear.getEjbDeployments())
+         for (Ejb3Deployment deployment : deploymentScope.getEjbDeployments())
          {
             EJBContainer newContainer = getEjbContainer(deployment, businessIntf);
             if (rtnContainer == newContainer) continue; // don't check self

Modified: trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentPersistenceUnitResolver.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentPersistenceUnitResolver.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/enc/DeploymentPersistenceUnitResolver.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -23,7 +23,7 @@
 
 import org.jboss.ejb3.entity.PersistenceUnitDeployment;
 import org.jboss.ejb3.PersistenceUnitRegistry;
-import org.jboss.ejb3.EAR;
+import org.jboss.ejb3.DeploymentScope;
 import org.jboss.ejb3.Ejb3Deployment;
 
 import javax.naming.NameNotFoundException;
@@ -39,13 +39,13 @@
 public class DeploymentPersistenceUnitResolver
 {
    protected List<PersistenceUnitDeployment> persistenceUnitDeployments;
-   protected EAR ear;
+   protected DeploymentScope deploymentScope;
    protected LinkedHashMap ejbContainers;
 
-   public DeploymentPersistenceUnitResolver(List<PersistenceUnitDeployment> persistenceUnitDeployments, EAR ear, LinkedHashMap ejbContainers)
+   public DeploymentPersistenceUnitResolver(List<PersistenceUnitDeployment> persistenceUnitDeployments, DeploymentScope deploymentScope, LinkedHashMap ejbContainers)
    {
       this.persistenceUnitDeployments = persistenceUnitDeployments;
-      this.ear = ear;
+      this.deploymentScope = deploymentScope;
       this.ejbContainers = ejbContainers;
    }
 
@@ -72,7 +72,7 @@
       {
          String relativePath = unitName.substring(0, hashIndex);
          String name = unitName.substring(hashIndex + 1);
-         if (ear == null)
+         if (deploymentScope == null)
          {
             String relativeJarName = relativePath.substring(3);
             // look in global EJB jars.
@@ -89,7 +89,7 @@
             }
             return null;
          }
-         Ejb3Deployment dep = ear.findRelativeDeployment(relativePath);
+         Ejb3Deployment dep = deploymentScope.findRelativeDeployment(relativePath);
          if (dep == null)
          {
             return null;

Modified: trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModuleEjbResolver.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModuleEjbResolver.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModuleEjbResolver.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -23,7 +23,7 @@
 
 import org.jboss.ejb3.EJBContainer;
 import org.jboss.ejb3.Ejb3Deployment;
-import org.jboss.ejb3.EAR;
+import org.jboss.ejb3.DeploymentScope;
 
 import javax.naming.NameNotFoundException;
 import java.util.LinkedHashMap;
@@ -39,9 +39,9 @@
    protected LinkedHashMap ejbContainers;
    protected Ejb3Deployment deployment;
 
-   public EjbModuleEjbResolver(EAR ear, String errorName, LinkedHashMap ejbContainers, Ejb3Deployment deployment)
+   public EjbModuleEjbResolver(DeploymentScope deploymentScope, String errorName, LinkedHashMap ejbContainers, Ejb3Deployment deployment)
    {
-      super(ear, errorName);
+      super(deploymentScope, errorName);
       this.ejbContainers = ejbContainers;
       this.deployment = deployment;
    }

Modified: trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModulePersistenceUnitResolver.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModulePersistenceUnitResolver.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/enc/EjbModulePersistenceUnitResolver.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -22,7 +22,7 @@
 package org.jboss.ejb3.enc;
 
 import org.jboss.ejb3.entity.PersistenceUnitDeployment;
-import org.jboss.ejb3.EAR;
+import org.jboss.ejb3.DeploymentScope;
 
 import java.util.List;
 import java.util.LinkedHashMap;
@@ -35,8 +35,8 @@
  */
 public class EjbModulePersistenceUnitResolver extends DeploymentPersistenceUnitResolver
 {
-   public EjbModulePersistenceUnitResolver(List<PersistenceUnitDeployment> persistenceUnitDeployments, EAR ear, LinkedHashMap ejbContainers)
+   public EjbModulePersistenceUnitResolver(List<PersistenceUnitDeployment> persistenceUnitDeployments, DeploymentScope deploymentScope, LinkedHashMap ejbContainers)
    {
-      super(persistenceUnitDeployments, ear, ejbContainers);
+      super(persistenceUnitDeployments, deploymentScope, ejbContainers);
    }
 }

Modified: trunk/ejb3/src/main/org/jboss/ejb3/security/JaccHelper.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/security/JaccHelper.java	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/main/org/jboss/ejb3/security/JaccHelper.java	2006-10-06 21:24:32 UTC (rev 57481)
@@ -43,6 +43,7 @@
 import org.jboss.deployment.DeploymentInfo;
 import org.jboss.ejb3.EJBContainer;
 import org.jboss.logging.Logger;
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
 
 /**
  * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
@@ -62,7 +63,7 @@
       PolicyConfigurationFactory pcFactory = Ejb3PolicyConfigurationFactory.getPolicyConfigurationFactory();
       boolean removeExistingContext = true;
       PolicyConfiguration pc = pcFactory.getPolicyConfiguration(contextID, removeExistingContext);
-      
+
       /*Set keys = PolicyContext.getHandlerKeys();
       if (!keys.contains(EnterpriseBeanPolicyContextHandler.EJB_CONTEXT_KEY))
       {
@@ -86,10 +87,14 @@
       return pc;
    }
 
+   public static void putJaccInService(PolicyConfiguration pc, DeploymentUnit di) throws Exception
+   {
+
+   }
    public static void putJaccInService(PolicyConfiguration pc, DeploymentInfo di) throws Exception
    {
       di.context.put("javax.security.jacc.PolicyConfiguration", pc);
-      
+
       // Link this to the parent PC
       DeploymentInfo current = di;
       while (current.parent != null)
@@ -154,7 +159,7 @@
       }
 
       String ejbName = container.getEjbName();
-      
+
       //Am I iterating over the right thing here? Should I be using the stuff from 
       //Advisor.methodInterceptors instead?
       Method[] methods = container.getBeanClass().getDeclaredMethods();

Added: trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml
===================================================================
--- trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+    JCA Deployers
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <!-- TODO this should be removed later on when ENC gets changed -->
+   <bean name="java:comp/Initializer" class="org.jboss.ejb3.embedded.JavaCompInitializer"/>
+   <bean name="DefaultPersistenceProperties" class="org.jboss.ejb3.DefaultPersistenceProperties"/>
+
+   <bean name="EJBRegistrationDeployer" class="org.jboss.ejb3.deployers.EJBRegistrationDeployer">
+      <install bean="MainDeployer" method="addDeployer">
+         <parameter>
+            <this/>
+         </parameter>
+      </install>
+      <uninstall bean="MainDeployer" method="removeDeployer">
+         <parameter>
+            <this/>
+         </parameter>
+      </uninstall>
+      <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+      <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
+      <property name="defaultPersistenceProperties"><inject bean="DefaultPersistenceProperties" property="properties"/></property>
+      <property name="ignoredJarsSet">
+         <set elementClass="java.lang.String">
+            <value>snmp-adaptor.jar</value>
+            <value>otherimages.jar</value>
+            <value>applet.jar</value>
+            <value>jcommon.jar</value>
+            <value>console-mgr-classes.jar</value>
+            <value>jfreechart.jar</value>
+            <value>juddi-service.jar</value>
+            <value>wsdl4j.jar</value>
+            <value>commons-collections.jar</value>
+            <value>commons-pool.jar</value>
+            <value>juddi.jar</value>
+            <value>commons-discovery.jar</value>
+            <value>uddi4j.jar</value>
+            <value>axis.jar</value>
+            <value>commons-dbcp.jar</value>
+            <value>jboss-juddiaxis.jar</value>
+            <value>trove.jar</value>
+            <value>javassist.jar</value>
+            <value>jboss-aop-jdk50.jar</value>
+            <value>jboss-aspect-library-jdk50.jar</value>
+            <value>ejb3-persistence.jar</value>
+            <value>commons-validator-1.1.3.jar</value>
+            <value>commons-collections.jar</value>
+            <value>commons-fileupload.jar</value>
+            <value>commons-pool.jar</value>
+            <value>hibernate-entitymanager.jar</value>
+            <value>jboss-ejb3x.jar</value>
+            <value>commons-digester-1.6.jar</value>
+            <value>cglib-2.1.1.jar</value>
+            <value>commons-discovery.jar</value>
+            <value>jboss-annotations-ejb3.jar</value>
+            <value>jaxen-1.1-beta-4.jar</value>
+            <value>hibernate-annotations.jar</value>
+            <value>commons-httpclient.jar</value>
+            <value>commons-logging.jar</value>
+            <value>commons-vfs.jar</value>
+            <value>hibernate3.jar</value>
+            <value>commons-logging-api.jar</value>
+            <value>asm.jar</value>
+            <value>asm-attrs.jar</value>
+            <value>commons-lang-2.0.jar</value>
+            <value>commons-beanutils.jar</value>
+            <value>jboss-ejb3.jar</value>
+            <value>dom4j.jar</value>
+            <value>commons-codec-1.2.jar</value>
+            <value>wsdl4j.jar</value>
+            <value>xmlsec.jar</value>
+            <value>jbossws.jar</value>
+            <value>jboss-bean-deployer.jar</value>
+            <value>jboss-microcontainer.jar</value>
+            <value>jboss-dependency.jar</value>
+            <value>jboss-container.jar</value>
+            <value>tomcat-coyote.jar</value>
+            <value>commons-collections.jar</value>
+            <value>myfaces.jar</value>
+            <value>jstl.jar</value>
+            <value>commons-digester-1.6.jar</value>
+            <value>myfaces-impl.jar</value>
+            <value>commons-beanutils.jar</value>
+            <value>myfaces-jsf-api.jar</value>
+            <value>commons-codec-1.2.jar</value>
+            <value>catalina-optional.jar</value>
+            <value>tomcat-util.jar</value>
+            <value>jasper-compiler.jar</value>
+            <value>commons-el.jar</value>
+            <value>jasper-compiler-jdt.jar</value>
+            <value>tomcat-http.jar</value>
+            <value>catalina-manager.jar</value>
+            <value>jasper-runtime.jar</value>
+            <value>tomcat55-service.jar</value>
+            <value>servlets-invoker.jar</value>
+            <value>catalina.jar</value>
+            <value>naming-resources.jar</value>
+            <value>servlets-default.jar</value>
+            <value>tomcat-ajp.jar</value>
+            <value>commons-modeler.jar</value>
+            <value>tomcat-apr.jar</value>
+            <value>servlets-webdav.jar</value>
+         </set>
+      </property>
+   </bean>
+   <bean name="EJBStage2Deployer" class="org.jboss.ejb3.deployers.EJBStage2Deployer">
+      <install bean="MainDeployer" method="addDeployer">
+         <parameter>
+            <this/>
+         </parameter>
+      </install>
+      <uninstall bean="MainDeployer" method="removeDeployer">
+         <parameter>
+            <this/>
+         </parameter>
+      </uninstall>
+   </bean>
+</deployment>

Added: trunk/ejb3/src/resources/ejb3-connectors-service.xml
===================================================================
--- trunk/ejb3/src/resources/ejb3-connectors-service.xml	2006-10-06 20:44:02 UTC (rev 57480)
+++ trunk/ejb3/src/resources/ejb3-connectors-service.xml	2006-10-06 21:24:32 UTC (rev 57481)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   JBoss EJB3Deployer
+   
+   $Id: jboss-service.xml 41488 2006-02-25 00:14:09Z dimitris $
+-->
+<server>
+
+   <mbean code="org.jboss.remoting.transport.Connector"
+          xmbean-dd="org/jboss/remoting/transport/Connector.xml"
+          name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3">
+      <attribute name="InvokerLocator">socket://${jboss.bind.address}:3873</attribute>
+      <attribute name="Configuration">
+         <handlers>
+            <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler>
+         </handlers>
+      </attribute>
+   </mbean>
+
+</server>




More information about the jboss-cvs-commits mailing list