You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by dj...@apache.org on 2005/01/10 20:01:15 UTC

svn commit: r124822 - in geronimo/trunk: applications/demo/src/webapp/WEB-INF modules/assembly modules/assembly/src/plan modules/client-builder/src/java/org/apache/geronimo/client/builder modules/connector-builder modules/connector-builder/src/java/org/apache/geronimo/connector/deployment modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean modules/connector-builder/src/schema modules/connector-builder/src/test-data/connector_1_5 modules/connector-builder/src/test-data/data modules/connector-builder/src/test/org/apache/geronimo/connector/deployment modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local modules/deployment modules/deployment/src/java/org/apache/geronimo/deployment modules/deployment/src/test modules/deployment/src/test/org modules/deployment/src/test/org/apache modules/deployment/src/test/org/apache/geronimo modules/deployment/src/test/org/apache/geronimo/deployment modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment modules/j2ee-schema/src/java/org/apache/geronimo/schema modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment modules/jetty-builder/src/schema modules/jetty-builder/src/test-resources/plans modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment modules/jetty/src/test/org/apache/geronimo/jetty modules/kernel/src/java/org/apache/geronimo/gbean/runtime modules/kernel/src/java/org/apache/geronimo/kernel modules/naming-builder/src/java/org/apache/geronimo/naming/deployment modules/naming-builder/src/schema modules/security/src/java/org/apache/geronimo/security/jaas modules/security/src/java/org/apache/geronimo/security/remoting/jmx modules/security/src/test/org/apache/geronimo/security modules/security/src/test/org/apache/geronimo/security/jaas modules/service-builder modules/service-builder/src/java/org/apache/geronimo/deployment/service modules/service-builder/src/schema modules/system/src/test/org/apache/geronimo/system/configuration modules/tomcat/src/test/org/apache/geronimo/tomcat plugins/maven-geronimo-plugin plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin

Author: djencks
Date: Mon Jan 10 11:01:13 2005
New Revision: 124822

URL: http://svn.apache.org/viewcvs?view=rev&rev=124822
Log:
Partial implementation of GERONIMO-450. GBean names are (mostly) constructed like jsr-77 names and xml config usually only needs to specify namePart and optionally type
Added:
   geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/AbstractDeployCommand.java
   geronimo/trunk/modules/deployment/src/test/
   geronimo/trunk/modules/deployment/src/test/org/
   geronimo/trunk/modules/deployment/src/test/org/apache/
   geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/
   geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/deployment/
   geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/deployment/DeploymentContextTest.java
Modified:
   geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml
   geronimo/trunk/modules/assembly/maven.xml
   geronimo/trunk/modules/assembly/project.xml
   geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml
   geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml
   geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml
   geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml
   geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml
   geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml
   geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml
   geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml
   geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml
   geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml
   geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml
   geronimo/trunk/modules/assembly/src/plan/system-plan.xml
   geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java
   geronimo/trunk/modules/connector-builder/project.xml
   geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java
   geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
   geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd
   geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml
   geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml
   geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java
   geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java
   geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java
   geronimo/trunk/modules/deployment/project.xml
   geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java
   geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
   geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java
   geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java
   geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java
   geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd
   geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml
   geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
   geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
   geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java
   geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java
   geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java
   geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java
   geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd
   geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java
   geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java
   geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java
   geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java
   geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java
   geronimo/trunk/modules/service-builder/project.xml
   geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java
   geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java
   geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd
   geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java
   geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
   geronimo/trunk/plugins/maven-geronimo-plugin/project.xml
   geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java

Modified: geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml?view=diff&rev=124822&p1=geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml&r1=124821&p2=geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml&r2=124822
==============================================================================
--- geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml	(original)
+++ geronimo/trunk/applications/demo/src/webapp/WEB-INF/geronimo-jetty.xml	Mon Jan 10 11:01:13 2005
@@ -24,7 +24,7 @@
 
     <context-root>/demo</context-root>
     <context-priority-classloader>false</context-priority-classloader>
-    <login-domain-name>demo-properties-realm</login-domain-name>
+    <security-realm-name>demo-properties-realm</security-realm-name>
     <security>
         <default-principal realm-name="demo-properties-realm">
             <principal class="org.apache.geronimo.security.realm.providers.GeronimoUserPrincipal" name="izumi"/>

Modified: geronimo/trunk/modules/assembly/maven.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/maven.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/maven.xml&r1=124821&p2=geronimo/trunk/modules/assembly/maven.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/maven.xml	(original)
+++ geronimo/trunk/modules/assembly/maven.xml	Mon Jan 10 11:01:13 2005
@@ -208,7 +208,7 @@
             deployerSystemPlan="${basedir}/target/plan/deployer-system-plan.xml"
             j2eeDeployerPlan="${basedir}/target/plan/j2ee-deployer-plan.xml"
             deployerClassPath="${deploy.classpath}"
-            deployerGBean="geronimo.deployment:role=Deployer,config=org/apache/geronimo/J2EEDeployer"
+            deployerGBean="geronimo.server:name=Deployer,J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,j2eeType=Deployer,J2EEServer=geronimo"
             deploymentFactory="org.apache.geronimo.deployment.plugin.factories.DeploymentFactoryImpl"
             />
 
@@ -327,12 +327,12 @@
         <ant:copy todir="${distDir}/var/catalina/conf"  file="${project.root}/modules/tomcat/src/var/web.xml"/>
 
         <!-- build the Demo configuration -->
-        <ant:echo>Building demo website configuration</ant:echo>
-        <ant:java fork="true" jar="${distDir}/bin/deployer.jar" failonerror="true">
-            <ant:jvmarg value="-ea"/>
-            <ant:arg value="distribute"/>
-            <ant:arg value="${maven.repo.local}/geronimo/wars/geronimo-demo-${pom.currentVersion}.war"/>
-        </ant:java>
+<!--        <ant:echo>Building demo website configuration</ant:echo>-->
+<!--        <ant:java fork="true" jar="${distDir}/bin/deployer.jar" failonerror="true">-->
+<!--            <ant:jvmarg value="-ea"/>-->
+<!--            <ant:arg value="distribute"/>-->
+<!--            <ant:arg value="${maven.repo.local}/geronimo/wars/geronimo-demo-${pom.currentVersion}.war"/>-->
+<!--        </ant:java>-->
 
         <!-- build the Debug Tool configuration "org/apache/geronimo/DebugConsole"-->
         <ant:echo>Building debug tool configuration</ant:echo>

Modified: geronimo/trunk/modules/assembly/project.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/project.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/project.xml&r1=124821&p2=geronimo/trunk/modules/assembly/project.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/project.xml	(original)
+++ geronimo/trunk/modules/assembly/project.xml	Mon Jan 10 11:01:13 2005
@@ -231,18 +231,18 @@
             <properties>
                 <repository>true</repository>
             </properties>
-        </dependency>	
-
-	<!--
-        <dependency>
-            <groupId>geronimo</groupId>
-            <artifactId>geronimo-remoting</artifactId>
-            <version>${pom.currentVersion}</version>
-            <properties>
-                <repository>true</repository>
-            </properties>
         </dependency>
-	-->
+
+        <!--
+<dependency>
+<groupId>geronimo</groupId>
+<artifactId>geronimo-remoting</artifactId>
+<version>${pom.currentVersion}</version>
+<properties>
+<repository>true</repository>
+</properties>
+</dependency>
+        -->
 
         <dependency>
             <groupId>geronimo</groupId>
@@ -856,32 +856,32 @@
         </dependency>
         
         <!-- JavaMail -->
-	<dependency>
-	    <groupId>geronimo</groupId>
-	    <artifactId>geronimo-mail</artifactId>
-	    <version>${pom.currentVersion}</version>
-	    <properties>
-		<repository>true</repository>
-	    </properties>
-	</dependency>
-
-	<dependency>
-	    <groupId>geronimo-spec</groupId>
-	    <artifactId>geronimo-spec-activation</artifactId>
-	    <version>${geronimo_spec_activation_version}</version>
-	    <properties>
-		<repository>true</repository>
-	    </properties>
-	</dependency>
-
-	<dependency>
-	    <groupId>geronimo-spec</groupId>
-	    <artifactId>geronimo-spec-javamail</artifactId>
-	    <version>${geronimo_spec_javamail_version}</version>
-	    <properties>
-		<repository>true</repository>
-	    </properties>
-	</dependency>
+        <dependency>
+            <groupId>geronimo</groupId>
+            <artifactId>geronimo-mail</artifactId>
+            <version>${pom.currentVersion}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-spec-activation</artifactId>
+            <version>${geronimo_spec_activation_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo-spec</groupId>
+            <artifactId>geronimo-spec-javamail</artifactId>
+            <version>${geronimo_spec_javamail_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
 
         <dependency>
             <groupId>axis</groupId>
@@ -953,6 +953,65 @@
                 <repository>true</repository>
             </properties>
         </dependency>
+
+        <!--corba support -->
+        <dependency>
+            <groupId>openorb</groupId>
+            <artifactId>openorb-orb</artifactId>
+            <version>${openorb_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>openorb</groupId>
+            <artifactId>openorb-orb-omg</artifactId>
+            <version>${openorb_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>openorb</groupId>
+            <artifactId>openorb-orb-tools</artifactId>
+            <version>${openorb_version}</version>
+            <properties>
+                <lib>true</lib>
+                <deploy>true</deploy>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>openorb</groupId>
+            <artifactId>openorb-tools</artifactId>
+            <version>${openorb_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>avalon</groupId>
+            <artifactId>avalon-framework</artifactId>
+            <version>${avalon_framework_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+
+        <dependency>
+            <groupId>avalon</groupId>
+            <artifactId>avalon-logkit</artifactId>
+            <version>${avalon_logkit_version}</version>
+            <properties>
+                <repository>true</repository>
+            </properties>
+        </dependency>
+        <!-- end corba support-->
+
     </dependencies>
 
 </project>

Modified: geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/client-system-plan.xml	Mon Jan 10 11:01:13 2005
@@ -33,32 +33,32 @@
     >
 
     <!-- ServerInfo service -->
-    <gbean name="geronimo.client:role=ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo"/>
+    <gbean namePart="ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo"/>
 
     <!-- URLFactory service -->
-    <gbean name="geronimo.client:role=URLFactory" class="org.apache.geronimo.system.url.GeronimoURLFactory"/>
+    <gbean namePart="URLFactory" class="org.apache.geronimo.system.url.GeronimoURLFactory"/>
 
     <!-- Configuration Store service -->
-    <gbean name="geronimo.client:role=ConfigurationStore,type=Local" class="org.apache.geronimo.system.configuration.LocalConfigStore">
+    <gbean namePart="Local" type="ConfigurationStore" class="org.apache.geronimo.system.configuration.LocalConfigStore">
         <attribute name="root" type="java.net.URI">config-store</attribute>
-        <reference name="ServerInfo">geronimo.client:role=ServerInfo</reference>
+        <reference name="ServerInfo">*:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Repository -->
-    <gbean name="geronimo.client:role=Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
+    <gbean namePart="Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
         <attribute name="root" type="java.net.URI">repository/</attribute>
-        <reference name="ServerInfo">geronimo.client:role=ServerInfo</reference>
+        <reference name="ServerInfo">*:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Logging service -->
-    <gbean name="geronimo.client:role=Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
+    <gbean namePart="Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
         <attribute name="configurationFile">var/log/client-log4j.properties</attribute>
         <attribute name="refreshPeriod">60</attribute>
-        <reference name="ServerInfo">geronimo.client:role=ServerInfo</reference>
+        <reference name="ServerInfo">*:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Naming properties -->
-    <gbean name="geronimo.client:role=NamingProperties" class="org.apache.geronimo.system.properties.NamingProperties">
+    <gbean namePart="NamingProperties" class="org.apache.geronimo.system.properties.NamingProperties">
         <attribute name="namingFactoryInitial" type="java.lang.String">com.sun.jndi.rmi.registry.RegistryContextFactory</attribute>
         <attribute name="namingFactoryUrlPkgs" type="java.lang.String">org.apache.geronimo.naming</attribute>
         <attribute name="namingProviderUrl" type="java.lang.String">rmi://localhost:1099</attribute>

Modified: geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/default-database-plan.xml	Mon Jan 10 11:01:13 2005
@@ -71,17 +71,17 @@
         <attribute name="ConfiguredPassword" type="java.lang.String">testPassword</attribute>
     </gbean-->
 
-    <gbean name="geronimo.server:type=ThreadPooledTimer,name=JDBCTransactionalThreadPooledTimer" class="org.apache.geronimo.timer.jdbc.JDBCStoreThreadPooledTransactionalTimer">
+    <gbean namePart="JDBCTransactionalThreadPooledTimer" class="org.apache.geronimo.timer.jdbc.JDBCStoreThreadPooledTransactionalTimer">
         <attribute name="repeatCount" type="int">5</attribute>
         <reference name="TransactionContextManager">geronimo.server:type=TransactionContextManager</reference>
         <reference name="ManagedConnectionFactoryWrapper">geronimo.server:J2EEServer=geronimo,j2eeType=JCAManagedConnectionFactory,name=DefaultDatasource</reference>
         <reference name="ThreadPool">geronimo.server:type=ThreadPool,name=DefaultThreadPool</reference>
     </gbean>
 
-    <gbean name="geronimo.server:type=ThreadPooledTimer,name=JDBCNonTransactionalThreadPooledTimer" class="org.apache.geronimo.timer.jdbc.JDBCStoreThreadPooledNonTransactionalTimer">
+    <gbean namePart="JDBCNonTransactionalThreadPooledTimer" class="org.apache.geronimo.timer.jdbc.JDBCStoreThreadPooledNonTransactionalTimer">
         <reference name="ManagedConnectionFactoryWrapper">geronimo.server:J2EEServer=geronimo,j2eeType=JCAManagedConnectionFactory,name=DefaultDatasource</reference>
-        <reference name="TransactionContextManager">geronimo.server:type=TransactionContextManager</reference>
-        <reference name="ThreadPool">geronimo.server:type=ThreadPool,name=DefaultThreadPool</reference>
+        <reference name="TransactionContextManager">geronimo.server:J2EEServer=geronimo,j2eeType=GBean,name=TransactionContextManager,*</reference>
+        <reference name="ThreadPool">geronimo.server:J2EEServer=geronimo,j2eeType=GBean,name=DefaultThreadPool,*</reference>
     </gbean>
 
 </connector>

Modified: geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/deployer-system-plan.xml	Mon Jan 10 11:01:13 2005
@@ -28,26 +28,26 @@
     >
 
     <!-- ServerInfo service -->
-    <gbean name="geronimo.deployment:role=ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo">
+    <gbean namePart="ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo">
     </gbean>
 
     <!-- Configuration Store service -->
-    <gbean name="geronimo.deployment:role=ConfigurationStore,type=Local" class="org.apache.geronimo.system.configuration.LocalConfigStore">
+    <gbean namePart="Local" type="ConfigurationStore" class="org.apache.geronimo.system.configuration.LocalConfigStore">
         <attribute name="root" type="java.net.URI">config-store/</attribute>
-        <reference name="ServerInfo">geronimo.deployment:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 
 
     <!-- Repository -->
-    <gbean name="geronimo.deployment:role=Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
+    <gbean namePart="Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
         <attribute name="root" type="java.net.URI">repository/</attribute>
-        <reference name="ServerInfo">geronimo.deployment:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Logging service -->
-    <gbean name="geronimo.deployment:role=Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
+    <gbean namePart="Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
         <attribute name="configurationFile">var/log/deployer-log4j.properties</attribute>
         <attribute name="refreshPeriod">60</attribute>
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 </configuration>

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-client-plan.xml	Mon Jan 10 11:01:13 2005
@@ -77,32 +77,34 @@
 <!--    </gbean>-->
 
     <!--client connector support-->
-    <gbean name="geronimo.client:type=ThreadPool,name=DefaultThreadPool" class="org.apache.geronimo.pool.ThreadPool">
+    <gbean namePart="DefaultThreadPool" class="org.apache.geronimo.pool.ThreadPool">
         <attribute name="keepAliveTime" type="long">5000</attribute>
         <attribute name="poolSize" type="int">10</attribute>
         <attribute name="poolName" type="java.lang.String">DefaultThreadPool</attribute>
     </gbean>
 
-    <gbean name="geronimo.client:type=ConnectionTracker" class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator">
+    <gbean namePart="ConnectionTracker" class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator">
     </gbean>
 
-    <gbean name="geronimo.client:type=WorkManager,name=DefaultWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
+    <gbean name="geronimo.client:j2eeType=JCAWorkManager,J2EEServer=client,J2EEApplication=null,J2EEModule=org/apache/geronimo/Client,name=DefaultWorkManager"  class="org.apache.geronimo.connector.work.GeronimoWorkManager">
         <attribute name="syncMaximumPoolSize" type="int">10</attribute>
         <attribute name="startMaximumPoolSize" type="int">10</attribute>
         <attribute name="scheduledMaximumPoolSize" type="int">10</attribute>
-        <reference name="TransactionContextManager">geronimo.client:type=TransactionContextManager</reference>
+        <reference name="TransactionContextManager">*:name=TransactionContextManager,*</reference>
     </gbean>
 
-    <gbean name="geronimo.client:type=TransactionManager" class="org.apache.geronimo.transaction.manager.TransactionManagerImpl">
+    <gbean namePart="TransactionManager" class="org.apache.geronimo.transaction.manager.TransactionManagerImpl">
+        <!--no transaction log on the client-->
+        <attribute name="defaultTransactionTimeoutSeconds">600</attribute>
         <references name="ResourceManagers">
-            <pattern>geronimo.client:j2eeType=JCAManagedConnectionFactory,*</pattern>
-            <pattern>geronimo.client:j2eeType=ActivationSpec,*</pattern>
+            <pattern>*:j2eeType=JCAManagedConnectionFactory,*</pattern>
+            <pattern>*:j2eeType=ActivationSpec,*</pattern>
         </references>
     </gbean>
 
-    <gbean name="geronimo.client:type=TransactionContextManager" class="org.apache.geronimo.transaction.context.TransactionContextManager">
-        <reference name="TransactionManager">geronimo.client:type=TransactionManager</reference>
-        <reference name="XidImporter">geronimo.client:type=TransactionManager</reference>
+    <gbean namePart="TransactionContextManager" class="org.apache.geronimo.transaction.context.TransactionContextManager">
+        <reference name="TransactionManager">*:name=TransactionManager,*</reference>
+        <reference name="XidImporter">*:name=TransactionManager,*</reference>
     </gbean>
 
 </configuration>

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-deployer-plan.xml	Mon Jan 10 11:01:13 2005
@@ -116,81 +116,46 @@
          <uri>geronimo/jars/geronimo-client-${geronimo_version}.jar</uri>
      </dependency>
 
-    <!--jetty dependencies-->
-    <dependency>
-        <uri>jetty/jars/org.mortbay.jetty-${jetty_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>tomcat/jars/jasper-compiler-${jasper_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>tomcat/jars/jasper-runtime-${jasper_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>commons-el/jars/commons-el-${commons_el_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>ant/jars/ant-${ant_version}.jar</uri>
-    </dependency>
-
-    <!-- HTTP/SOAP with XFire -->
-    <dependency>
-        <uri>xfire/jars/xfire-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>xfire/jars/xfire-java-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>xfire/jars/xfire-jaxrpc-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>wsdl4j/jars/wsdl4j-${wsdl4j_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>stax/jars/stax-${stax_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>stax/jars/stax-api-${stax_api_version}.jar</uri>
-    </dependency>
 
 
-    <gbean name="geronimo.deployment:role=Deployer,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.deployment.Deployer">
-        <reference name="Builders">geronimo.deployer:role=Builder,config=org/apache/geronimo/J2EEDeployer,*</reference>
-        <reference name="Store">geronimo.deployment:role=ConfigurationStore,type=Local</reference>
+    <gbean namePart="Deployer" type="Deployer" class="org.apache.geronimo.deployment.Deployer">
+        <reference name="Builders">geronimo.server:j2eeType=ConfigBuilder,J2EEModule=org/apache/geronimo/J2EEDeployer,*</reference>
+        <reference name="Store">geronimo.server:j2eeType=ConfigurationStore,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=Builder,type=Service,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.deployment.service.ServiceConfigBuilder">
+    <gbean namePart="ServiceBuilder" type="ConfigBuilder" class="org.apache.geronimo.deployment.service.ServiceConfigBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="j2eeServer" type="javax.management.ObjectName">geronimo.server:j2eeType=J2EEServer,name=geronimo</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=Builder,type=EAR,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.j2ee.deployment.EARConfigBuilder">
+    <gbean namePart="EARBuilder" type="ConfigBuilder" class="org.apache.geronimo.j2ee.deployment.EARConfigBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="j2eeServer" type="javax.management.ObjectName">geronimo.server:j2eeType=J2EEServer,name=geronimo</attribute>
-        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.server:type=TransactionContextManager</attribute>
-        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.server:type=ConnectionTracker</attribute>
-        <attribute name="transactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:type=ThreadPooledTimer,name=TransactionalThreadPooledTimer</attribute>
-        <attribute name="nonTransactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:type=ThreadPooledTimer,name=NonTransactionalThreadPooledTimer</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
-        <reference name="EJBConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="EJBReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="WebConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=Web,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="ConnectorConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="ResourceReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="AppClientConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=AppClient,config=org/apache/geronimo/J2EEDeployer</reference>
+        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.server:name=TransactionContextManager,*</attribute>
+        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.server:name=ConnectionTracker,*</attribute>
+        <attribute name="transactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:name=TransactionalThreadPooledTimer,*</attribute>
+        <attribute name="nonTransactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:name=NonTransactionalThreadPooledTimer,*</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
+        <reference name="EJBConfigBuilder">geronimo.server:name=EJBBuilder,J2EEModule=org/apache/geronimo/J2EEDeployer,*</reference>
+        <reference name="EJBReferenceBuilder">geronimo.server:name=EJBBuilder,J2EEModule=org/apache/geronimo/J2EEDeployer,*</reference>
+        <reference name="WebConfigBuilder">geronimo.server:name=WebBuilder,J2EEModule=org/apache/geronimo/J2EEDeployer,*</reference>
+        <reference name="ConnectorConfigBuilder">geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,J2EEServer=geronimo,j2eeType=ModuleBuilder,name=ConnectorBuilder</reference>
+        <reference name="ResourceReferenceBuilder">geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,J2EEServer=geronimo,j2eeType=ModuleBuilder,name=ConnectorBuilder</reference>
+        <reference name="AppClientConfigBuilder">geronimo.server:name=AppClientBuilder,J2EEModule=org/apache/geronimo/J2EEDeployer,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:type=SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
+    <gbean namePart="SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
         <attribute name="policyConfigurationFactory" type="java.lang.String">org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory</attribute>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=Web,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.jetty.deployment.JettyModuleBuilder">
+    <gbean namePart="WebBuilder" type="ModuleBuilder" class="org.apache.geronimo.jetty.deployment.JettyModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="defaultSessionTimeoutSeconds">1800</attribute>
         <attribute name="defaultWelcomeFiles">index.html,index.htm,index.jsp</attribute>
-        <attribute name="jettyContainerObjectName">geronimo.server:type=WebContainer,container=Jetty</attribute>
-        <attribute name="defaultServlets">geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/J2EEDeployer,*</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="jettyContainerObjectName">geronimo.server:name=JettyWebContainer,*</attribute>
+        <attribute name="defaultServlets">geronimo.server:j2eeType=DefaultServlet,*</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
 <!--
@@ -216,7 +181,7 @@
     </gbean>
    -->
 
-    <gbean name="geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/J2EEDeployer,name=StaticContent" class="org.apache.geronimo.jetty.JettyServletHolder">
+    <gbean namePart="StaticContent" type="DefaultServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
         <attribute name="servletName">default</attribute>
         <attribute name="servletClass">org.mortbay.jetty.servlet.Default</attribute>
         <attribute name="loadOnStartup">0</attribute>
@@ -230,7 +195,7 @@
         <attribute name="servletMappings">/</attribute>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/J2EEDeployer,name=JSPServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
+    <gbean namePart="JSPServlet" type="DefaultServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
         <attribute name="servletName">jsp</attribute>
         <attribute name="servletClass">org.apache.jasper.servlet.JspServlet</attribute>
         <attribute name="loadOnStartup">0</attribute>
@@ -241,16 +206,16 @@
         <attribute name="servletMappings">*.jsp,*.jspf,*.jspx,*.xsp</attribute>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/J2EEDeployer" class="org.openejb.deployment.OpenEJBModuleBuilder">
+    <gbean namePart="EJBBuilder" type="ModuleBuilder" class="org.openejb.deployment.OpenEJBModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
 <!--        <reference name="SkeletonGenerator">openejb.CORBA:type=SkeletonGenerator,vendor=OpenORB</reference>-->
-        <reference name="Repository">*:role=Repository,*</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ClientEJBReferenceBuilder,config=org/apache/geronimo/J2EEDeployer" class="org.openejb.deployment.RemoteEJBReferenceBuilder">
+    <gbean namePart="ClientEJBReferenceBuilder" class="org.openejb.deployment.RemoteEJBReferenceBuilder">
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.connector.deployment.ConnectorModuleBuilder">
+    <gbean namePart="ConnectorBuilder" type="ModuleBuilder" class="org.apache.geronimo.connector.deployment.ConnectorModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="defaultMaxSize" type="int">10</attribute>
         <attribute name="defaultMinSize" type="int">0</attribute>
@@ -258,19 +223,19 @@
         <attribute name="defaultIdleTimeoutMinutes" type="int">15</attribute>
         <attribute name="defaultXATransactionCaching" type="boolean">true</attribute>
         <attribute name="defaultXAThreadCaching" type="boolean">false</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=AppClient,config=org/apache/geronimo/J2EEDeployer" class="org.apache.geronimo.client.builder.AppClientModuleBuilder">
+    <gbean namePart="AppClientBuilder" type="ModuleBuilder" class="org.apache.geronimo.client.builder.AppClientModuleBuilder">
         <attribute name="defaultClientParentId">org/apache/geronimo/Client</attribute>
         <attribute name="defaultServerParentId">org/apache/geronimo/Server</attribute>
-        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.client:type=TransactionContextManager</attribute>
-        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.client:type=ConnectionTracker</attribute>
-        <reference name="EJBReferenceBuilder">geronimo.deployer:role=ClientEJBReferenceBuilder,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="ConnectorModuleBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="ResourceReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/J2EEDeployer</reference>
-        <reference name="Store">geronimo.deployment:role=ConfigurationStore,type=Local</reference>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.client:name=TransactionContextManager,*</attribute>
+        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.client:name=ConnectionTracker,*</attribute>
+        <reference name="EJBReferenceBuilder">geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,J2EEServer=geronimo,j2eeType=GBean,name=ClientEJBReferenceBuilder</reference>
+        <reference name="ConnectorModuleBuilder">geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,J2EEServer=geronimo,j2eeType=ModuleBuilder,name=ConnectorBuilder</reference>
+        <reference name="ResourceReferenceBuilder">geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/J2EEDeployer,J2EEServer=geronimo,j2eeType=ModuleBuilder,name=ConnectorBuilder</reference>
+        <reference name="Store">geronimo.server:j2eeType=ConfigurationStore,*</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
 <!--    <gbean name="openejb.CORBA:type=Compiler,vendor=Ant" class="org.openejb.corba.compiler.AntCompiler"/>-->

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-runtime-deployer-plan.xml	Mon Jan 10 11:01:13 2005
@@ -63,42 +63,43 @@
  
 
     <!-- deployer gbeans -->
-    <gbean name="geronimo.deployment:role=Deployer,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.deployment.Deployer">
-        <reference name="Builders">geronimo.deployer:role=Builder,config=org/apache/geronimo/RuntimeDeployer,*</reference>
-        <reference name="Store">geronimo.system:role=ConfigurationStore,type=Local</reference>
+    <gbean namePart="Deployer" type="Deployer" class="org.apache.geronimo.deployment.Deployer">
+        <reference name="Builders">geronimo.deployer:j2eeType=ConfigBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="Store">geronimo.system:j2eeType=ConfigurationStore,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=Builder,type=Service,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.deployment.service.ServiceConfigBuilder">
+    <gbean namePart="ServiceBuilder" type="ConfigBuilder" class="org.apache.geronimo.deployment.service.ServiceConfigBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="j2eeServer" type="javax.management.ObjectName">geronimo.server:j2eeType=J2EEServer,name=geronimo</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=Builder,type=EAR,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.j2ee.deployment.EARConfigBuilder">
+    <gbean namePart="EARBuilder" type="ConfigBuilder" class="org.apache.geronimo.j2ee.deployment.EARConfigBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="j2eeServer" type="javax.management.ObjectName">geronimo.server:j2eeType=J2EEServer,name=geronimo</attribute>
-        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.server:type=TransactionContextManager</attribute>
-        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.server:type=ConnectionTracker</attribute>
-        <attribute name="transactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:type=ThreadPooledTimer,name=TransactionalThreadPooledTimer</attribute>
-        <attribute name="nonTransactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:type=ThreadPooledTimer,name=NonTransactionalThreadPooledTimer</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
-        <reference name="EJBConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="EJBReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="WebConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=Web,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="ConnectorConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="ResourceReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="AppClientConfigBuilder">geronimo.deployer:role=ModuleBuilder,type=AppClient,config=org/apache/geronimo/RuntimeDeployer</reference>
+        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.server:name=TransactionContextManager,*</attribute>
+        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.server:name=ConnectionTracker,*</attribute>
+        <attribute name="transactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:name=TransactionalThreadPooledTimer,*</attribute>
+        <attribute name="nonTransactionalTimerObjectName" type="javax.management.ObjectName">geronimo.server:name=NonTransactionalThreadPooledTimer,*</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
+        <reference name="EJBConfigBuilder">geronimo.deployer:name=EJBBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="EJBReferenceBuilder">geronimo.deployer:name=EJBBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="WebConfigBuilder">geronimo.deployer:name=WebBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="ConnectorConfigBuilder">geronimo.deployer:name=ConnectorBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="ResourceReferenceBuilder">geronimo.deployer:name=ConnectorBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="AppClientConfigBuilder">geronimo.deployer:name=AppClientBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=Web,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.jetty.deployment.JettyModuleBuilder">
+    <gbean namePart="WebBuilder" type="ModuleBuilder" class="org.apache.geronimo.jetty.deployment.JettyModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="defaultSessionTimeoutSeconds">1800</attribute>
         <attribute name="defaultWelcomeFiles">index.html,index.htm,index.jsp</attribute>
-        <attribute name="jettyContainerObjectName">geronimo.server:type=WebContainer,container=Jetty</attribute>
-        <attribute name="defaultServlets">geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/RuntimeDeployer,*</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="jettyContainerObjectName">geronimo.server:name=JettyWebContainer</attribute>
+        <attribute name="defaultServlets">geronimo.deployer:j2eeType=DefaultServlet,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</attribute>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/RuntimeDeployer,name=StaticContent" class="org.apache.geronimo.jetty.JettyServletHolder">
+    <gbean namePart="StaticContent" type="DefaultServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
         <attribute name="servletName">default</attribute>
         <attribute name="servletClass">org.mortbay.jetty.servlet.Default</attribute>
         <attribute name="loadOnStartup">0</attribute>
@@ -112,7 +113,7 @@
         <attribute name="servletMappings">/</attribute>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=DefaultServlet,config=org/apache/geronimo/RuntimeDeployer,name=JSPServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
+    <gbean namePart="JSPServlet" type="DefaultServlet" class="org.apache.geronimo.jetty.JettyServletHolder">
         <attribute name="servletName">jsp</attribute>
         <attribute name="servletClass">org.apache.jasper.servlet.JspServlet</attribute>
         <attribute name="loadOnStartup">0</attribute>
@@ -123,15 +124,15 @@
         <attribute name="servletMappings">*.jsp,*.jspf,*.jspx,*.xsp</attribute>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=EJB,config=org/apache/geronimo/RuntimeDeployer" class="org.openejb.deployment.OpenEJBModuleBuilder">
+    <gbean namePart="EJBBuilder" type="ModuleBuilder" class="org.openejb.deployment.OpenEJBModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
 <!--        <reference name="SkeletonGenerator">openejb.CORBA:type=SkeletonGenerator,vendor=OpenORB</reference>-->
-        <reference name="Repository">*:role=Repository,*</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ClientEJBReferenceBuilder,config=org/apache/geronimo/RuntimeDeployer" class="org.openejb.deployment.RemoteEJBReferenceBuilder"/>
+    <gbean namePart="ClientEJBReferenceBuilder" class="org.openejb.deployment.RemoteEJBReferenceBuilder"/>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.connector.deployment.ConnectorModuleBuilder">
+    <gbean namePart="ConnectorBuilder" type="ModuleBuilder" class="org.apache.geronimo.connector.deployment.ConnectorModuleBuilder">
         <attribute name="defaultParentId">org/apache/geronimo/Server</attribute>
         <attribute name="defaultMaxSize" type="int">10</attribute>
         <attribute name="defaultMinSize" type="int">0</attribute>
@@ -139,19 +140,19 @@
         <attribute name="defaultIdleTimeoutMinutes" type="int">15</attribute>
         <attribute name="defaultXATransactionCaching" type="boolean">true</attribute>
         <attribute name="defaultXAThreadCaching" type="boolean">false</attribute>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
-    <gbean name="geronimo.deployer:role=ModuleBuilder,type=AppClient,config=org/apache/geronimo/RuntimeDeployer" class="org.apache.geronimo.client.builder.AppClientModuleBuilder">
+    <gbean namePart="AppClientBuilder" type="ModuleBuilder" class="org.apache.geronimo.client.builder.AppClientModuleBuilder">
         <attribute name="defaultClientParentId">org/apache/geronimo/Client</attribute>
         <attribute name="defaultServerParentId">org/apache/geronimo/Server</attribute>
-        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.client:type=TransactionContextManager</attribute>
-        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.client:type=ConnectionTracker</attribute>
-        <reference name="EJBReferenceBuilder">geronimo.deployer:role=ClientEJBReferenceBuilder,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="ConnectorModuleBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="ResourceReferenceBuilder">geronimo.deployer:role=ModuleBuilder,type=Connector,config=org/apache/geronimo/RuntimeDeployer</reference>
-        <reference name="Store">*:role=ConfigurationStore,type=Local</reference>
-        <reference name="Repository">*:role=Repository,*</reference>
+        <attribute name="transactionContextManagerObjectName" type="javax.management.ObjectName">geronimo.client:name=TransactionContextManager,*</attribute>
+        <attribute name="connectionTrackerObjectName" type="javax.management.ObjectName">geronimo.client:name=ConnectionTracker,*</attribute>
+        <reference name="EJBReferenceBuilder">geronimo.deployer:name=ClientEJBReferenceBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="ConnectorModuleBuilder">geronimo.deployer:name=ConnectorBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="ResourceReferenceBuilder">geronimo.deployer:name=ConnectorBuilder,J2EEModule=org/apache/geronimo/RuntimeDeployer,*</reference>
+        <reference name="Store">*:j2eeType=ConfigurationStore</reference>
+        <reference name="Repository">*:name=Repository,*</reference>
     </gbean>
 
 <!--    <gbean name="openejb.CORBA:type=Compiler,vendor=Ant" class="org.openejb.corba.compiler.AntCompiler"/>-->

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-secure-plan.xml	Mon Jan 10 11:01:13 2005
@@ -47,7 +47,7 @@
         class="org.apache.geronimo.security.realm.GenericSecurityRealm">
         <attribute name="realmName">demo-properties-realm</attribute>
         <attribute name="loginModuleConfiguration">
-            LoginModule.1.REQUIRED=geronimo.security:type=LoginModule,name=demo-properties-login
+            LoginModule.1.REQUIRED=geronimo.server:j2eeType=LoginModule,J2EEServer=geronimo,J2EEApplication=null,J2EEModule=org/apache/geronimo/Secure,name=demo-properties-login
         </attribute>
         <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
     </gbean>

Modified: geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/j2ee-server-plan.xml	Mon Jan 10 11:01:13 2005
@@ -101,48 +101,9 @@
         <uri>geronimo/jars/geronimo-client-${geronimo_version}.jar</uri>
     </dependency>
 
-    <!--jetty dependencies-->
-    <dependency>
-        <uri>jetty/jars/org.mortbay.jetty-${jetty_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>tomcat/jars/jasper-compiler-${jasper_version}.jar</uri>
-    </dependency>
-    <!--this is the eclipse compiler-->
-    <dependency>
-        <uri>tomcat/jars/jasper-compiler-jdt-${jasper_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>tomcat/jars/jasper-runtime-${jasper_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>commons-el/jars/commons-el-${commons_el_version}.jar</uri>
-    </dependency>
-
-
-    <!-- HTTP/SOAP with XFire -->
-    <dependency>
-        <uri>xfire/jars/xfire-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>xfire/jars/xfire-java-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>xfire/jars/xfire-jaxrpc-${xfire_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>wsdl4j/jars/wsdl4j-${wsdl4j_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>stax/jars/stax-${stax_version}.jar</uri>
-    </dependency>
-    <dependency>
-        <uri>stax/jars/stax-api-${stax_api_version}.jar</uri>
-    </dependency>
-
 
     <!-- Default security realm using properties files -->
-    <gbean name="geronimo.security:type=LoginModule,name=properties-login"
+    <gbean namePart="properties-login" type="LoginModule"
         class="org.apache.geronimo.security.jaas.LoginModuleGBean">
         <attribute name="loginModuleClass">org.apache.geronimo.security.realm.providers.PropertiesFileLoginModule</attribute>
         <attribute name="serverSide">true</attribute>
@@ -153,57 +114,57 @@
         <attribute name="loginDomainName" type="java.lang.String">geronimo-properties-realm</attribute>
     </gbean>
 
-    <gbean name="geronimo.security:type=SecurityRealm,name=geronimo-properties-realm"
+    <gbean namePart="geronimo-properties-realm" type="SecurityRealm"
         class="org.apache.geronimo.security.realm.GenericSecurityRealm">
         <attribute name="realmName">geronimo-properties-realm</attribute>
         <attribute name="loginModuleConfiguration">
-            LoginModule.1.REQUIRED=geronimo.security:type=LoginModule,name=properties-login
+            LoginModule.1.REQUIRED=geronimo.server:j2eeType=LoginModule,J2EEServer=geronimo,J2EEApplication=null,J2EEModule=org/apache/geronimo/Server,name=properties-login
         </attribute>
         <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
     </gbean>
 
-    <gbean name="geronimo.security:type=ConfigurationEntry,jaasId=JMX"
+    <gbean namePart="JMX" type="ConfigurationEntry"
         class="org.apache.geronimo.security.jaas.ServerRealmConfigurationEntry">
         <attribute name="applicationConfigName">JMX</attribute>
         <attribute name="realmName">geronimo-properties-realm</attribute>
     </gbean>
 
     <!-- Register GeronimoLoginConfiguration as the LoginConfiguration handler -->
-    <gbean name="geronimo.security:type=LoginConfiguration" class="org.apache.geronimo.security.jaas.GeronimoLoginConfiguration">
+    <gbean namePart="LoginConfiguration" class="org.apache.geronimo.security.jaas.GeronimoLoginConfiguration">
         <references name="Configurations">
-            <pattern>geronimo.security:type=SecurityRealm,*</pattern>
-            <pattern>geronimo.security:type=ConfigurationEntry,*</pattern>
+            <pattern>geronimo.server:j2eeType=SecurityRealm,*</pattern>
+            <pattern>geronimo.server:j2eeType=ConfigurationEntry,*</pattern>
         </references>
     </gbean>
 
-    <gbean name="geronimo.security:type=SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
+    <gbean namePart="SecurityService" class="org.apache.geronimo.security.SecurityServiceImpl">
         <attribute name="policyConfigurationFactory">org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory</attribute>
     </gbean>
 
-    <gbean name="geronimo.security:type=JaasLoginService" class="org.apache.geronimo.security.jaas.JaasLoginService">
-        <reference name="Realms">geronimo.security:type=SecurityRealm,*</reference>
+    <gbean namePart="JaasLoginService" class="org.apache.geronimo.security.jaas.JaasLoginService">
+        <reference name="Realms">geronimo.security:j2eeType=SecurityRealm,*</reference>
         <!--        <attribute name="reclaimPeriod" type="long">100000</attribute>-->
         <attribute name="algorithm">HmacSHA1</attribute>
         <attribute name="password">secret</attribute>
     </gbean>
 
-    <gbean name="geronimo.server:type=ThreadPool,name=DefaultThreadPool" class="org.apache.geronimo.pool.ThreadPool">
+    <gbean namePart="DefaultThreadPool" class="org.apache.geronimo.pool.ThreadPool">
         <attribute name="keepAliveTime">5000</attribute>
         <attribute name="poolSize">10</attribute>
         <attribute name="poolName">DefaultThreadPool</attribute>
     </gbean>
 
-    <gbean name="geronimo.server:type=ConnectionTracker" class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator">
+    <gbean namePart="ConnectionTracker" class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator">
     </gbean>
 
-    <gbean name="geronimo.server:J2EEServer=geronimo,j2eeType=JCAWorkManager,name=DefaultWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
+    <gbean namePart="DefaultWorkManager" type="JCAWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
         <attribute name="syncMaximumPoolSize">10</attribute>
         <attribute name="startMaximumPoolSize">10</attribute>
         <attribute name="scheduledMaximumPoolSize">10</attribute>
-        <reference name="TransactionContextManager">geronimo.server:type=TransactionContextManager</reference>
+        <reference name="TransactionContextManager">geronimo.server:name=TransactionContextManager,*</reference>
     </gbean>
 
-    <gbean name="geronimo.server:type=HOWLTransactionLog" class="org.apache.geronimo.transaction.log.HOWLLog">
+    <gbean namePart="HOWLTransactionLog" class="org.apache.geronimo.transaction.log.HOWLLog">
         <attribute name="bufferClassName">org.objectweb.howl.log.BlockLogBuffer</attribute>
         <attribute name="bufferSizeKBytes">32</attribute>
         <attribute name="checksumEnabled">true</attribute>
@@ -216,37 +177,38 @@
         <attribute name="maxLogFiles">2</attribute>
         <attribute name="minBuffers">4</attribute>
         <attribute name="threadsWaitingForceThreshold">-1</attribute>
-        <reference name="serverInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="serverInfo">geronimo.system:name=ServerInfo,*</reference>
     </gbean>
 
-    <gbean name="geronimo.server:type=TransactionManager" class="org.apache.geronimo.transaction.manager.TransactionManagerImpl">
-        <attribute name="defaultTransactionTimeoutSeconds">300</attribute>
-        <reference name="TransactionLog">geronimo.server:type=HOWLTransactionLog</reference>
+    <gbean namePart="TransactionManager" class="org.apache.geronimo.transaction.manager.TransactionManagerImpl">
+        <attribute name="defaultTransactionTimeoutSeconds">600</attribute>
+        <reference name="TransactionLog">geronimo.server:name=HOWLTransactionLog,*</reference>
         <references name="ResourceManagers">
             <pattern>geronimo.server:j2eeType=JCAManagedConnectionFactory,*</pattern>
             <pattern>geronimo.server:j2eeType=ActivationSpec,*</pattern>
         </references>
     </gbean>
 
-    <gbean name="geronimo.server:type=TransactionContextManager" class="org.apache.geronimo.transaction.context.TransactionContextManager">
-        <reference name="TransactionManager">geronimo.server:type=TransactionManager</reference>
-        <reference name="XidImporter">geronimo.server:type=TransactionManager</reference>
+    <gbean namePart="TransactionContextManager" class="org.apache.geronimo.transaction.context.TransactionContextManager">
+        <reference name="TransactionManager">geronimo.server:name=TransactionManager,*</reference>
+        <reference name="XidImporter">geronimo.server:name=TransactionManager,*</reference>
     </gbean>
 
 
     <!-- default WAR container using Jetty -->
-    <gbean name="geronimo.server:type=WebContainer,container=Jetty" class="org.apache.geronimo.jetty.JettyContainerImpl"/>
-    <gbean name="geronimo.server:type=RequestLog,container=Jetty" class="org.apache.geronimo.jetty.requestlog.NCSARequestLog">
-        <reference name="JettyContainer">geronimo.server:type=WebContainer,container=Jetty</reference>
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+    <gbean namePart="JettyWebContainer" class="org.apache.geronimo.jetty.JettyContainerImpl"/>
+
+    <gbean namePart="JettyRequestLog" class="org.apache.geronimo.jetty.requestlog.NCSARequestLog">
+        <reference name="JettyContainer">geronimo.server:name=JettyWebContainer,*</reference>
+        <reference name="ServerInfo">geronimo.system:name=ServerInfo,*</reference>
         <attribute name="filename">var/log/jetty_yyyy_mm_dd.log</attribute>
         <attribute name="logDateFormat">dd/MMM/yyyy:HH:mm:ss ZZZ</attribute>
         <attribute name="logTimeZone">GMT</attribute>
     </gbean>
 
-    <gbean name="geronimo.server:type=WebConnector,container=Jetty,port=8080" class="org.apache.geronimo.jetty.connector.HTTPConnector">
+    <gbean namePart="JettyWebConnector" class="org.apache.geronimo.jetty.connector.HTTPConnector">
         <attribute name="port">8080</attribute>
-        <reference name="JettyContainer">geronimo.server:type=WebContainer,container=Jetty</reference>
+        <reference name="JettyContainer">geronimo.server:name=JettyWebContainer,*</reference>
         <!--        <attribute name="MaxConnections" type="int">10</attribute>-->
         <!--        <attribute name="MaxIdleTime" type="int">10</attribute>-->
     </gbean>
@@ -275,6 +237,7 @@
         </references>
     </gbean>
 
+
     <!-- HTTP/SOAP Protocol -->
     <gbean name="openejb:type=NetworkService,name=HTTPSOAP" class="org.openejb.server.StandardServiceStackGBean">
         <attribute name="name">HTTPSOAP</attribute>
@@ -297,16 +260,15 @@
         <reference name="WSContainers">openejb:type=WSContainer,*</reference>
     </gbean>
 
-
     <!-- JSR77 Management Objects -->
     <gbean name="geronimo.server:j2eeType=J2EEDomain,name=geronimo.server" class="org.apache.geronimo.j2ee.management.impl.J2EEDomainImpl"/>
     <gbean name="geronimo.server:j2eeType=J2EEServer,name=geronimo" class="org.apache.geronimo.j2ee.management.impl.J2EEServerImpl">
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo</reference>
     </gbean>
     <gbean name="geronimo.server:j2eeType=JVM,J2EEServer=geronimo" class="org.apache.geronimo.j2ee.management.impl.JVMImpl"/>
 
     <!-- JMX Remoting -->
-    <gbean name="geronimo.server:role=JMXService,name=localhost" class="org.apache.geronimo.jmxremoting.JMXConnector">
+    <gbean namePart="localhost" type="JMXService" class="org.apache.geronimo.jmxremoting.JMXConnector">
         <attribute name="URL">service:jmx:rmi://localhost/jndi/rmi:/JMXConnector</attribute>
         <attribute name="applicationConfigName">JMX</attribute>
     </gbean>

Modified: geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/system-activemq-plan.xml	Mon Jan 10 11:01:13 2005
@@ -45,18 +45,18 @@
     -->
 
     <!-- message broker -->
-    <gbean name="geronimo.server:type=JMSServer,container=ActiveMQ" class="org.codehaus.activemq.gbean.ActiveMQContainerGBean">
-        <reference name="serverInfo">geronimo.system:role=ServerInfo</reference>
+    <gbean namePart="ActiveMQJMSServer" class="org.codehaus.activemq.gbean.ActiveMQContainerGBean">
+        <reference name="serverInfo">geronimo.system:name=ServerInfo</reference>
         <attribute name="brokerName" type="java.lang.String">possibly-unique-broker</attribute>
         <attribute name="dataDirectory" type="java.lang.String">var/activemq</attribute>    
     </gbean>
-    <gbean name='geronimo.server:type=JMSConnector,container=ActiveMQ,url="tcp://localhost:61616"' class="org.codehaus.activemq.gbean.ActiveMQConnectorGBean">
+    <gbean namePart='"tcp://localhost:61616"' type="JMSConnector" class="org.codehaus.activemq.gbean.ActiveMQConnectorGBean">
         <attribute name="Url" type="java.lang.String">tcp://localhost:61616</attribute>
-        <reference name="ActiveMQContainer">geronimo.server:type=JMSServer,container=ActiveMQ</reference>
+        <reference name="ActiveMQContainer">geronimo.server:name=ActiveMQJMSServer,*</reference>
     </gbean>
-    <gbean name='geronimo.server:type=JMSConnector,container=ActiveMQ,url="vm://localhost"' class="org.codehaus.activemq.gbean.ActiveMQConnectorGBean">
+    <gbean namePart='"vm://localhost"' type="JMSConnector" class="org.codehaus.activemq.gbean.ActiveMQConnectorGBean">
         <attribute name="Url" type="java.lang.String">vm://localhost</attribute>
-        <reference name="ActiveMQContainer">geronimo.server:type=JMSServer,container=ActiveMQ</reference>
+        <reference name="ActiveMQContainer">geronimo.server:name=ActiveMQJMSServer,*</reference>
     </gbean>
   
 </configuration>

Modified: geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/system-database-plan.xml	Mon Jan 10 11:01:13 2005
@@ -58,12 +58,12 @@
         </outbound-resourceadapter>
     </resourceadapter>
 
-    <gbean name="geronimo.server:role=DerbySystem" class="org.apache.geronimo.derby.DerbySystemGBean">
-        <reference name="serverInfo">geronimo.system:role=ServerInfo</reference>
+    <gbean namePart="DerbySystem" class="org.apache.geronimo.derby.DerbySystemGBean">
+        <reference name="serverInfo">geronimo.system:name=ServerInfo,*</reference>
         <attribute name="derbySystemHome" type="java.lang.String">var/derby</attribute>
     </gbean>
-    <gbean name="geronimo.server:role=DerbyNetwork" class="org.apache.geronimo.derby.DerbyNetworkGBean">
-        <reference name="derbySystem">geronimo.server:role=DerbySystem</reference>
+    <gbean namePart="DerbyNetwork" class="org.apache.geronimo.derby.DerbyNetworkGBean">
+        <reference name="derbySystem">geronimo.server:name=DerbySystem,*</reference>
         <attribute name="host" type="java.lang.String">127.0.0.1</attribute>
         <attribute name="port" type="int">1527</attribute>
     </gbean>

Modified: geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/system-jms-plan.xml	Mon Jan 10 11:01:13 2005
@@ -28,7 +28,9 @@
             <config-property-setting name="ServerUrl">tcp://localhost:61616</config-property-setting>
             <config-property-setting name="UserName">geronimo</config-property-setting>
             <config-property-setting name="Password">geronimo</config-property-setting>
-            <workmanager-name>DefaultWorkManager</workmanager-name>
+            <workmanager>
+                <gbean-link>DefaultWorkManager</gbean-link>
+            </workmanager>
         </resourceadapter-instance>
         <outbound-resourceadapter>
             <connection-definition>

Modified: geronimo/trunk/modules/assembly/src/plan/system-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/assembly/src/plan/system-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/assembly/src/plan/system-plan.xml&r1=124821&p2=geronimo/trunk/modules/assembly/src/plan/system-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/assembly/src/plan/system-plan.xml	(original)
+++ geronimo/trunk/modules/assembly/src/plan/system-plan.xml	Mon Jan 10 11:01:13 2005
@@ -33,43 +33,43 @@
     >
 
     <!-- ServerInfo service -->
-    <gbean name="geronimo.system:role=ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo"/>
+    <gbean namePart="ServerInfo" class="org.apache.geronimo.system.serverinfo.ServerInfo"/>
 
     <!-- URLFactory service -->
-    <gbean name="geronimo.system:role=URLFactory" class="org.apache.geronimo.system.url.GeronimoURLFactory"/>
+    <gbean namePart="URLFactory" class="org.apache.geronimo.system.url.GeronimoURLFactory"/>
 
     <!-- Configuration Store service -->
-    <gbean name="geronimo.system:role=ConfigurationStore,type=Local" class="org.apache.geronimo.system.configuration.LocalConfigStore">
+    <gbean namePart="Local" type="ConfigurationStore" class="org.apache.geronimo.system.configuration.LocalConfigStore">
         <attribute name="root" type="java.net.URI">config-store</attribute>
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Persistent List of running Configurations service -->
-    <gbean name="geronimo.boot:role=PersistentConfigurationList" class="org.apache.geronimo.system.configuration.FileConfigurationList">
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+    <gbean namePart="PersistentConfigurationList" class="org.apache.geronimo.system.configuration.FileConfigurationList">
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
         <attribute name="configFile" type="java.lang.String">var/config/config.list</attribute>
     </gbean>
 
     <!-- Repository -->
-    <gbean name="geronimo.system:role=Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
+    <gbean namePart="Repository" class="org.apache.geronimo.system.repository.ReadOnlyRepository">
         <attribute name="root" type="java.net.URI">repository/</attribute>
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- Logging service -->
-    <gbean name="geronimo.system:role=Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
+    <gbean namePart="Logger" class="org.apache.geronimo.system.logging.log4j.Log4jService">
         <attribute name="configurationFile">var/log/server-log4j.properties</attribute>
         <attribute name="refreshPeriod">60</attribute>
-        <reference name="ServerInfo">geronimo.system:role=ServerInfo</reference>
+        <reference name="ServerInfo">geronimo.server:name=ServerInfo,*</reference>
     </gbean>
 
     <!-- RMI Registry -->
-    <gbean name="geronimo.server:role=RMIRegistry" class="org.apache.geronimo.system.rmi.RMIRegistryService">
+    <gbean namePart="RMIRegistry" class="org.apache.geronimo.system.rmi.RMIRegistryService">
         <attribute name="port" type="int">1099</attribute>
     </gbean>
 
     <!-- Naming properties -->
-    <gbean name="geronimo.server:role=NamingProperties" class="org.apache.geronimo.system.properties.NamingProperties">
+    <gbean namePart="NamingProperties" class="org.apache.geronimo.system.properties.NamingProperties">
         <attribute name="namingFactoryInitial" type="java.lang.String">com.sun.jndi.rmi.registry.RegistryContextFactory</attribute>
         <attribute name="namingFactoryUrlPkgs" type="java.lang.String">org.apache.geronimo.naming</attribute>
         <attribute name="namingProviderUrl" type="java.lang.String">rmi://localhost:1099</attribute>

Modified: geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java&r1=124821&p2=geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java	(original)
+++ geronimo/trunk/modules/client-builder/src/java/org/apache/geronimo/client/builder/AppClientModuleBuilder.java	Mon Jan 10 11:01:13 2005
@@ -373,7 +373,7 @@
                 // pop in all the gbeans declared in the geronimo app client file
                 if (geronimoAppClient != null) {
                     GbeanType[] gbeans = geronimoAppClient.getGbeanArray();
-                    ServiceConfigBuilder.addGBeans(gbeans, appClientClassLoader, appClientDeploymentContext);
+                    ServiceConfigBuilder.addGBeans(gbeans, appClientClassLoader, appClientDeploymentContext.getJ2eeContext(), appClientDeploymentContext);
                     //deploy the resource adapters specified in the geronimo-application.xml
                     Collection resourceModules = new ArrayList();
                     try {
@@ -430,17 +430,17 @@
                 appClientDeploymentContext.addGBean(jndiContextGBeanData);
 
                 // finally add the app client container
-                ObjectName appClienContainerName = ObjectName.getInstance("geronimo.client:type=ClientContainer");
-                GBeanData appClienContainerGBeanData = new GBeanData(appClienContainerName, AppClientContainer.GBEAN_INFO);
+                ObjectName appClientContainerName = ObjectName.getInstance("geronimo.client:type=ClientContainer");
+                GBeanData appClientContainerGBeanData = new GBeanData(appClientContainerName, AppClientContainer.GBEAN_INFO);
                 try {
-                    appClienContainerGBeanData.setAttribute("mainClassName", mainClasss);
-                    appClienContainerGBeanData.setAttribute("appClientModuleName", appClientModuleName);
-                    appClienContainerGBeanData.setReferencePattern("JNDIContext", new ObjectName("geronimo.client:type=StaticJndiContext"));
-                    appClienContainerGBeanData.setReferencePattern("TransactionContextManager", new ObjectName("geronimo.client:type=TransactionContextManager"));
+                    appClientContainerGBeanData.setAttribute("mainClassName", mainClasss);
+                    appClientContainerGBeanData.setAttribute("appClientModuleName", appClientModuleName);
+                    appClientContainerGBeanData.setReferencePattern("JNDIContext", jndiContextName);
+                    appClientContainerGBeanData.setReferencePattern("TransactionContextManager", transactionContextManagerObjectName);
                 } catch (Exception e) {
                     throw new DeploymentException("Unable to initialize AppClientModule GBean", e);
                 }
-                appClientDeploymentContext.addGBean(appClienContainerGBeanData);
+                appClientDeploymentContext.addGBean(appClientContainerGBeanData);
             } finally {
                 if (appClientDeploymentContext != null) {
                     try {

Modified: geronimo/trunk/modules/connector-builder/project.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/project.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/project.xml&r1=124821&p2=geronimo/trunk/modules/connector-builder/project.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/project.xml	(original)
+++ geronimo/trunk/modules/connector-builder/project.xml	Mon Jan 10 11:01:13 2005
@@ -71,34 +71,28 @@
 
         <dependency>
             <groupId>geronimo</groupId>
-            <artifactId>geronimo-naming-builder</artifactId>
-            <version>${pom.currentVersion}</version>
-        </dependency>
-    
-        <dependency>
-            <groupId>geronimo</groupId>
             <artifactId>geronimo-deployment</artifactId>
             <version>${pom.currentVersion}</version>
-        </dependency> 
+        </dependency>
 
-    <!-- todo: move this once DConfigBean home is selected -->
+        <!-- todo: move this once DConfigBean home is selected -->
         <dependency>
             <groupId>geronimo</groupId>
             <artifactId>geronimo-deploy-tool</artifactId>
             <version>${pom.currentVersion}</version>
-        </dependency> 
+        </dependency>
         <dependency>
             <groupId>geronimo</groupId>
             <artifactId>geronimo-test-ddbean</artifactId>
             <version>${pom.currentVersion}</version>
-        </dependency> 
+        </dependency>
 
-     <dependency>
+        <dependency>
             <groupId>geronimo</groupId>
             <artifactId>geronimo-connector</artifactId>
             <version>${pom.currentVersion}</version>
         </dependency>
- 
+
 
         <dependency>
             <groupId>geronimo</groupId>
@@ -106,7 +100,7 @@
             <version>${pom.currentVersion}</version>
         </dependency>
 
-      <dependency>
+        <dependency>
             <groupId>geronimo</groupId>
             <artifactId>geronimo-j2ee-builder</artifactId>
             <version>${pom.currentVersion}</version>
@@ -116,6 +110,15 @@
             <groupId>geronimo</groupId>
             <artifactId>geronimo-kernel</artifactId>
             <version>${pom.currentVersion}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo</groupId>
+            <artifactId>geronimo-naming-builder</artifactId>
+            <version>${pom.currentVersion}</version>
+            <properties>
+                <xmlbeans>true</xmlbeans>
+            </properties>
         </dependency>
 
         <dependency>

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java	(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/ConnectorModuleBuilder.java	Mon Jan 10 11:01:13 2005
@@ -76,6 +76,7 @@
 import org.apache.geronimo.kernel.repository.Repository;
 import org.apache.geronimo.naming.reference.GBeanGetResourceRefAddr;
 import org.apache.geronimo.naming.reference.RefAddrContentObjectFactory;
+import org.apache.geronimo.naming.deployment.ENCConfigBuilder;
 import org.apache.geronimo.schema.SchemaConversionUtils;
 import org.apache.geronimo.xbeans.geronimo.GerAdminobjectInstanceType;
 import org.apache.geronimo.xbeans.geronimo.GerAdminobjectType;
@@ -198,6 +199,8 @@
                 throw new DeploymentException("A connector module must be deployed using a plan");
             }
             gerConnector = (GerConnectorType) SchemaConversionUtils.convertToGeronimoServiceSchema(gerConnector);
+            //for workmanager
+            gerConnector = (GerConnectorType) SchemaConversionUtils.convertToGeronimoNamingSchema(gerConnector);
             SchemaConversionUtils.validateDD(gerConnector);
         } catch (XmlException e) {
             throw new DeploymentException(e);
@@ -378,10 +381,7 @@
         GerConnectorType geronimoConnector = (GerConnectorType) module.getVendorDD();
 
         GbeanType[] gbeans = geronimoConnector.getGbeanArray();
-        ServiceConfigBuilder.addGBeans(gbeans, cl, earContext);
-//        for (int i = 0; i < gbeans.length; i++) {
-//            GBeanHelper.addGbean(new RARGBeanAdapter(gbeans[i]), cl, earContext);
-//        }
+        ServiceConfigBuilder.addGBeans(gbeans, cl, moduleJ2eeContext, earContext);
 
         addConnectorGBeans(earContext, moduleJ2eeContext, resourceAdapterModuleName, (ConnectorType) specDD, geronimoConnector, cl);
 
@@ -404,12 +404,7 @@
                 setDynamicGBeanDataAttributes(resourceAdapterInstanceGBeanData, geronimoResourceAdapter.getResourceadapterInstance().getConfigPropertySettingArray(), cl);
 
                 // set the work manager name
-                ObjectName workManagerName = null;
-                try {
-                    workManagerName = NameFactory.getComponentName(null, null, geronimoResourceAdapter.getResourceadapterInstance().getWorkmanagerName().trim(), NameFactory.JCA_WORK_MANAGER, moduleJ2eeContext);
-                } catch (MalformedObjectNameException e) {
-                    throw new DeploymentException("Could not construct work manager object name", e);
-                }
+                ObjectName workManagerName = ENCConfigBuilder.getGBeanId(NameFactory.JCA_WORK_MANAGER, geronimoResourceAdapter.getResourceadapterInstance().getWorkmanager(), moduleJ2eeContext, earContext.getGBeanNames(), kernel);
                 resourceAdapterInstanceGBeanData.setReferencePattern("WorkManager", workManagerName);
 
                 String resourceAdapterName = geronimoResourceAdapter.getResourceadapterInstance().getResourceadapterName();

Modified: geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java	(original)
+++ geronimo/trunk/modules/connector-builder/src/java/org/apache/geronimo/connector/deployment/dconfigbean/ResourceAdapterDConfigBean.java	Mon Jan 10 11:01:13 2005
@@ -151,11 +151,11 @@
     }
 
     public String getWorkManager() {
-        return getResourceadapterInstance().getWorkmanagerName();
+        return getResourceadapterInstance().getWorkmanager().getGbeanLink();
     }
 
     public void setWorkManager(String workManager) {
-        getResourceadapterInstance().setWorkmanagerName(workManager);
+        getResourceadapterInstance().getWorkmanager().setGbeanLink(workManager);
     }
 
     public DConfigBean getDConfigBean(DDBean bean) throws ConfigurationException {

Modified: geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd	(original)
+++ geronimo/trunk/modules/connector-builder/src/schema/geronimo-connector_1_5.xsd	Mon Jan 10 11:01:13 2005
@@ -16,19 +16,21 @@
     limitations under the License.
 -->
 
-<xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+<xs:schema xmlns="http://www.w3.org/2001/XMLSchema"
     xmlns:ger="http://geronimo.apache.org/xml/ns/j2ee/connector"
+    xmlns:naming="http://geronimo.apache.org/xml/ns/naming"
     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment"
     targetNamespace="http://geronimo.apache.org/xml/ns/j2ee/connector"
-    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified"
     attributeFormDefault="unqualified"
     version="1.5">
 
-    <xsd:import namespace="http://geronimo.apache.org/xml/ns/deployment" schemaLocation="../../../service-builder/src/schema/geronimo-config.xsd"/>
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/naming" schemaLocation="../../../naming-builder/src/schema/geronimo-naming.xsd"/>
+    <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment" schemaLocation="../../../service-builder/src/schema/geronimo-config.xsd"/>
 
-    <xsd:annotation>
-        <xsd:documentation>
+    <xs:annotation>
+        <xs:documentation>
             <![CDATA[
             documents using this schema should start like:
 <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector"
@@ -36,134 +38,134 @@
 
           @(#)geronimo-connector_1_5.xsds
             ]]>
-        </xsd:documentation>
-    </xsd:annotation>
+        </xs:documentation>
+    </xs:annotation>
 
 
 
     <!-- **************************************************** -->
 
 
-    <xsd:element name="connector" type="ger:connectorType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:element name="connector" type="ger:connectorType">
+        <xs:annotation>
+            <xs:documentation>
 
                 The connector element is the root element of the deployment
                 descriptor for the resource adapter. This element includes
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:unique name="resourceadapter-instance-name-uniqueness">
-            <xsd:annotation>
-                <xsd:documentation>
+        <xs:unique name="resourceadapter-instance-name-uniqueness">
+            <xs:annotation>
+                <xs:documentation>
 
               The resourceadapter-instance element must have a unique name.
 
-                </xsd:documentation>
-            </xsd:annotation>
-            <xsd:selector xpath="ger:resourceadapter/ger:resourceadapter-instance"/>
-            <xsd:field xpath="ger:resourceadapter-name"/>
-        </xsd:unique>
-
-        <xsd:unique name="connectiondefinition-instance-name-uniqueness">
-            <xsd:annotation>
-                <xsd:documentation>
+                </xs:documentation>
+            </xs:annotation>
+            <xs:selector xpath="ger:resourceadapter/ger:resourceadapter-instance"/>
+            <xs:field xpath="ger:resourceadapter-name"/>
+        </xs:unique>
+
+        <xs:unique name="connectiondefinition-instance-name-uniqueness">
+            <xs:annotation>
+                <xs:documentation>
 
               The connectiondefinition-instance element must have a unique name.
 
-                </xsd:documentation>
-            </xsd:annotation>
-            <xsd:selector xpath="ger:resourceadapter/ger:outbound-resourceadapter/ger:connection-definition/ger:connectiondefinition-instance"/>
-            <xsd:field xpath="ger:name"/>
-        </xsd:unique>
-
-        <xsd:unique name="admin-object-instance-name-uniqueness">
-            <xsd:annotation>
-                <xsd:documentation>
+                </xs:documentation>
+            </xs:annotation>
+            <xs:selector xpath="ger:resourceadapter/ger:outbound-resourceadapter/ger:connection-definition/ger:connectiondefinition-instance"/>
+            <xs:field xpath="ger:name"/>
+        </xs:unique>
+
+        <xs:unique name="admin-object-instance-name-uniqueness">
+            <xs:annotation>
+                <xs:documentation>
 
               The admin-object-instance element must have a unique name.
 
-                </xsd:documentation>
-            </xsd:annotation>
-            <xsd:selector xpath="ger:adminobject/ger:adminobject-instance"/>
-            <xsd:field xpath="ger:message-destination-name"/>
-        </xsd:unique>
+                </xs:documentation>
+            </xs:annotation>
+            <xs:selector xpath="ger:adminobject/ger:adminobject-instance"/>
+            <xs:field xpath="ger:message-destination-name"/>
+        </xs:unique>
 
-    </xsd:element>
+    </xs:element>
 
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="adminobjectType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="adminobjectType">
+        <xs:annotation>
+            <xs:documentation>
                 reference back into standard dd
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:sequence>
-            <xsd:element name="adminobject-interface"
+        <xs:sequence>
+            <xs:element name="adminobject-interface"
                 type="ger:fully-qualified-classType">
-                <xsd:annotation>
-                    <xsd:documentation>
+                <xs:annotation>
+                    <xs:documentation>
                         believe it or not, there are no uniqueness constraints on admin object intf or class
-                    </xsd:documentation>
-                </xsd:annotation>
+                    </xs:documentation>
+                </xs:annotation>
 
-            </xsd:element>
-            <xsd:element name="adminobject-class"
+            </xs:element>
+            <xs:element name="adminobject-class"
                 type="ger:fully-qualified-classType">
-                <xsd:annotation>
-                    <xsd:documentation>reference back into the standard dd</xsd:documentation>
-                </xsd:annotation>
-            </xsd:element>
-            <xsd:element name="adminobject-instance"
+                <xs:annotation>
+                    <xs:documentation>reference back into the standard dd</xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="adminobject-instance"
                 type="ger:adminobject-instanceType"
                 minOccurs="0"
                 maxOccurs="unbounded"/>
-        </xsd:sequence>
-    </xsd:complexType>
+        </xs:sequence>
+    </xs:complexType>
 
-    <xsd:complexType name="adminobject-instanceType">
-        <xsd:sequence>
-            <xsd:element name="message-destination-name"
-                type="xsd:string">
-                <xsd:annotation>
-                    <xsd:documentation>unique name for admin object instance.  Used in object name of gbean for it. Matches message-destination-name in ejb-jar.xml assembly descriptor.
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:element>
-            <xsd:element name="config-property-setting"
+    <xs:complexType name="adminobject-instanceType">
+        <xs:sequence>
+            <xs:element name="message-destination-name"
+                type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>unique name for admin object instance.  Used in object name of gbean for it. Matches message-destination-name in ejb-jar.xml assembly descriptor.
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="config-property-setting"
                 type="ger:config-property-settingType"
                 minOccurs="0"
                 maxOccurs="unbounded"/>
-        </xsd:sequence>
-    </xsd:complexType>
+        </xs:sequence>
+    </xs:complexType>
 
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="config-property-settingType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="config-property-settingType">
+        <xs:annotation>
+            <xs:documentation>
 
                 The config-property-settingType contains a name-value pair for a
                 config-property or required-config-property
 
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:simpleContent>
-            <xsd:extension base="xsd:string">
-                <xsd:attribute name="name" type="xsd:string"/>
-            </xsd:extension>
-        </xsd:simpleContent>
-    </xsd:complexType>
+            </xs:documentation>
+        </xs:annotation>
+        <xs:simpleContent>
+            <xs:extension base="xs:string">
+                <xs:attribute name="name" type="xs:string"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="connection-definitionType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="connection-definitionType">
+        <xs:annotation>
+            <xs:documentation>
 
                 The connection-definitionType defines a set of connection
                 interfaces and classes pertaining to a particular connection
@@ -173,160 +175,160 @@
 
                 The name element uniquely identifies this instance
 
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:sequence>
-            <xsd:element name="connectionfactory-interface"
+        <xs:sequence>
+            <xs:element name="connectionfactory-interface"
                 type="ger:fully-qualified-classType">
-                <xsd:annotation>
-                    <xsd:documentation>
+                <xs:annotation>
+                    <xs:documentation>
                         connectionfactory-interface is unique in ra.xml so is used to index into ra.xml
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:element>
-            <xsd:element name="connectiondefinition-instance"
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
+            <xs:element name="connectiondefinition-instance"
                 type="ger:connectiondefinition-instanceType"
                 minOccurs="0"
                 maxOccurs="unbounded"/>
-        </xsd:sequence>
-    </xsd:complexType>
+        </xs:sequence>
+    </xs:complexType>
 
-    <xsd:complexType name="connectiondefinition-instanceType">
-        <xsd:sequence>
-            <xsd:element name="name"
-                type="xsd:string"/>
+    <xs:complexType name="connectiondefinition-instanceType">
+        <xs:sequence>
+            <xs:element name="name"
+                type="xs:string"/>
 
-            <xsd:element name="implemented-interface"
+            <xs:element name="implemented-interface"
                 type="ger:fully-qualified-classType"
                 minOccurs="0"
                 maxOccurs="unbounded">
-                <xsd:annotation>
-                    <xsd:documentation>
+                <xs:annotation>
+                    <xs:documentation>
                         Additional interfaces implemented by the connectionfactory, used by the application
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:element>
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
 
-            <xsd:element name="config-property-setting"
+            <xs:element name="config-property-setting"
                 type="ger:config-property-settingType"
                 minOccurs="0"
                 maxOccurs="unbounded"/>
-            <xsd:choice>
-                <xsd:element name="connectionmanager"
+            <xs:choice>
+                <xs:element name="connectionmanager"
                     type="ger:connectionmanagerType">
-                </xsd:element>
-                <xsd:element name="connectionmanager-ref" type="xsd:string"/>
-            </xsd:choice>
+                </xs:element>
+                <xs:element name="connectionmanager-ref" type="xs:string"/>
+            </xs:choice>
             <!-- will be bound in ger: context if present -->
-            <xsd:element name="global-jndi-name"
-                type="xsd:string"
+            <xs:element name="global-jndi-name"
+                type="xs:string"
                 minOccurs="0"/>
-            <xsd:element name="credential-interface"
+            <xs:element name="credential-interface"
                 type="ger:credential-interfaceType"
                 minOccurs="0"/>
 
-        </xsd:sequence>
-    </xsd:complexType>
+        </xs:sequence>
+    </xs:complexType>
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="connectionmanagerType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="connectionmanagerType">
+        <xs:annotation>
+            <xs:documentation>
                 The ConnectionManager configuration.
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:sequence>
+        <xs:sequence>
             <!--realm-bridge is an object name-->
-            <xsd:element name="realm-bridge"
-                type="xsd:string"
+            <xs:element name="realm-bridge"
+                type="xs:string"
                 minOccurs="0"/>
-            <xsd:choice minOccurs="0">
-                <xsd:element name="no-transaction"/>
-                <xsd:element name="local-transaction"/>
-                <xsd:element name="xa-transaction" type="ger:xatransaction-Type"/>
-                <xsd:element name="transaction-log"/>
-            </xsd:choice>
-            <xsd:choice>
-                <xsd:element name="no-pool"/>
-                <xsd:element name="single-pool" type="ger:singlepool-Type"/>
-                <xsd:element name="partitioned-pool" type="ger:partitionedpool-Type"/>
-            </xsd:choice>
-        </xsd:sequence>
-    </xsd:complexType>
-
-    <xsd:complexType name="xatransaction-Type">
-        <xsd:sequence>
-            <xsd:element name="transaction-caching" minOccurs="0"/>
-            <xsd:element name="thread-caching" minOccurs="0"/>
-        </xsd:sequence>
-    </xsd:complexType>
-
-    <xsd:complexType name="singlepool-Type">
-        <xsd:sequence>
-            <xsd:element name="max-size" type="xsd:int" minOccurs="0"/>
-            <xsd:element name="min-size" type="xsd:int" minOccurs="0"/>
-            <xsd:element name="blocking-timeout-milliseconds" type="xsd:int" minOccurs="0"/>
-            <xsd:element name="idle-timeout-minutes" type="xsd:int" minOccurs="0"/>
-            <xsd:choice>
-                <xsd:element name="match-one"/>
-                <xsd:element name="match-all"/>
-                <xsd:element name="select-one-assume-match"/>
-            </xsd:choice>
-        </xsd:sequence>
-    </xsd:complexType>
+            <xs:choice minOccurs="0">
+                <xs:element name="no-transaction"/>
+                <xs:element name="local-transaction"/>
+                <xs:element name="xa-transaction" type="ger:xatransaction-Type"/>
+                <xs:element name="transaction-log"/>
+            </xs:choice>
+            <xs:choice>
+                <xs:element name="no-pool"/>
+                <xs:element name="single-pool" type="ger:singlepool-Type"/>
+                <xs:element name="partitioned-pool" type="ger:partitionedpool-Type"/>
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="xatransaction-Type">
+        <xs:sequence>
+            <xs:element name="transaction-caching" minOccurs="0"/>
+            <xs:element name="thread-caching" minOccurs="0"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="singlepool-Type">
+        <xs:sequence>
+            <xs:element name="max-size" type="xs:int" minOccurs="0"/>
+            <xs:element name="min-size" type="xs:int" minOccurs="0"/>
+            <xs:element name="blocking-timeout-milliseconds" type="xs:int" minOccurs="0"/>
+            <xs:element name="idle-timeout-minutes" type="xs:int" minOccurs="0"/>
+            <xs:choice>
+                <xs:element name="match-one"/>
+                <xs:element name="match-all"/>
+                <xs:element name="select-one-assume-match"/>
+            </xs:choice>
+        </xs:sequence>
+    </xs:complexType>
 
-    <xsd:complexType name="partitionedpool-Type">
+    <xs:complexType name="partitionedpool-Type">
         <complexContent>
             <extension base="ger:singlepool-Type">
-                <xsd:sequence>
-                    <xsd:element name="partition-by-subject" minOccurs="0"/>
-                    <xsd:element name="partition-by-connectionrequestinfo" minOccurs="0"/>
-                </xsd:sequence>
+                <xs:sequence>
+                    <xs:element name="partition-by-subject" minOccurs="0"/>
+                    <xs:element name="partition-by-connectionrequestinfo" minOccurs="0"/>
+                </xs:sequence>
             </extension>
         </complexContent>
-    </xsd:complexType>
+    </xs:complexType>
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="connectorType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="connectorType">
+        <xs:annotation>
+            <xs:documentation>
                 The connectorType defines a resource adapter.
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:sequence>
-            <xsd:element ref="sys:dependency" minOccurs="0" maxOccurs="unbounded"/>
-<!--            <xsd:element name="dependency" type="sys:dependencyType" minOccurs="0" maxOccurs="unbounded"/>-->
-
-            <xsd:element name="resourceadapter" type="ger:resourceadapterType" maxOccurs="unbounded"/>
-
-            <xsd:element name="adminobject" type="ger:adminobjectType" minOccurs="0" maxOccurs="unbounded"/>
-
-            <xsd:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/>
-<!--            <xsd:element name="gbean" type="sys:gbeanType" minOccurs="0" maxOccurs="unbounded"/>-->
-        </xsd:sequence>
-
-        <xsd:attribute name="version" type="ger:versionType" use="required"/>
-        <xsd:attribute name="configId" type="xsd:string" use="required"/>
-        <xsd:attribute name="parentId" type="xsd:string" use="optional"/>
-    </xsd:complexType>
-
-    <xsd:simpleType name="versionType">
-        <xsd:restriction base="xsd:string">
-            <xsd:whiteSpace value="collapse"/>
-            <xsd:enumeration value="1.0"/>
-            <xsd:enumeration value="1.5"/>
-        </xsd:restriction>
-    </xsd:simpleType>
+        <xs:sequence>
+            <xs:element ref="sys:dependency" minOccurs="0" maxOccurs="unbounded"/>
+<!--            <xs:element name="dependency" type="sys:dependencyType" minOccurs="0" maxOccurs="unbounded"/>-->
+
+            <xs:element name="resourceadapter" type="ger:resourceadapterType" maxOccurs="unbounded"/>
+
+            <xs:element name="adminobject" type="ger:adminobjectType" minOccurs="0" maxOccurs="unbounded"/>
+
+            <xs:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/>
+<!--            <xs:element name="gbean" type="sys:gbeanType" minOccurs="0" maxOccurs="unbounded"/>-->
+        </xs:sequence>
+
+        <xs:attribute name="version" type="ger:versionType" use="required"/>
+        <xs:attribute name="configId" type="xs:string" use="required"/>
+        <xs:attribute name="parentId" type="xs:string" use="optional"/>
+    </xs:complexType>
+
+    <xs:simpleType name="versionType">
+        <xs:restriction base="xs:string">
+            <xs:whiteSpace value="collapse"/>
+            <xs:enumeration value="1.0"/>
+            <xs:enumeration value="1.5"/>
+        </xs:restriction>
+    </xs:simpleType>
     <!-- **************************************************** -->
 
-    <xsd:simpleType name="credential-interfaceType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:simpleType name="credential-interfaceType">
+        <xs:annotation>
+            <xs:documentation>
 
                 The credential-interfaceType specifies the
                 interface that the resource adapter implementation
@@ -343,23 +345,23 @@
                 org.ietf.jgss.GSSCredential
                 javax.resource.spi.security.GenericCredential
 
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:restriction base="ger:fully-qualified-classType">
-            <xsd:enumeration
+            </xs:documentation>
+        </xs:annotation>
+        <xs:restriction base="ger:fully-qualified-classType">
+            <xs:enumeration
                 value="javax.resource.spi.security.PasswordCredential"/>
-            <xsd:enumeration
+            <xs:enumeration
                 value="org.ietf.jgss.GSSCredential"/>
-            <xsd:enumeration
+            <xs:enumeration
                 value="javax.resource.spi.security.GenericCredential"/>
-        </xsd:restriction>
-    </xsd:simpleType>
+        </xs:restriction>
+    </xs:simpleType>
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="outbound-resourceadapterType">
-        <xsd:annotation>
-            <xsd:documentation>
+    <xs:complexType name="outbound-resourceadapterType">
+        <xs:annotation>
+            <xs:documentation>
 
                 The outbound-resourceadapterType specifies information about
                 an outbound resource adapter. The information includes fully
@@ -375,67 +377,66 @@
                 part of security contract. The application server ignores
                 the security part of the system contracts in this case.
 
-            </xsd:documentation>
-        </xsd:annotation>
+            </xs:documentation>
+        </xs:annotation>
 
-        <xsd:sequence>
-            <xsd:element name="connection-definition"
+        <xs:sequence>
+            <xs:element name="connection-definition"
                 type="ger:connection-definitionType"
                 maxOccurs="unbounded"/>
-        </xsd:sequence>
-    </xsd:complexType>
+        </xs:sequence>
+    </xs:complexType>
 
 
     <!-- **************************************************** -->
 
-    <xsd:complexType name="resourceadapterType">
+    <xs:complexType name="resourceadapterType">
 
-        <xsd:sequence>
-            <xsd:element name="resourceadapter-instance"
+        <xs:sequence>
+            <xs:element name="resourceadapter-instance"
                 type="ger:resourceadapter-instanceType"
                 minOccurs="0">
-            </xsd:element>
-            <xsd:element name="outbound-resourceadapter"
+            </xs:element>
+            <xs:element name="outbound-resourceadapter"
                 type="ger:outbound-resourceadapterType"
                 minOccurs="0">
-            </xsd:element>
-        </xsd:sequence>
-    </xsd:complexType>
-
-    <xsd:complexType name="resourceadapter-instanceType">
-        <xsd:annotation>
-            <xsd:documentation>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="resourceadapter-instanceType">
+        <xs:annotation>
+            <xs:documentation>
                 The resourceadapter instance info is put in a separate optional element
                 to provide easier more consistent support for 1.0 adapters.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:sequence>
-            <xsd:element name="resourceadapter-name" type="xsd:string"/>
-            <xsd:element name="config-property-setting"
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="resourceadapter-name" type="xs:string"/>
+            <xs:element name="config-property-setting"
                 type="ger:config-property-settingType"
                 minOccurs="0"
                 maxOccurs="unbounded"/>
-            <xsd:element name="workmanager-name"
-                type="xsd:string"/>
-        </xsd:sequence>
-    </xsd:complexType>
+            <xs:element ref="naming:workmanager"/>
+        </xs:sequence>
+    </xs:complexType>
 
 
 
     <!-- types borrowed from the j2ee schema.  We might want to centralize  these -->
 
-    <xsd:simpleType name="fully-qualified-classType">
-        <xsd:restriction base="xsd:string"/>
-    </xsd:simpleType>
-
-    <xsd:complexType name="descriptionType">
-        <xsd:simpleContent>
-            <xsd:extension base="xsd:string">
-                <xsd:attribute ref="xml:lang"/>
-            </xsd:extension>
-        </xsd:simpleContent>
-    </xsd:complexType>
+    <xs:simpleType name="fully-qualified-classType">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+
+    <xs:complexType name="descriptionType">
+        <xs:simpleContent>
+            <xs:extension base="xs:string">
+                <xs:attribute ref="xml:lang"/>
+            </xs:extension>
+        </xs:simpleContent>
+    </xs:complexType>
 
 
-</xsd:schema>
+</xs:schema>
 

Modified: geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml	(original)
+++ geronimo/trunk/modules/connector-builder/src/test-data/connector_1_5/geronimo-ra.xml	Mon Jan 10 11:01:13 2005
@@ -24,7 +24,9 @@
         <resourceadapter-instance>
             <resourceadapter-name>testRA</resourceadapter-name>
             <config-property-setting name="RAStringProperty">NewStringValue</config-property-setting>
-            <workmanager-name>DefaultWorkManager</workmanager-name>
+            <workmanager>
+                <gbean-link>DefaultWorkManager</gbean-link>
+            </workmanager>
         </resourceadapter-instance>
         <outbound-resourceadapter>
             <connection-definition>
@@ -105,7 +107,7 @@
     <gbean name="geronimo.connector:service=ConnectionTracker" class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator">
     </gbean>
 
-    <gbean name="test.domain:J2EEServer=testServer,j2eeType=JCAWorkManager,name=DefaultWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
+    <gbean namePart="DefaultWorkManager" type="JCAWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
         <attribute name="syncMaximumPoolSize" type="int">10</attribute>
         <attribute name="startMaximumPoolSize" type="int">10</attribute>
         <attribute name="scheduledMaximumPoolSize" type="int">10</attribute>

Modified: geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml	(original)
+++ geronimo/trunk/modules/connector-builder/src/test-data/data/external-application-plan.xml	Mon Jan 10 11:01:13 2005
@@ -93,7 +93,9 @@
                 <resourceadapter-instance>
                     <resourceadapter-name>testRA</resourceadapter-name>
                     <config-property-setting name="RAStringProperty">NewStringValue</config-property-setting>
-                    <workmanager-name>DefaultWorkManager</workmanager-name>
+                    <workmanager>
+                        <gbean-link>DefaultWorkManager</gbean-link>
+                    </workmanager>
                 </resourceadapter-instance>
                 <outbound-resourceadapter>
                     <connection-definition>
@@ -169,4 +171,25 @@
         </connector>
 
     </module>
+    
+    <gbean namePart="DefaultWorkManager" type="JCAWorkManager" class="org.apache.geronimo.connector.work.GeronimoWorkManager">
+        <attribute name="syncMaximumPoolSize" type="int">10</attribute>
+        <attribute name="startMaximumPoolSize" type="int">10</attribute>
+        <attribute name="scheduledMaximumPoolSize" type="int">10</attribute>
+        <reference name="TransactionContextManager">geronimo.server:type=TransactionContextManager</reference>
+    </gbean>
+
+    <gbean name="geronimo.server:type=TransactionManager" class="org.apache.geronimo.transaction.manager.TransactionManagerImpl">
+        <attribute name="defaultTransactionTimeoutSeconds" type="int">10</attribute>
+        <references name="ResourceManagers">
+            <pattern>geronimo.server:j2eeType=JCAManagedConnectionFactory,*</pattern>
+            <pattern>geronimo.server:j2eeType=MessageDrivenBean,*</pattern>
+        </references>
+    </gbean>
+
+    <gbean name="geronimo.server:type=TransactionContextManager" class="org.apache.geronimo.transaction.context.TransactionContextManager">
+        <reference name="TransactionManager">geronimo.server:type=TransactionManager</reference>
+        <reference name="XidImporter">geronimo.server:type=TransactionManager</reference>
+    </gbean>
+
 </application>

Modified: geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java&r1=124821&p2=geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java	(original)
+++ geronimo/trunk/modules/connector-builder/src/test/org/apache/geronimo/connector/deployment/RAR_1_5ConfigBuilderTest.java	Mon Jan 10 11:01:13 2005
@@ -86,6 +86,7 @@
         InputStream geronimoInputStream = geronimoDD.openStream();
         GerConnectorDocument connectorDocument = GerConnectorDocument.Factory.parse(geronimoInputStream);
         connectorDocument = (GerConnectorDocument)SchemaConversionUtils.convertToGeronimoServiceSchema(connectorDocument);
+        connectorDocument = (GerConnectorDocument)SchemaConversionUtils.convertToGeronimoNamingSchema(connectorDocument);
         assertEquals(1, connectorDocument.getConnector().getResourceadapterArray().length);
         if (!connectorDocument.validate(xmlOptions)) {
             fail(errors.toString());
@@ -181,7 +182,7 @@
             kernel = new Kernel("blah");
             kernel.boot();
 
-            ObjectName serverInfoObjectName = ObjectName.getInstance(j2eeContext.getJ2eeDomainName() + ":type=ServerInfo");
+            ObjectName serverInfoObjectName = ObjectName.getInstance(j2eeContext.getJ2eeDomainName() + ":name=ServerInfo");
             GBeanData serverInfoGBean = new GBeanData(serverInfoObjectName, ServerInfo.GBEAN_INFO);
             serverInfoGBean.setAttribute("baseDirectory", ".");
             kernel.loadGBean(serverInfoGBean, cl);

Added: geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/AbstractDeployCommand.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/AbstractDeployCommand.java?view=auto&rev=124822
==============================================================================
--- (empty file)
+++ geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/AbstractDeployCommand.java	Mon Jan 10 11:01:13 2005
@@ -0,0 +1,55 @@
+/**
+ *
+ * Copyright 2003-2004 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.geronimo.deployment.plugin.local;
+
+import java.util.Set;
+import java.util.Iterator;
+import javax.enterprise.deploy.shared.CommandType;
+import javax.management.ObjectName;
+
+import org.apache.geronimo.kernel.jmx.JMXUtil;
+import org.apache.geronimo.kernel.jmx.KernelMBean;
+
+/**
+ * @version $Rev:  $ $Date:  $
+ */
+public abstract class AbstractDeployCommand extends CommandSupport {
+    private final static String DEPLOYER_NAME = "*:name=Deployer,j2eeType=Deployer,*";
+
+    protected final KernelMBean kernel;
+
+    public AbstractDeployCommand(CommandType command, KernelMBean kernel) {
+        super(command);
+        this.kernel = kernel;
+    }
+
+    protected ObjectName getDeployerName() {
+        Set deployers = kernel.listGBeans(JMXUtil.getObjectName(DEPLOYER_NAME));
+        if (deployers.isEmpty()) {
+            fail("No deployer present in kernel");
+            return null;
+        }
+        Iterator j = deployers.iterator();
+        ObjectName deployer = (ObjectName) j.next();
+        if (j.hasNext()) {
+            fail("More than one deployer found");
+            return null;
+        }
+        return deployer;
+
+    }
+}

Modified: geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java?view=diff&rev=124822&p1=geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java&r1=124821&p2=geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java	(original)
+++ geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/DistributeCommand.java	Mon Jan 10 11:01:13 2005
@@ -38,9 +38,8 @@
 /**
  * @version $Rev$ $Date$
  */
-public class DistributeCommand extends CommandSupport {
+public class DistributeCommand extends AbstractDeployCommand {
     private static final String[] DEPLOY_SIG = {File.class.getName(), File.class.getName()};
-    private final KernelMBean kernel;
     private final Target[] targetList;
     private final boolean spool;
     private File moduleArchive;
@@ -49,8 +48,7 @@
     private InputStream deploymentStream;
 
     public DistributeCommand(KernelMBean kernel, Target[] targetList, File moduleArchive, File deploymentPlan) {
-        super(CommandType.DISTRIBUTE);
-        this.kernel = kernel;
+        super(CommandType.DISTRIBUTE, kernel);
         this.targetList = targetList;
         this.moduleArchive = moduleArchive;
         this.deploymentPlan = deploymentPlan;
@@ -58,8 +56,7 @@
     }
 
     public DistributeCommand(KernelMBean kernel, Target[] targetList, InputStream moduleStream, InputStream deploymentStream) {
-        super(CommandType.DISTRIBUTE);
-        this.kernel = kernel;
+        super(CommandType.DISTRIBUTE, kernel);
         this.targetList = targetList;
         this.moduleArchive = null ;
         this.deploymentPlan = null;
@@ -80,15 +77,9 @@
                     copyTo(deploymentPlan, deploymentStream);
                 }
             }
-            Set deployers = kernel.listGBeans(new ObjectName("*:role=Deployer,*"));
-            if (deployers.isEmpty()) {
-                fail("No deployer present in kernel");
+            ObjectName deployer = getDeployerName();
+            if (deployer == null) {
                 return;
-            }
-            Iterator i = deployers.iterator();
-            ObjectName deployer = (ObjectName) i.next();
-            if (i.hasNext()) {
-                throw new UnsupportedOperationException("More than one deployer found");
             }
 
             Object[] args = {moduleArchive, deploymentPlan};

Modified: geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java?view=diff&rev=124822&p1=geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java&r1=124821&p2=geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java	(original)
+++ geronimo/trunk/modules/deploy-tool/src/java/org/apache/geronimo/deployment/plugin/local/RedeployCommand.java	Mon Jan 10 11:01:13 2005
@@ -18,8 +18,6 @@
 
 import java.io.File;
 import java.net.URI;
-import java.util.Iterator;
-import java.util.Set;
 import javax.enterprise.deploy.shared.CommandType;
 import javax.enterprise.deploy.spi.TargetModuleID;
 import javax.management.ObjectName;
@@ -27,39 +25,29 @@
 import org.apache.geronimo.deployment.plugin.TargetImpl;
 import org.apache.geronimo.deployment.plugin.TargetModuleIDImpl;
 import org.apache.geronimo.kernel.jmx.KernelMBean;
-import org.apache.geronimo.kernel.jmx.JMXUtil;
-import org.apache.geronimo.kernel.jmx.KernelMBean;
 
 /**
  * @version $Rev$ $Date$
  */
-public class RedeployCommand extends CommandSupport {
+public class RedeployCommand extends AbstractDeployCommand {
     private static final String[] DEPLOY_SIG = {File.class.getName(), File.class.getName()};
     private static final String[] UNINSTALL_SIG = {URI.class.getName()};
-    private final KernelMBean kernel;
     private final TargetModuleID[] modules;
     private final File moduleArchive;
     private final File deploymentPlan;
 
     public RedeployCommand(KernelMBean kernel, TargetModuleID modules[], File moduleArchive, File deploymentPlan) {
-        super(CommandType.START);
-        this.kernel = kernel;
+        super(CommandType.START, kernel);
         this.modules = modules;
         this.moduleArchive = moduleArchive;
         this.deploymentPlan = deploymentPlan;
     }
 
     public void run() {
-        Set deployers = kernel.listGBeans(JMXUtil.getObjectName("geronimo.deployment:role=Deployer,*"));
-        if (deployers.isEmpty()) {
-            fail("No deployer present in kernel");
+        ObjectName deployer = getDeployerName();
+        if (deployer == null) {
             return;
         }
-        Iterator j = deployers.iterator();
-        ObjectName deployer = (ObjectName) j.next();
-        if (j.hasNext()) {
-            throw new UnsupportedOperationException("More than one deployer found");
-        }
 
         try {
             for (int i = 0; i < modules.length; i++) {
@@ -67,7 +55,7 @@
 
                 URI configID = URI.create(module.getModuleID());
                 kernel.stopConfiguration(configID);
-                
+
                 TargetImpl target = (TargetImpl) module.getTarget();
                 ObjectName storeName = target.getObjectName();
                 kernel.invoke(storeName, "uninstall", new Object[]{configID}, UNINSTALL_SIG);

Modified: geronimo/trunk/modules/deployment/project.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/project.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/deployment/project.xml&r1=124821&p2=geronimo/trunk/modules/deployment/project.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/deployment/project.xml	(original)
+++ geronimo/trunk/modules/deployment/project.xml	Mon Jan 10 11:01:13 2005
@@ -72,6 +72,13 @@
         </dependency>
 
         <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib-full</artifactId>
+            <version>${cglib_version}</version>
+            <url>http://cglib.sf.net/</url>
+        </dependency>
+
+        <dependency>
             <groupId>commons-logging</groupId>
             <artifactId>commons-logging</artifactId>
             <version>${commons_logging_version}</version>

Modified: geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java?view=diff&rev=124822&p1=geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java&r1=124821&p2=geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java	(original)
+++ geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/deployment/DeploymentContext.java	Mon Jan 10 11:01:13 2005
@@ -189,6 +189,10 @@
         gbeans.put(gbean.getName(), gbean);
     }
 
+    public Set getGBeanNames() {
+        return Collections.unmodifiableSet(gbeans.keySet());
+    }
+
     public void addDependency(URI uri) {
         dependencies.add(uri);
     }
@@ -337,6 +341,12 @@
         addFile(getTargetFile(targetPath), new ByteArrayInputStream(source.getBytes()));
     }
 
+    public void addClass(URI location, String fqcn, byte[] bytes) throws IOException, URISyntaxException {
+        classPath.add(location);
+        String classFileName = fqcn.replace('.', '/') + ".class";
+        addFile(getTargetFile(new URI(location.toString() + "/" + classFileName)), new ByteArrayInputStream(bytes));
+    }
+
     private void addFile(File targetFile, ZipFile zipFile, ZipEntry zipEntry) throws IOException {
         if (zipEntry.isDirectory()) {
             targetFile.mkdirs();
@@ -462,7 +472,7 @@
                 }
             }
             config.setAttribute("gBeanState", Configuration.storeGBeans(gbeanArray));
-            config.setReferencePatterns("Repositories", Collections.singleton(new ObjectName("*:role=Repository,*")));
+            config.setReferencePatterns("Repositories", Collections.singleton(new ObjectName("*:name=Repository,*")));
             config.setAttribute("dependencies", new ArrayList(dependencies));
             config.setAttribute("classPath", new ArrayList(classPath));
         } catch (Exception e) {

Added: geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/deployment/DeploymentContextTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/deployment/DeploymentContextTest.java?view=auto&rev=124822
==============================================================================
--- (empty file)
+++ geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/deployment/DeploymentContextTest.java	Mon Jan 10 11:01:13 2005
@@ -0,0 +1,77 @@
+/**
+ *
+ * Copyright 2003-2004 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.geronimo.deployment;
+
+import java.io.File;
+import java.net.URI;
+import java.net.URLClassLoader;
+import java.net.URL;
+
+import javax.sql.DataSource;
+
+import org.apache.geronimo.kernel.config.ConfigurationModuleType;
+import net.sf.cglib.proxy.Enhancer;
+import net.sf.cglib.proxy.MethodInterceptor;
+import net.sf.cglib.core.DefaultGeneratorStrategy;
+import junit.framework.TestCase;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class DeploymentContextTest extends TestCase {
+    private byte[] classBytes;
+
+    public void testAddClass() throws Exception {
+        File basedir = File.createTempFile("car", "tmp");
+        basedir.delete();
+        basedir.mkdirs();
+        try {
+            basedir.deleteOnExit();
+            URI configID = new URI("test");
+            DeploymentContext context = new DeploymentContext(basedir, configID, ConfigurationModuleType.CAR, null, null);
+            Enhancer enhancer = new Enhancer();
+            enhancer.setInterfaces(new Class[]{DataSource.class});
+            enhancer.setCallbackType(MethodInterceptor.class);
+            enhancer.setStrategy(new DefaultGeneratorStrategy() {
+                public byte[] transform(byte[] b) {
+                    classBytes = b;
+                    return b;
+                }
+            });
+            enhancer.setClassLoader(new URLClassLoader(new URL[0], this.getClass().getClassLoader()));
+            Class type = enhancer.createClass();
+            URI location = new URI("cglib");
+            context.addClass(location, type.getName(), classBytes);
+            ClassLoader cl = context.getClassLoader(null);
+            Class loadedType = cl.loadClass(type.getName());
+            assertTrue(DataSource.class.isAssignableFrom(loadedType));
+            assertTrue(type != loadedType);
+        } finally {
+            recursiveDelete(basedir);
+        }
+    }
+
+    private void recursiveDelete(File file) {
+        if (file.isDirectory()) {
+            File[] files = file.listFiles();
+            for (int i = 0; i < files.length; i++) {
+                recursiveDelete(files[i]);
+            }
+        }
+        file.delete();
+    }
+}

Modified: geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java&r1=124821&p2=geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java	(original)
+++ geronimo/trunk/modules/j2ee-builder/src/java/org/apache/geronimo/j2ee/deployment/EARConfigBuilder.java	Mon Jan 10 11:01:13 2005
@@ -176,6 +176,8 @@
             // if we got one extract the validate it otherwise create a default one
             if (gerApplicationDoc != null) {
                 gerApplicationDoc = (GerApplicationDocument) SchemaConversionUtils.convertToGeronimoServiceSchema(gerApplicationDoc);
+                gerApplicationDoc = (GerApplicationDocument) SchemaConversionUtils.convertToGeronimoNamingSchema(gerApplicationDoc);
+                gerApplicationDoc = (GerApplicationDocument) SchemaConversionUtils.convertToGeronimoSecuritySchema(gerApplicationDoc);
                 SchemaConversionUtils.validateDD(gerApplicationDoc);
                 gerApplication = gerApplicationDoc.getApplication();
             } else {
@@ -325,7 +327,7 @@
             // add gbeans declared in the geronimo-application.xml
             if (geronimoApplication != null) {
                 GbeanType[] gbeans = geronimoApplication.getGbeanArray();
-                ServiceConfigBuilder.addGBeans(gbeans, cl, earContext);
+                ServiceConfigBuilder.addGBeans(gbeans, cl, earContext.getJ2eeContext(), earContext);
             }
 
             // Create the J2EEApplication managed object

Modified: geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java?view=diff&rev=124822&p1=geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java&r1=124821&p2=geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java	(original)
+++ geronimo/trunk/modules/j2ee-schema/src/java/org/apache/geronimo/schema/SchemaConversionUtils.java	Mon Jan 10 11:01:13 2005
@@ -324,6 +324,7 @@
                             || localName.equals("resource-ref")
                             || localName.equals("resource-env-ref")
                             || localName.equals("cmp-connection-factory")
+                            || localName.equals("workmanager")
                             || localName.equals("resource-adapter")) {
                         convertElementToSchema(cursor, end, GERONIMO_NAMING_NAMESPACE);
                     }

Modified: geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java?view=diff&rev=124822&p1=geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java&r1=124821&p2=geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java	(original)
+++ geronimo/trunk/modules/j2ee/src/java/org/apache/geronimo/j2ee/j2eeobjectnames/NameFactory.java	Mon Jan 10 11:01:13 2005
@@ -76,6 +76,7 @@
     public static final String WEB_FILTER = "WebFilter";
     public static final String WEB_FILTER_MAPPING = "WebFilterMapping";
     public static final String URL_PATTERN = "URLPattern";
+    public static final String GERONIMO_SERVICE = "GBean";
 
     public static ObjectName getDomainName(String j2eeDomainName, J2eeContext context) throws MalformedObjectNameException {
         Properties props = new Properties();
@@ -202,11 +203,16 @@
     }
 
     //for non-j2ee-deployable resources such as the transaction manager
-    public static ObjectName getComponentName(String j2eeDomainName, String j2eeServerName, String j2eeName, String j2eeType, J2eeContext context) throws MalformedObjectNameException {
+    public static ObjectName getComponentName(String j2eeDomainName, String j2eeServerName, String j2eeApplicationName, String j2eeModuleName, String j2eeName, String j2eeType, J2eeContext context) throws MalformedObjectNameException {
         Properties props = new Properties();
         props.put(J2EE_TYPE, context.getJ2eeType(j2eeType));
         props.put(J2EE_SERVER, context.getJ2eeServerName(j2eeServerName));
         props.put(J2EE_NAME, context.getJ2eeName(j2eeName));
+        props.put(J2EE_APPLICATION, context.getJ2eeApplicationName(j2eeApplicationName));
+        //TODO add module type
+        if (context.getJ2eeModuleName(j2eeModuleName) != null) {
+            props.put(J2EE_MODULE, context.getJ2eeModuleName(j2eeModuleName));
+        }
         return ObjectName.getInstance(context.getJ2eeDomainName(j2eeDomainName), props);
     }
 

Modified: geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java&r1=124821&p2=geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java	(original)
+++ geronimo/trunk/modules/jetty-builder/src/java/org/apache/geronimo/jetty/deployment/JettyModuleBuilder.java	Mon Jan 10 11:01:13 2005
@@ -351,7 +351,7 @@
         Map localSecurityRealms = new HashMap();
         if (jettyWebApp != null) {
             GbeanType[] gbeans = jettyWebApp.getGbeanArray();
-            Set added = ServiceConfigBuilder.addGBeans(gbeans, cl, earContext);
+            Set added = ServiceConfigBuilder.addGBeans(gbeans, cl, moduleJ2eeContext, earContext);
             for (Iterator iterator = added.iterator(); iterator.hasNext();) {
                 GBeanData gBeanData = (GBeanData) iterator.next();
                 String className = gBeanData.getGBeanInfo().getClassName();
@@ -374,10 +374,10 @@
         GBeanData webModuleData = new GBeanData(webModuleName, JettyWebAppContext.GBEAN_INFO);
         try {
             Set securityRoles = collectRoleNames(webApp);
-            if (jettyWebApp.isSetLoginDomainName()) {
-                String loginDomainName = jettyWebApp.getLoginDomainName().trim();
-                Security security = SecurityBuilder.buildSecurityConfig(Collections.singleton(loginDomainName),  jettyWebApp.getSecurity(), securityRoles, localSecurityRealms, kernel);
-                webModuleData.setAttribute("loginDomainName", loginDomainName);
+            if (jettyWebApp.isSetSecurityRealmName()) {
+                String securityRealmName = jettyWebApp.getSecurityRealmName().trim();
+                Security security = SecurityBuilder.buildSecurityConfig(Collections.singleton(securityRealmName),  jettyWebApp.getSecurity(), securityRoles, localSecurityRealms, kernel);
+                webModuleData.setAttribute("securityRealmName", securityRealmName);
                 webModuleData.setAttribute("securityConfig", security);
 
                 String policyContextID = webModuleName.getCanonicalName();

Modified: geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd?view=diff&rev=124822&p1=geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd&r1=124821&p2=geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd&r2=124822
==============================================================================
--- geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd	(original)
+++ geronimo/trunk/modules/jetty-builder/src/schema/geronimo-jetty.xsd	Mon Jan 10 11:01:13 2005
@@ -42,7 +42,7 @@
             <xs:element name="context-priority-classloader" type="xs:boolean"/>
 
             <xs:sequence minOccurs="0">
-                <xs:element name="login-domain-name" type="xs:string"/>
+                <xs:element name="security-realm-name" type="xs:string"/>
                 <xs:element ref="security:security"/>
             </xs:sequence>
 

Modified: geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml&r1=124821&p2=geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml	(original)
+++ geronimo/trunk/modules/jetty-builder/src/test-resources/plans/plan1.xml	Mon Jan 10 11:01:13 2005
@@ -3,7 +3,7 @@
     configId="goodservlet"
     parentId="org/apache/geronimo/DefaultDatabase">
     <context-priority-classloader>false</context-priority-classloader>
-    <login-domain-name>foo</login-domain-name>
+    <security-realm-name>foo</security-realm-name>
     <security/>
     <resource-ref>
         <ref-name>jdbc/DB1</ref-name>

Modified: geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java&r1=124821&p2=geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java	(original)
+++ geronimo/trunk/modules/jetty-builder/src/test/org/apache/geronimo/jetty/deployment/JettyModuleBuilderTest.java	Mon Jan 10 11:01:13 2005
@@ -177,8 +177,8 @@
         connectorName = NameFactory.getWebComponentName(null, null, null, null, "jettyConnector", "WebResource", moduleContext);
         webModuleName = NameFactory.getWebComponentName(null, null, null, null, NameFactory.WEB_MODULE, "WebResource", moduleContext);
 
-        tmName = NameFactory.getComponentName(null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
-        tcmName = NameFactory.getComponentName(null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tmName = NameFactory.getComponentName(null, null, null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tcmName = NameFactory.getComponentName(null, null, null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
         ctcName = new ObjectName("geronimo.test:role=ConnectionTrackingCoordinator");
 
         kernel = new Kernel("test.kernel");

Modified: geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java&r1=124821&p2=geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java	(original)
+++ geronimo/trunk/modules/jetty/src/test/org/apache/geronimo/jetty/AbstractWebModuleTest.java	Mon Jan 10 11:01:13 2005
@@ -26,7 +26,6 @@
 import java.util.Properties;
 import java.util.Set;
 import javax.management.ObjectName;
-import javax.management.MalformedObjectNameException;
 
 import junit.framework.TestCase;
 import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator;
@@ -38,8 +37,8 @@
 import org.apache.geronimo.kernel.Kernel;
 import org.apache.geronimo.kernel.management.State;
 import org.apache.geronimo.security.SecurityServiceImpl;
-import org.apache.geronimo.security.deploy.Security;
 import org.apache.geronimo.security.deploy.Principal;
+import org.apache.geronimo.security.deploy.Security;
 import org.apache.geronimo.security.jaas.GeronimoLoginConfiguration;
 import org.apache.geronimo.security.jaas.JaasLoginService;
 import org.apache.geronimo.security.jaas.LoginModuleGBean;
@@ -164,22 +163,22 @@
         loginConfigurationName = new ObjectName("geronimo.security:type=LoginConfiguration");
         loginConfigurationGBean = new GBeanData(loginConfigurationName, GeronimoLoginConfiguration.getGBeanInfo());
         Set configurations = new HashSet();
-        configurations.add(new ObjectName("geronimo.security:type=SecurityRealm,*"));
-        configurations.add(new ObjectName("geronimo.security:type=ConfigurationEntry,*"));
+        configurations.add(new ObjectName("geronimo.server:j2eeType=SecurityRealm,*"));
+        configurations.add(new ObjectName("geronimo.server:j2eeType=ConfigurationEntry,*"));
         loginConfigurationGBean.setReferencePatterns("Configurations", configurations);
 
-        securityServiceName = new ObjectName("geronimo.security:type=SecurityService");
+        securityServiceName = new ObjectName("geronimo.server:j2eeType=SecurityService");
         securityServiceGBean = new GBeanData(securityServiceName, SecurityServiceImpl.GBEAN_INFO);
         securityServiceGBean.setAttribute("policyConfigurationFactory", "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory");
 
-        loginServiceName = new ObjectName("geronimo.security:type=JaasLoginService");
+        loginServiceName = JaasLoginService.OBJECT_NAME;
         loginServiceGBean = new GBeanData(loginServiceName, JaasLoginService.GBEAN_INFO);
-        loginServiceGBean.setReferencePattern("Realms", new ObjectName("geronimo.security:type=SecurityRealm,*"));
+        loginServiceGBean.setReferencePattern("Realms", new ObjectName("geronimo.server:j2eeType=SecurityRealm,*"));
 //        loginServiceGBean.setAttribute("reclaimPeriod", new Long(1000 * 1000));
         loginServiceGBean.setAttribute("algorithm", "HmacSHA1");
         loginServiceGBean.setAttribute("password", "secret");
 
-        serverInfoName = new ObjectName("geronimo.system:role=ServerInfo");
+        serverInfoName = new ObjectName("geronimo.system:name=ServerInfo");
         serverInfoGBean = new GBeanData(serverInfoName, ServerInfo.GBEAN_INFO);
         serverInfoGBean.setAttribute("baseDirectory", ".");
 
@@ -193,7 +192,7 @@
         propertiesLMGBean.setAttribute("options", options);
         propertiesLMGBean.setAttribute("loginDomainName", "demo-properties-realm");
 
-        propertiesRealmName = new ObjectName("geronimo.security:type=SecurityRealm,realm=demo-properties-realm");
+        propertiesRealmName = new ObjectName("geronimo.server:j2eeType=SecurityRealm,name=demo-properties-realm");
         propertiesRealmGBean = new GBeanData(propertiesRealmName, GenericSecurityRealm.GBEAN_INFO);
         propertiesRealmGBean.setReferencePattern("ServerInfo", serverInfoName);
         propertiesRealmGBean.setAttribute("realmName", "demo-properties-realm");
@@ -241,8 +240,8 @@
         connectorName = NameFactory.getWebComponentName(null, null, null, null, "jettyConnector", "WebResource", moduleContext);
         webModuleName = NameFactory.getWebComponentName(null, null, null, null, NameFactory.WEB_MODULE, "WebResource", moduleContext);
 
-        tmName = NameFactory.getComponentName(null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
-        tcmName = NameFactory.getComponentName(null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tmName = NameFactory.getComponentName(null, null, null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tcmName = NameFactory.getComponentName(null, null, null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
         ctcName = new ObjectName("geronimo.test:role=ConnectionTrackingCoordinator");
 
         kernel = new Kernel("test.kernel");

Modified: geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java?view=diff&rev=124822&p1=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java&r1=124821&p2=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java	(original)
+++ geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/gbean/runtime/GBeanSingleReference.java	Mon Jan 10 11:01:13 2005
@@ -18,6 +18,7 @@
 package org.apache.geronimo.gbean.runtime;
 
 import java.util.Set;
+import java.util.Iterator;
 import javax.management.ObjectName;
 
 import org.apache.commons.logging.Log;
@@ -66,10 +67,10 @@
         Set targets = getTargets();
         if (targets.size() == 0) {
             waitingForMe = true;
-            throw new WaitingException("No targets are running for " + getName() + " reference");
+            throw new WaitingException("No targets are running for " + getName() + " reference matching patterns " + getPatternsText());
         } else if (targets.size() > 1) {
             waitingForMe = true;
-            throw new WaitingException("More then one targets are running for " + getName() + " reference");
+            throw new WaitingException("More then one targets are running for " + getName() + " reference matching patterns " + getPatternsText());
         }
         waitingForMe = false;
 
@@ -83,6 +84,16 @@
         setProxy(getKernel().getProxyManager().createProxy(target, getReferenceType()));
         proxyTarget = target;
         dependencyManager.addDependency(objectName, target);
+    }
+
+    private String getPatternsText() {
+        StringBuffer buf = new StringBuffer();
+        Set patterns = getPatterns();
+        for (Iterator iterator = patterns.iterator(); iterator.hasNext();) {
+            ObjectName objectName = (ObjectName) iterator.next();
+            buf.append(objectName.getCanonicalName()).append(" ");
+        }
+        return buf.toString();
     }
 
     public synchronized void stop() {

Modified: geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java?view=diff&rev=124822&p1=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java&r1=124821&p2=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java	(original)
+++ geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/DependencyManager.java	Mon Jan 10 11:01:13 2005
@@ -54,7 +54,7 @@
     /**
      * Listenes for GBeans to unregister and removes all dependencies associated with the dependency
      */
-    private final LifecycleListener lifecycleListener = new DependecyManagerLifecycleListener();
+    private final LifecycleListener lifecycleListener = new DependencyManagerLifecycleListener();
 
     /**
      * A map from child names to a list of parents.
@@ -90,7 +90,6 @@
      *
      * @param child the dependent component
      * @param parent the component the child is depending on
-     * @jmx:managed-operation
      */
     public synchronized void addDependency(ObjectName child, ObjectName parent) {
         Set parents = (Set) childToParentMap.get(child);
@@ -113,7 +112,6 @@
      *
      * @param child the dependnet component
      * @param parent the component that the child wil no longer depend on
-     * @jmx:managed-operation
      */
     public synchronized void removeDependency(ObjectName child, ObjectName parent) {
         Set parents = (Set) childToParentMap.get(child);
@@ -131,7 +129,6 @@
      * Removes all dependencies for a child
      *
      * @param child the component that will no longer depend on anything
-     * @jmx:managed-operation
      */
     public synchronized void removeAllDependencies(ObjectName child) {
         Set parents = (Set) childToParentMap.remove(child);
@@ -153,7 +150,6 @@
      *
      * @param child the dependent component
      * @param parents the set of components the child is depending on
-     * @jmx:managed-operation
      */
     public synchronized void addDependencies(ObjectName child, Set parents) {
         Set existingParents = (Set) childToParentMap.get(child);
@@ -180,7 +176,6 @@
      *
      * @param child the dependent component
      * @return a collection containing all of the components the child depends on; will never be null
-     * @jmx:managed-operation
      */
     public synchronized Set getParents(ObjectName child) {
         Set parents = (Set) childToParentMap.get(child);
@@ -195,7 +190,6 @@
      *
      * @param parent the component the returned childen set depend on
      * @return a collection containing all of the components that depend on the parent; will never be null
-     * @jmx:managed-operation
      */
     public synchronized Set getChildren(ObjectName parent) {
         Set children = (Set) parentToChildMap.get(parent);
@@ -211,7 +205,6 @@
      *
      * @param objectName the name of the component placing the holds
      * @param holds a collection of object name patterns which should not start
-     * @jmx:managed-operation
      */
     public synchronized void addStartHolds(ObjectName objectName, Collection holds) {
         Collection currentHolds = (Collection) startHoldsMap.get(objectName);
@@ -228,7 +221,6 @@
      *
      * @param objectName the object name of the components owning the holds
      * @param holds a collection of the holds to remove
-     * @jmx:managed-operation
      */
     public synchronized void removeStartHolds(ObjectName objectName, Collection holds) {
         Collection currentHolds = (Collection) startHoldsMap.get(objectName);
@@ -241,7 +233,6 @@
      * Removes all of the holds owned by a component.
      *
      * @param objectName the object name of the component that will no longer have any holds
-     * @jmx:managed-operation
      */
     public synchronized void removeAllStartHolds(ObjectName objectName) {
         startHoldsMap.remove(objectName);
@@ -252,7 +243,6 @@
      *
      * @param objectName the mbean to check for blockers
      * @return the mbean blocking the specified mbean, or null if there are no blockers
-     * @jmx:managed-operation
      */
     public synchronized ObjectName checkBlocker(ObjectName objectName) {
         // check if objectName name is on one of the hold lists
@@ -269,7 +259,7 @@
         return null;
     }
 
-    private class DependecyManagerLifecycleListener extends LifecycleAdapter {
+    private class DependencyManagerLifecycleListener extends LifecycleAdapter {
         public void unloaded(ObjectName objectName) {
             synchronized (DependencyManager.this) {
                 removeAllDependencies(objectName);

Modified: geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java?view=diff&rev=124822&p1=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java&r1=124821&p2=geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java	(original)
+++ geronimo/trunk/modules/kernel/src/java/org/apache/geronimo/kernel/Kernel.java	Mon Jan 10 11:01:13 2005
@@ -108,7 +108,7 @@
     /**
      * Te pattern we use to find all the configuation stores registered with the kernel
      */
-    private static final ObjectName CONFIGURATION_STORE_PATTERN = JMXUtil.getObjectName("*:role=ConfigurationStore,*");
+    private static final ObjectName CONFIGURATION_STORE_PATTERN = JMXUtil.getObjectName("*:j2eeType=ConfigurationStore,*");
 
     /**
      * Name of this kernel

Modified: geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java&r1=124821&p2=geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java	(original)
+++ geronimo/trunk/modules/naming-builder/src/java/org/apache/geronimo/naming/deployment/ENCConfigBuilder.java	Mon Jan 10 11:01:13 2005
@@ -25,7 +25,9 @@
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
+import java.util.Iterator;
 import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
 import javax.naming.NamingException;
 import javax.naming.Reference;
 import javax.transaction.UserTransaction;
@@ -41,6 +43,7 @@
 import org.apache.geronimo.xbeans.geronimo.naming.GerEjbRefType;
 import org.apache.geronimo.xbeans.geronimo.naming.GerResourceEnvRefType;
 import org.apache.geronimo.xbeans.geronimo.naming.GerResourceRefType;
+import org.apache.geronimo.xbeans.geronimo.naming.GerGbeanLocatorType;
 import org.apache.geronimo.xbeans.j2ee.EjbLocalRefType;
 import org.apache.geronimo.xbeans.j2ee.EjbRefType;
 import org.apache.geronimo.xbeans.j2ee.EnvEntryType;
@@ -48,11 +51,75 @@
 import org.apache.geronimo.xbeans.j2ee.ResourceEnvRefType;
 import org.apache.geronimo.xbeans.j2ee.ResourceRefType;
 import org.apache.geronimo.xbeans.j2ee.XsdStringType;
+import org.apache.geronimo.kernel.Kernel;
 
 /**
  * @version $Rev$ $Date$
  */
 public class ENCConfigBuilder {
+
+    public static ObjectName getGBeanId(String j2eeType, GerGbeanLocatorType gerGbeanLocator, J2eeContext j2eeContext, Set localGBeans, Kernel kernel) throws DeploymentException {
+        ObjectName containerId = null;
+        if (gerGbeanLocator.isSetGbeanLink()) {
+            //exact match
+            String linkName = gerGbeanLocator.getGbeanLink().trim();
+            ObjectName exact = null;
+            try {
+                exact = NameFactory.getComponentName(null, null, null, null, linkName, j2eeType, j2eeContext);
+            } catch (MalformedObjectNameException e) {
+                throw new DeploymentException("Could not construct gbean name", e);
+            }
+            if (localGBeans.contains(exact)) {
+                containerId = exact;
+            } else {
+                Map keys = new HashMap();
+                keys.put(NameFactory.J2EE_TYPE, j2eeType);
+                keys.put(NameFactory.J2EE_NAME, linkName);
+                for (Iterator iterator = localGBeans.iterator(); iterator.hasNext();) {
+                    ObjectName objectName = (ObjectName) iterator.next();
+                    if (objectName.getKeyPropertyList().entrySet().containsAll(keys.entrySet())) {
+                        if (containerId != null) {
+                            throw new DeploymentException("two matches for gbean link!" + objectName);
+                        }
+                        containerId = objectName;
+                    }
+                }
+                if (containerId == null) {
+                    ObjectName query = null;
+                    try {
+                        query = NameFactory.getComponentRestrictedQueryName(null, null, linkName, j2eeType, j2eeContext);
+                    } catch (MalformedObjectNameException e) {
+                        throw new DeploymentException("Could not construct query for gbean name", e);
+                    }
+                    Set matches = kernel.listGBeans(query);
+                    if (matches.size() != 1) {
+                        throw new DeploymentException("No or ambiguous match for gbean link: " + linkName + " using query " + query + ", matches: " + matches);
+                    }
+                    containerId = (ObjectName)matches.iterator().next();
+                }
+            }
+        } else if (gerGbeanLocator.isSetTargetName()) {
+            try {
+                containerId = ObjectName.getInstance(getStringValue(gerGbeanLocator.getTargetName()));
+            } catch (MalformedObjectNameException e) {
+                throw new DeploymentException("Could not construct object name from specified string", e);
+            }
+        } else {
+            //construct name from components
+            try {
+                containerId = NameFactory.getComponentName(getStringValue(gerGbeanLocator.getDomain()),
+                        getStringValue(gerGbeanLocator.getServer()),
+                        getStringValue(gerGbeanLocator.getApplication()),
+                        getStringValue(gerGbeanLocator.getModule()),
+                        getStringValue(gerGbeanLocator.getName()),
+                        j2eeType,
+                        j2eeContext);
+            } catch (MalformedObjectNameException e) {
+                throw new DeploymentException("could not construct object name for jms resource", e);
+            }
+        }
+        return containerId;
+    }
 
     public static void addEnvEntries(EnvEntryType[] envEntries, ComponentContextBuilder builder) throws DeploymentException {
         for (int i = 0; i < envEntries.length; i++) {

Modified: geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd?view=diff&rev=124822&p1=geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd&r1=124821&p2=geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd&r2=124822
==============================================================================
--- geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd	(original)
+++ geronimo/trunk/modules/naming-builder/src/schema/geronimo-naming.xsd	Mon Jan 10 11:01:13 2005
@@ -28,8 +28,6 @@
         <xsd:documentation>
             <![CDATA[
             Partial schema containing common naming elements which can be included in other schemas.
-            This schema does not define a targetNamespace and so all definitions from this
-            schema instance will end up in the targetNamespace of the including document.
             ]]>
         </xsd:documentation>
     </xsd:annotation>
@@ -131,6 +129,19 @@
             <xsd:choice>
                 <xsd:group ref="gernaming:objectNameGroup"/>
                 <xsd:element name="message-destination-link" type="xsd:string"/>
+                <xsd:element name="target-name" type="xsd:string"/>
+            </xsd:choice>
+        </xsd:sequence>
+    </xsd:complexType>
+
+    <!--used by resource adapter -->
+    <xsd:element name="workmanager" type="gernaming:gbean-locatorType"/>
+
+    <xsd:complexType name="gbean-locatorType">
+        <xsd:sequence>
+            <xsd:choice>
+                <xsd:group ref="gernaming:objectNameGroup"/>
+                <xsd:element name="gbean-link" type="xsd:string"/>
                 <xsd:element name="target-name" type="xsd:string"/>
             </xsd:choice>
         </xsd:sequence>

Modified: geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java?view=diff&rev=124822&p1=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java&r1=124821&p2=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java	(original)
+++ geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/jaas/JaasLoginService.java	Mon Jan 10 11:01:13 2005
@@ -60,7 +60,7 @@
  * @version $Rev: 46019 $ $Date: 2004-09-14 05:56:06 -0400 (Tue, 14 Sep 2004) $
  */
 public class JaasLoginService implements GBeanLifecycle, JaasLoginServiceMBean {
-    public static final ObjectName OBJECT_NAME = JMXUtil.getObjectName("geronimo.security:type=JaasLoginService");
+    public static final ObjectName OBJECT_NAME = JMXUtil.getObjectName("geronimo.server:J2EEApplication=null,J2EEModule=org/apache/geronimo/Server,J2EEServer=geronimo,j2eeType=GBean,name=JaasLoginService");
     public static final Log log = LogFactory.getLog(JaasLoginService.class);
     private final static int DEFAULT_EXPIRED_LOGIN_SCAN_INTERVAL = 300000; // 5 mins
     private final static int DEFAULT_MAX_LOGIN_DURATION =  1000 * 3600 * 24; // 1 day

Modified: geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java?view=diff&rev=124822&p1=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java&r1=124821&p2=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java	(original)
+++ geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingClient.java	Mon Jan 10 11:01:13 2005
@@ -34,7 +34,7 @@
     static public JaasLoginServiceMBean create(String host, int port) throws IllegalArgumentException {
         URI target;
         try {
-            target = new URI("async", null, host, port, "/JMX", null, "geronimo.remoting:target=JaasLoginServiceRemotingServer");
+            target = new URI("async", null, host, port, "/JMX", null, JaasLoginServiceRemotingServer.REQUIRED_OBJECT_NAME.toString());
             return create(target);
         } catch (URISyntaxException e) {
             throw new IllegalArgumentException("Bad host or port.");

Modified: geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java?view=diff&rev=124822&p1=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java&r1=124821&p2=geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java	(original)
+++ geronimo/trunk/modules/security/src/java/org/apache/geronimo/security/remoting/jmx/JaasLoginServiceRemotingServer.java	Mon Jan 10 11:01:13 2005
@@ -21,6 +21,8 @@
 import java.net.URI;
 import java.net.URISyntaxException;
 
+import javax.management.ObjectName;
+
 import org.activeio.AcceptListener;
 import org.activeio.AsynchChannelServer;
 import org.activeio.Channel;
@@ -40,6 +42,7 @@
 import org.apache.geronimo.gbean.GBeanLifecycle;
 import org.apache.geronimo.proxy.ReflexiveInterceptor;
 import org.apache.geronimo.security.jaas.JaasLoginServiceMBean;
+import org.apache.geronimo.kernel.jmx.JMXUtil;
 
 
 /**
@@ -50,6 +53,9 @@
  * @version $Rev: 56022 $ $Date: 2004-10-30 01:16:18 -0400 (Sat, 30 Oct 2004) $
  */
 public class JaasLoginServiceRemotingServer implements GBeanLifecycle {
+
+    public static final ObjectName REQUIRED_OBJECT_NAME = JMXUtil.getObjectName("geronimo.remoting:target=JaasLoginServiceRemotingServer");
+    
     private static final Log log = LogFactory.getLog(JaasLoginServiceRemotingServer.class);
     private AsynchChannelServer server;
     private JaasLoginServiceMBean loginService;

Modified: geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java&r1=124821&p2=geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java	(original)
+++ geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/AbstractTest.java	Mon Jan 10 11:01:13 2005
@@ -34,6 +34,7 @@
 import org.apache.geronimo.gbean.jmx.GBeanMBean;
 import org.apache.geronimo.kernel.Kernel;
 import org.apache.geronimo.security.bridge.TestLoginModule;
+import org.apache.geronimo.security.jaas.JaasLoginService;
 
 
 /**
@@ -54,8 +55,8 @@
 
         // Create all the parts
 
-        gbean = new GBeanMBean("org.apache.geronimo.security.jaas.JaasLoginService");
-        loginService = new ObjectName("geronimo.security:type=JaasLoginService");
+        gbean = new GBeanMBean(JaasLoginService.class.getName());
+        loginService = JaasLoginService.OBJECT_NAME;
         gbean.setReferencePatterns("Realms", Collections.singleton(new ObjectName("geronimo.security:type=SecurityRealm,*")));
 //        gbean.setAttribute("reclaimPeriod", new Long(10 * 1000));  // todo check other tests to see if ok
         gbean.setAttribute("algorithm", "HmacSHA1");

Modified: geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java&r1=124821&p2=geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java	(original)
+++ geronimo/trunk/modules/security/src/test/org/apache/geronimo/security/jaas/ConfigurationEntryTest.java	Mon Jan 10 11:01:13 2005
@@ -140,8 +140,8 @@
         gbean.setReferencePatterns("Configurations", configurations);
         kernel.loadGBean(loginConfiguration, gbean);
 
-        gbean = new GBeanMBean("org.apache.geronimo.security.jaas.JaasLoginService");
-        loginService = new ObjectName("geronimo.security:type=JaasLoginService");
+        gbean = new GBeanMBean(JaasLoginService.class.getName());
+        loginService = JaasLoginService.OBJECT_NAME;
         gbean.setReferencePatterns("Realms", Collections.singleton(new ObjectName("geronimo.security:type=SecurityRealm,*")));
 //        gbean.setAttribute("reclaimPeriod", new Long(100));
         gbean.setAttribute("algorithm", "HmacSHA1");

Modified: geronimo/trunk/modules/service-builder/project.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/service-builder/project.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/service-builder/project.xml&r1=124821&p2=geronimo/trunk/modules/service-builder/project.xml&r2=124822
==============================================================================
--- geronimo/trunk/modules/service-builder/project.xml	(original)
+++ geronimo/trunk/modules/service-builder/project.xml	Mon Jan 10 11:01:13 2005
@@ -87,6 +87,12 @@
 
         <dependency>
             <groupId>geronimo</groupId>
+            <artifactId>geronimo-j2ee</artifactId>
+            <version>${pom.currentVersion}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo</groupId>
             <artifactId>geronimo-j2ee-schema</artifactId>
             <version>${pom.currentVersion}</version>
         </dependency>

Modified: geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java&r1=124821&p2=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java	(original)
+++ geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/GBeanBuilder.java	Mon Jan 10 11:01:13 2005
@@ -23,11 +23,11 @@
 import javax.management.MalformedObjectNameException;
 import javax.management.ObjectName;
 
-import org.apache.geronimo.common.propertyeditor.PropertyEditors;
 import org.apache.geronimo.common.DeploymentException;
+import org.apache.geronimo.common.propertyeditor.PropertyEditors;
+import org.apache.geronimo.gbean.GAttributeInfo;
 import org.apache.geronimo.gbean.GBeanData;
 import org.apache.geronimo.gbean.GBeanInfo;
-import org.apache.geronimo.gbean.GAttributeInfo;
 
 /**
  *
@@ -38,13 +38,7 @@
     private final GBeanData gbean;
     private final ClassLoader classLoader;
 
-    public GBeanBuilder(String name, ClassLoader classLoader, String className) throws DeploymentException {
-        ObjectName objectName;
-        try {
-            objectName = new ObjectName(name);
-        } catch (MalformedObjectNameException e) {
-            throw new DeploymentException("Invalid ObjectName: " + name, e);
-        }
+    public GBeanBuilder(ObjectName objectName, ClassLoader classLoader, String className) throws DeploymentException {
 
         this.classLoader = classLoader;
 

Modified: geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java?view=diff&rev=124822&p1=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java&r1=124821&p2=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java	(original)
+++ geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java	Mon Jan 10 11:01:13 2005
@@ -31,6 +31,7 @@
 import java.util.HashSet;
 import java.util.jar.JarFile;
 import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
 
 import org.apache.geronimo.common.DeploymentException;
 import org.apache.geronimo.deployment.ConfigurationBuilder;
@@ -49,6 +50,9 @@
 import org.apache.geronimo.kernel.Kernel;
 import org.apache.geronimo.kernel.config.ConfigurationModuleType;
 import org.apache.geronimo.kernel.repository.Repository;
+import org.apache.geronimo.j2ee.j2eeobjectnames.J2eeContext;
+import org.apache.geronimo.j2ee.j2eeobjectnames.J2eeContextImpl;
+import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory;
 import org.apache.xmlbeans.XmlException;
 
 /**
@@ -58,13 +62,18 @@
     private final URI defaultParentId;
     private final Repository repository;
     private final Kernel kernel;
+    private final String j2eeServerName;
+    private final String j2eeDomainName;
 
-    public ServiceConfigBuilder(URI defaultParentId, Repository repository) {
-        this(defaultParentId, repository, null);
+    public ServiceConfigBuilder(URI defaultParentId, Repository repository) throws MalformedObjectNameException {
+        //todo include the objectname as a constructor arg
+        this(defaultParentId, new ObjectName("geronimo.server:name=geronimo"), repository, null);
     }
 
-    public ServiceConfigBuilder(URI defaultParentId, Repository repository, Kernel kernel) {
+    public ServiceConfigBuilder(URI defaultParentId, ObjectName j2eeServer, Repository repository, Kernel kernel) {
         this.defaultParentId = defaultParentId;
+        j2eeServerName = j2eeServer.getKeyProperty("name");
+        j2eeDomainName = j2eeServer.getDomain();
         this.repository = repository;
         this.kernel = kernel;
     }
@@ -114,12 +123,14 @@
         } catch (MalformedObjectNameException e) {
             throw new DeploymentException(e);
         }
+
+        J2eeContext j2eeContext = new J2eeContextImpl(j2eeDomainName, j2eeServerName, NameFactory.NULL, configID.toString(), null, null);
         DependencyType[] includes = configType.getIncludeArray();
         addIncludes(context, includes, repository);
         addDependencies(context, configType.getDependencyArray(), repository);
         ClassLoader cl = context.getClassLoader(repository);
         GbeanType[] gbeans = configType.getGbeanArray();
-        addGBeans(gbeans, cl, context);
+        addGBeans(gbeans, cl, j2eeContext, context);
         context.close();
 
         return Collections.EMPTY_LIST;
@@ -181,18 +192,34 @@
     }
 
     //TODO returning set of added gbeans is a HACK used only by stuff needing to access security gbeans at deploy time!  REMOVE IT!!
-    public static Set addGBeans(GbeanType[] gbeans, ClassLoader cl, DeploymentContext context) throws DeploymentException {
+    public static Set addGBeans(GbeanType[] gbeans, ClassLoader cl, J2eeContext j2eeContext, DeploymentContext context) throws DeploymentException {
         Set result = new HashSet();
         for (int i = 0; i < gbeans.length; i++) {
-            GBeanData gBeanData = getGBeanData(gbeans[i], cl);
+            GBeanData gBeanData = getGBeanData(gbeans[i], j2eeContext, cl);
             context.addGBean(gBeanData);
             result.add(gBeanData);
         }
         return result;
     }
 
-    public static GBeanData getGBeanData(GbeanType gbean, ClassLoader cl) throws DeploymentException {
-        GBeanBuilder builder = new GBeanBuilder(gbean.getName(), cl, gbean.getClass1());
+    public static GBeanData getGBeanData(GbeanType gbean, J2eeContext j2eeContext, ClassLoader cl) throws DeploymentException {
+        ObjectName objectName;
+        if (gbean.isSetName()) {
+            try {
+                objectName = ObjectName.getInstance(gbean.getName());
+            } catch (MalformedObjectNameException e) {
+                throw new DeploymentException("Invalid ObjectName: " + gbean.getName(), e);
+            }
+        } else {
+            String namePart = gbean.getNamePart();
+            try {
+                String type = gbean.getType();
+                objectName = NameFactory.getComponentName(null, null, null, null, namePart, type == null ? NameFactory.GERONIMO_SERVICE : type, j2eeContext);
+            } catch (MalformedObjectNameException e) {
+                throw new DeploymentException("Invalid ObjectName: " + namePart, e);
+            }
+        }
+        GBeanBuilder builder = new GBeanBuilder(objectName, cl, gbean.getClass1());
 
         // set up attributes
         AttributeType[] attributeArray = gbean.getAttributeArray();
@@ -250,10 +277,11 @@
         infoFactory.addInterface(ConfigurationBuilder.class);
 
         infoFactory.addAttribute("defaultParentId", URI.class, true);
+        infoFactory.addAttribute("j2eeServer", ObjectName.class, true);
         infoFactory.addReference("Repository", Repository.class);
         infoFactory.addAttribute("kernel", Kernel.class, false);
 
-        infoFactory.setConstructor(new String[]{"defaultParentId", "Repository", "kernel"});
+        infoFactory.setConstructor(new String[]{"defaultParentId", "j2eeServer", "Repository", "kernel"});
 
         GBEAN_INFO = infoFactory.getBeanInfo();
     }

Modified: geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd?view=diff&rev=124822&p1=geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd&r1=124821&p2=geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd&r2=124822
==============================================================================
--- geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd	(original)
+++ geronimo/trunk/modules/service-builder/src/schema/geronimo-config.xsd	Mon Jan 10 11:01:13 2005
@@ -15,7 +15,7 @@
     See the License for the specific language governing permissions and
     limitations under the License.
 -->
-  
+
 <xs:schema
     targetNamespace="http://geronimo.apache.org/xml/ns/deployment"
     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment"
@@ -32,7 +32,7 @@
         </xs:documentation>
     </xs:annotation>
 
-<!--    <xs:include schemaLocation="geronimo-common.xsd"/>-->
+    <!--    <xs:include schemaLocation="geronimo-common.xsd"/>-->
 
     <xs:element name="configuration" type="sys:configurationType"/>
 
@@ -67,7 +67,9 @@
             <xs:element name="references" type="sys:referencesType"/>
         </xs:choice>
         <xs:attribute name="name" type="xs:string"/>
-        <xs:attribute name="class" type="xs:string"/>
+        <xs:attribute name="namePart" type="xs:string"/>
+        <xs:attribute name="type" type="xs:string" use="optional"/>
+        <xs:attribute name="class" type="xs:string" use="required"/>
     </xs:complexType>
 
     <xs:complexType name="attributeType">

Modified: geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java&r1=124821&p2=geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java	(original)
+++ geronimo/trunk/modules/system/src/test/org/apache/geronimo/system/configuration/LocalConfigStoreTest.java	Mon Jan 10 11:01:13 2005
@@ -133,7 +133,7 @@
             recursiveDelete(root);
             root.mkdir();
 
-            storeName = new ObjectName("geronimo.test:role=ConfigurationStore,name=LocalConfigStore");
+            storeName = new ObjectName("geronimo.test:j2eeType=ConfigurationStore,name=LocalConfigStore");
             GBeanData store = new GBeanData(storeName, LocalConfigStore.getGBeanInfo());
             store.setAttribute("root", root.toURI());
 

Modified: geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java?view=diff&rev=124822&p1=geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java&r1=124821&p2=geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java&r2=124822
==============================================================================
--- geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java	(original)
+++ geronimo/trunk/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java	Mon Jan 10 11:01:13 2005
@@ -161,7 +161,7 @@
         securityServiceGBean = new GBeanData(securityServiceName, SecurityServiceImpl.GBEAN_INFO);
         securityServiceGBean.setAttribute("policyConfigurationFactory", "org.apache.geronimo.security.jacc.GeronimoPolicyConfigurationFactory");
 
-        loginServiceName = new ObjectName("geronimo.security:type=JaasLoginService");
+        loginServiceName = JaasLoginService.OBJECT_NAME;
         loginServiceGBean = new GBeanData(loginServiceName, JaasLoginService.GBEAN_INFO);
         loginServiceGBean.setReferencePatterns("Realms", Collections.singleton(new ObjectName("geronimo.security:type=SecurityRealm,*")));
         // loginServiceGBean.setAttribute("reclaimPeriod", new Long(1000 *
@@ -224,8 +224,8 @@
         connectorName = NameFactory.getWebComponentName(null, null, null, null, "tomcatConnector", "WebResource", moduleContext);
         webModuleName = NameFactory.getWebComponentName(null, null, null, null, NameFactory.WEB_MODULE, "WebResource", moduleContext);
 
-        tmName = NameFactory.getComponentName(null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
-        tcmName = NameFactory.getComponentName(null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tmName = NameFactory.getComponentName(null, null, null, null, "TransactionManager", NameFactory.JTA_RESOURCE, moduleContext);
+        tcmName = NameFactory.getComponentName(null, null, null, null, "TransactionContextManager", NameFactory.JTA_RESOURCE, moduleContext);
         ctcName = new ObjectName("geronimo.test:role=ConnectionTrackingCoordinator");
 
         kernel = new Kernel("test.kernel");

Modified: geronimo/trunk/plugins/maven-geronimo-plugin/project.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/plugins/maven-geronimo-plugin/project.xml?view=diff&rev=124822&p1=geronimo/trunk/plugins/maven-geronimo-plugin/project.xml&r1=124821&p2=geronimo/trunk/plugins/maven-geronimo-plugin/project.xml&r2=124822
==============================================================================
--- geronimo/trunk/plugins/maven-geronimo-plugin/project.xml	(original)
+++ geronimo/trunk/plugins/maven-geronimo-plugin/project.xml	Mon Jan 10 11:01:13 2005
@@ -43,6 +43,12 @@
 
         <dependency>
             <groupId>geronimo</groupId>
+            <artifactId>geronimo-common</artifactId>
+            <version>${pom.currentVersion}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>geronimo</groupId>
             <artifactId>geronimo-kernel</artifactId>
             <version>${pom.currentVersion}</version>
         </dependency>

Modified: geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java
Url: http://svn.apache.org/viewcvs/geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java?view=diff&rev=124822&p1=geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java&r1=124821&p2=geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java&r2=124822
==============================================================================
--- geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java	(original)
+++ geronimo/trunk/plugins/maven-geronimo-plugin/src/java/org/apache/geronimo/deployment/mavenplugin/WaitForStarted.java	Mon Jan 10 11:01:13 2005
@@ -31,7 +31,7 @@
 
 public class WaitForStarted extends AbstractModuleCommand {
 
-    private int maxTries = 20;
+    private int maxTries = 40;
 
     private MBeanServerConnection mbServerConnection;
     private KernelMBean kernel;

Re: svn commit: r124822 - Includes capability to save enhanced classes in DeploymentContext

Posted by David Jencks <da...@yahoo.com>.
I accidentally committed these changes to allow you to save an enhanced  
class in the deployment context with the GERONIMO-450 changes.  You can  
see how to set up an Enhancer and save the class in the  
DeploymentContextTest.

thanks
david jencks

On Jan 10, 2005, at 11:01 AM, djencks@apache.org wrote:

> Author: djencks
> Date: Mon Jan 10 11:01:13 2005
> New Revision: 124822
>
> URL: http://svn.apache.org/viewcvs?view=rev&rev=124822
> Log:
> Partial implementation of GERONIMO-450. GBean names are (mostly)  
> constructed like jsr-77 names and xml config usually only needs to  
> specify namePart and optionally type
> Added:
<snip>
>     
> geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/ 
> deployment/DeploymentContextTest.java
> Modified:
<snip>
>    geronimo/trunk/modules/deployment/project.xml
>     
> geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/ 
> deployment/DeploymentContext.java

>
> Modified: geronimo/trunk/modules/deployment/project.xml
> Url:  
> http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/ 
> project.xml?view=diff&rev=124822&p1=geronimo/trunk/modules/deployment/ 
> project.xml&r1=124821&p2=geronimo/trunk/modules/deployment/ 
> project.xml&r2=124822
> ======================================================================= 
> =======
> --- geronimo/trunk/modules/deployment/project.xml	(original)
> +++ geronimo/trunk/modules/deployment/project.xml	Mon Jan 10 11:01:13  
> 2005
> @@ -72,6 +72,13 @@
>          </dependency>
>
>          <dependency>
> +            <groupId>cglib</groupId>
> +            <artifactId>cglib-full</artifactId>
> +            <version>${cglib_version}</version>
> +            <url>http://cglib.sf.net/</url>
> +        </dependency>
> +
> +        <dependency>
>              <groupId>commons-logging</groupId>
>              <artifactId>commons-logging</artifactId>
>              <version>${commons_logging_version}</version>
>
> Modified:  
> geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/ 
> deployment/DeploymentContext.java
> Url:  
> http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/src/ 
> java/org/apache/geronimo/deployment/DeploymentContext.java? 
> view=diff&rev=124822&p1=geronimo/trunk/modules/deployment/src/java/ 
> org/apache/geronimo/deployment/ 
> DeploymentContext.java&r1=124821&p2=geronimo/trunk/modules/deployment/ 
> src/java/org/apache/geronimo/deployment/ 
> DeploymentContext.java&r2=124822
> ======================================================================= 
> =======
> ---  
> geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/ 
> deployment/DeploymentContext.java	(original)
> +++  
> geronimo/trunk/modules/deployment/src/java/org/apache/geronimo/ 
> deployment/DeploymentContext.java	Mon Jan 10 11:01:13 2005
> @@ -189,6 +189,10 @@
>          gbeans.put(gbean.getName(), gbean);
>      }
>
> +    public Set getGBeanNames() {
> +        return Collections.unmodifiableSet(gbeans.keySet());
> +    }
> +
>      public void addDependency(URI uri) {
>          dependencies.add(uri);
>      }
> @@ -337,6 +341,12 @@
>          addFile(getTargetFile(targetPath), new  
> ByteArrayInputStream(source.getBytes()));
>      }
>
> +    public void addClass(URI location, String fqcn, byte[] bytes)  
> throws IOException, URISyntaxException {
> +        classPath.add(location);
> +        String classFileName = fqcn.replace('.', '/') + ".class";
> +        addFile(getTargetFile(new URI(location.toString() + "/" +  
> classFileName)), new ByteArrayInputStream(bytes));
> +    }
> +
>      private void addFile(File targetFile, ZipFile zipFile, ZipEntry  
> zipEntry) throws IOException {
>          if (zipEntry.isDirectory()) {
>              targetFile.mkdirs();
> @@ -462,7 +472,7 @@
>                  }
>              }
>              config.setAttribute("gBeanState",  
> Configuration.storeGBeans(gbeanArray));
> -            config.setReferencePatterns("Repositories",  
> Collections.singleton(new ObjectName("*:role=Repository,*")));
> +            config.setReferencePatterns("Repositories",  
> Collections.singleton(new ObjectName("*:name=Repository,*")));
>              config.setAttribute("dependencies", new  
> ArrayList(dependencies));
>              config.setAttribute("classPath", new  
> ArrayList(classPath));
>          } catch (Exception e) {
>
> Added:  
> geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/ 
> deployment/DeploymentContextTest.java
> Url:  
> http://svn.apache.org/viewcvs/geronimo/trunk/modules/deployment/src/ 
> test/org/apache/geronimo/deployment/DeploymentContextTest.java? 
> view=auto&rev=124822
> ======================================================================= 
> =======
> --- (empty file)
> +++  
> geronimo/trunk/modules/deployment/src/test/org/apache/geronimo/ 
> deployment/DeploymentContextTest.java	Mon Jan 10 11:01:13 2005
> @@ -0,0 +1,77 @@
> +/**
> + *
> + * Copyright 2003-2004 The Apache Software Foundation
> + *
> + *  Licensed under the Apache License, Version 2.0 (the "License");
> + *  you may not use this file except in compliance with the License.
> + *  You may obtain a copy of the License at
> + *
> + *     http://www.apache.org/licenses/LICENSE-2.0
> + *
> + *  Unless required by applicable law or agreed to in writing,  
> software
> + *  distributed under the License is distributed on an "AS IS" BASIS,
> + *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or  
> implied.
> + *  See the License for the specific language governing permissions  
> and
> + *  limitations under the License.
> + */
> +package org.apache.geronimo.deployment;
> +
> +import java.io.File;
> +import java.net.URI;
> +import java.net.URLClassLoader;
> +import java.net.URL;
> +
> +import javax.sql.DataSource;
> +
> +import org.apache.geronimo.kernel.config.ConfigurationModuleType;
> +import net.sf.cglib.proxy.Enhancer;
> +import net.sf.cglib.proxy.MethodInterceptor;
> +import net.sf.cglib.core.DefaultGeneratorStrategy;
> +import junit.framework.TestCase;
> +
> +/**
> + * @version $Rev$ $Date$
> + */
> +public class DeploymentContextTest extends TestCase {
> +    private byte[] classBytes;
> +
> +    public void testAddClass() throws Exception {
> +        File basedir = File.createTempFile("car", "tmp");
> +        basedir.delete();
> +        basedir.mkdirs();
> +        try {
> +            basedir.deleteOnExit();
> +            URI configID = new URI("test");
> +            DeploymentContext context = new  
> DeploymentContext(basedir, configID, ConfigurationModuleType.CAR,  
> null, null);
> +            Enhancer enhancer = new Enhancer();
> +            enhancer.setInterfaces(new Class[]{DataSource.class});
> +            enhancer.setCallbackType(MethodInterceptor.class);
> +            enhancer.setStrategy(new DefaultGeneratorStrategy() {
> +                public byte[] transform(byte[] b) {
> +                    classBytes = b;
> +                    return b;
> +                }
> +            });
> +            enhancer.setClassLoader(new URLClassLoader(new URL[0],  
> this.getClass().getClassLoader()));
> +            Class type = enhancer.createClass();
> +            URI location = new URI("cglib");
> +            context.addClass(location, type.getName(), classBytes);
> +            ClassLoader cl = context.getClassLoader(null);
> +            Class loadedType = cl.loadClass(type.getName());
> +            assertTrue(DataSource.class.isAssignableFrom(loadedType));
> +            assertTrue(type != loadedType);
> +        } finally {
> +            recursiveDelete(basedir);
> +        }
> +    }
> +
> +    private void recursiveDelete(File file) {
> +        if (file.isDirectory()) {
> +            File[] files = file.listFiles();
> +            for (int i = 0; i < files.length; i++) {
> +                recursiveDelete(files[i]);
> +            }
> +        }
> +        file.delete();
> +    }
> +}