[Jboss-cvs] JBossAS SVN: r56531 - in trunk: ejb3 ejb3/src/main/org/jboss/ejb3/metamodel ejb3/src/resources/test/bank/META-INF ejb3/src/test/org/jboss/ejb3/test/bank/unit server/src/main/org/jboss/metamodel/descriptor

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Sep 3 13:19:53 EDT 2006


Author: bdecoste
Date: 2006-09-03 13:19:49 -0400 (Sun, 03 Sep 2006)
New Revision: 56531

Modified:
   trunk/ejb3/build-test.xml
   trunk/ejb3/src/main/org/jboss/ejb3/metamodel/EjbJarDDObjectFactory.java
   trunk/ejb3/src/main/org/jboss/ejb3/metamodel/JBossDDObjectFactory.java
   trunk/ejb3/src/resources/test/bank/META-INF/ejb-jar.xml
   trunk/ejb3/src/resources/test/bank/META-INF/jboss.xml
   trunk/ejb3/src/test/org/jboss/ejb3/test/bank/unit/BankDeploymentDescriptorTestCase.java
   trunk/server/src/main/org/jboss/metamodel/descriptor/DDObjectFactory.java
Log:
use properties service for deployment descriptors

Modified: trunk/ejb3/build-test.xml
===================================================================
--- trunk/ejb3/build-test.xml	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/build-test.xml	2006-09-03 17:19:49 UTC (rev 56531)
@@ -1028,7 +1028,7 @@
          </fileset>
          <fileset dir="${resources}/test/bank">
             <include name="META-INF/*.xml"/>
-            <include name="*.xml"/>
+            <include name="bank-ejb3-interceptors-aop.xml"/>
             <include name="users.properties"/>
             <include name="roles.properties"/>
          </fileset>

Modified: trunk/ejb3/src/main/org/jboss/ejb3/metamodel/EjbJarDDObjectFactory.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/metamodel/EjbJarDDObjectFactory.java	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/src/main/org/jboss/ejb3/metamodel/EjbJarDDObjectFactory.java	2006-09-03 17:19:49 UTC (rev 56531)
@@ -24,7 +24,11 @@
 import java.io.IOException;
 import java.net.URL;
 
+import javax.management.ObjectName;
 import javax.persistence.PersistenceContextType;
+
+import org.jboss.ejb3.KernelAbstraction;
+import org.jboss.ejb3.KernelAbstractionFactory;
 import org.jboss.logging.Logger;
 import org.jboss.util.xml.JBossEntityResolver;
 import org.jboss.xb.binding.JBossXBException;
@@ -374,7 +378,7 @@
    {
       if (localName.equals("retain-if-exception"))
       {
-         dd.setRetainIfException(Boolean.parseBoolean(value));
+         dd.setRetainIfException(Boolean.parseBoolean(getValue(localName, value)));
       }
    }
 
@@ -1231,7 +1235,7 @@
    {
       if (localName.equals("display-name"))
       {
-         dd.setDisplayName(value);
+         dd.setDisplayName(getValue(localName, value));
       }
    }
 
@@ -1243,11 +1247,11 @@
    {
       if (localName.equals("activation-config-property-name"))
       {
-         property.setName(value);
+         property.setName(getValue(localName, value));
       }
       else if (localName.equals("activation-config-property-value"))
       {
-         property.setValue(value);
+         property.setValue(getValue(localName, value));
       }
    }
 
@@ -1259,32 +1263,32 @@
    {
       if (localName.equals("ejb-name"))
       {
-         ejb.setEjbName(value);
+         ejb.setEjbName(getValue(localName, value));
          return true;
       }
       else if (localName.equals("home"))
       {
-         ejb.setHome(value);
+         ejb.setHome(getValue(localName, value));
          return true;
       }
       else if (localName.equals("remote"))
       {
-         ejb.setRemote(value);
+         ejb.setRemote(getValue(localName, value));
          return true;
       }
       else if (localName.equals("local-home"))
       {
-         ejb.setLocalHome(value);
+         ejb.setLocalHome(getValue(localName, value));
          return true;
       }
       else if (localName.equals("local"))
       {
-         ejb.setLocal(value);
+         ejb.setLocal(getValue(localName, value));
          return true;
       }
       else if (localName.equals("ejb-class"))
       {
-         ejb.setEjbClass(value);
+         ejb.setEjbClass(getValue(localName, value));
          return true;
       }
 
@@ -1302,15 +1306,15 @@
       {
          if (localName.equals("acknowledge-mode"))
          {
-            ejb.setAcknowledgeMode(value);
+            ejb.setAcknowledgeMode(getValue(localName, value));
          }
          else if (localName.equals("transaction-type"))
          {
-            ejb.setTransactionType(value);
+            ejb.setTransactionType(getValue(localName, value));
          }
          else if (localName.equals("messaging-type"))
          {
-            ejb.setMessagingType(value);
+            ejb.setMessagingType(getValue(localName, value));
          }
          else if (localName.equals("message-destination-type"))
          {
@@ -1321,7 +1325,7 @@
                ejb.setMessageDrivenDestination(destination);
             }
 
-            destination.setDestinationType(value);
+            destination.setDestinationType(getValue(localName, value));
          }
       }
    }
@@ -1335,11 +1339,11 @@
    {
       if (localName.equals("destination-type"))
       {
-         destination.setDestinationType(value);
+         destination.setDestinationType(getValue(localName, value));
       }
       else if (localName.equals("subscription-durability"))
       {
-         destination.setSubscriptionDurability(value);
+         destination.setSubscriptionDurability(getValue(localName, value));
       }
    }
 
@@ -1354,11 +1358,11 @@
       {
          if (localName.equals("session-type"))
          {
-            ejb.setSessionType(value);
+            ejb.setSessionType(getValue(localName, value));
          }
          else if (localName.equals("transaction-type"))
          {
-            ejb.setTransactionManagementType(value);
+            ejb.setTransactionManagementType(getValue(localName, value));
          }
       }
    }
@@ -1372,11 +1376,11 @@
    {
       if (localName.equals("exception-class"))
       {
-         exception.setExceptionClass(value);
+         exception.setExceptionClass(getValue(localName, value));
       }
       else if (localName.equals("rollback"))
       {
-         exception.setRollback(Boolean.valueOf(value));
+         exception.setRollback(Boolean.valueOf(getValue(localName, value)));
       }
    }
 
@@ -1391,7 +1395,7 @@
       {
          if (localName.equals("persistence-type"))
          {
-            ejb.setPersistenceType(value);
+            ejb.setPersistenceType(getValue(localName, value));
          }
       }
    }
@@ -1413,7 +1417,7 @@
    {
       if (localName.equals("interceptor-class"))
       {
-         interceptor.setInterceptorClass(value);
+         interceptor.setInterceptorClass(getValue(localName, value));
       }
    }
 
@@ -1425,7 +1429,7 @@
    {
       if (localName.equals("ejb-relation-name"))
       {
-         relation.setEjbRelationName(value);
+         relation.setEjbRelationName(getValue(localName, value));
       }
    }
 
@@ -1438,11 +1442,11 @@
    {
       if (localName.equals("ejb-relationship-role-name"))
       {
-         role.setEjbRelationshipRoleName(value);
+         role.setEjbRelationshipRoleName(getValue(localName, value));
       }
       else if (localName.equals("multiplicity"))
       {
-         role.setMultiplicity(value);
+         role.setMultiplicity(getValue(localName, value));
       }
    }
 
@@ -1455,7 +1459,7 @@
    {
       if (localName.equals("ejb-name"))
       {
-         source.setEjbName(value);
+         source.setEjbName(getValue(localName, value));
       }
    }
 
@@ -1467,11 +1471,11 @@
    {
       if (localName.equals("cmr-field-name"))
       {
-         field.setCmrFieldName(value);
+         field.setCmrFieldName(getValue(localName, value));
       }
       else if (localName.equals("cmr-field-type"))
       {
-         field.setCmrFieldType(value);
+         field.setCmrFieldType(getValue(localName, value));
       }
    }
 
@@ -1483,7 +1487,7 @@
    {
       if (localName.equals("role-name"))
       {
-         role.setRoleName(value);
+         role.setRoleName(getValue(localName, value));
       }
    }
 
@@ -1496,7 +1500,7 @@
    {
       if (localName.equals("role-name"))
       {
-         permission.addRoleName(value);
+         permission.addRoleName(getValue(localName, value));
       }
       else if (localName.equals("unchecked"))
       {
@@ -1513,7 +1517,7 @@
    {
       if (localName.equals("trans-attribute"))
       {
-         transaction.setTransAttribute(value);
+         transaction.setTransAttribute(getValue(localName, value));
       }
    }
 
@@ -1525,19 +1529,19 @@
    {
       if (localName.equals("ejb-name"))
       {
-         method.setEjbName(value);
+         method.setEjbName(getValue(localName, value));
       }
       else if (localName.equals("method-name"))
       {
-         method.setMethodName(value);
+         method.setMethodName(getValue(localName, value));
       }
       else if (localName.equals("method-param"))
       {
-         method.addMethodParam(value);
+         method.addMethodParam(getValue(localName, value));
       }
       else if (localName.equals("lifecycle-callback-method"))
       {
-         method.setMethodName(value);
+         method.setMethodName(getValue(localName, value));
       }
    }
 
@@ -1549,7 +1553,7 @@
    {
       if (localName.equals("jndi-name"))
       {
-         inject.setJndiName(value);
+         inject.setJndiName(getValue(localName, value));
       }
    }
 
@@ -1558,19 +1562,19 @@
    {
       if (localName.equals("ejb-name"))
       {
-         binding.setEjbName(value);
+         binding.setEjbName(getValue(localName, value));
       }
       else if (localName.equals("interceptor-class"))
       {
-         binding.addInterceptorClass(value);
+         binding.addInterceptorClass(getValue(localName, value));
       }
       else if (localName.equals("method-name"))
       {
-         binding.setMethodName(value);
+         binding.setMethodName(getValue(localName, value));
       }
       else if (localName.equals("method-param"))
       {
-         binding.addMethodParam(value);
+         binding.addMethodParam(getValue(localName, value));
       }
       else if (localName.equals("exclude-default-interceptors"))
       {
@@ -1587,8 +1591,30 @@
    {
       if (localName.equals("interceptor-class"))
       {
-         order.addInterceptorClass(value);
+         order.addInterceptorClass(getValue(localName, value));
       }
    }
+   
+   protected String getValue(String name, String value)
+   {
+      if (value.startsWith("${") && value.endsWith("}"))
+      {
+         try
+         {
+            String propertyName = value.substring(2, value.length()-1);
+            ObjectName propertyServiceON = new ObjectName("jboss:type=Service,name=SystemProperties");
+            KernelAbstraction kernelAbstraction = KernelAbstractionFactory.getInstance();
+            String propertyValue = (String)kernelAbstraction.invoke(propertyServiceON, "get", new Object[]{propertyName}, new String[]{"java.lang.String"});
+            log.debug("Replaced ejb-jar.xml element " + name + " with value " + propertyValue);
+            return propertyValue;
+         }
+         catch (Exception e)
+         {
+            log.warn("Unable to look up property service for ejb-jar.xml element " + name + " with value " + value + ". Caused by " + e.getClass() + " " + e.getMessage());
+         }
+      }
+      
+      return value;
+   }
 
 }

Modified: trunk/ejb3/src/main/org/jboss/ejb3/metamodel/JBossDDObjectFactory.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/metamodel/JBossDDObjectFactory.java	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/src/main/org/jboss/ejb3/metamodel/JBossDDObjectFactory.java	2006-09-03 17:19:49 UTC (rev 56531)
@@ -24,6 +24,10 @@
 import java.io.IOException;
 import java.net.URL;
 
+import javax.management.ObjectName;
+
+import org.jboss.ejb3.KernelAbstraction;
+import org.jboss.ejb3.KernelAbstractionFactory;
 import org.jboss.logging.Logger;
 import org.jboss.util.xml.JBossEntityResolver;
 import org.jboss.xb.binding.JBossXBException;
@@ -721,11 +725,11 @@
    {
       if (localName.equals("annotation-class"))
       {
-         xmlAnnotation.setAnnotationClass(value);
+         xmlAnnotation.setAnnotationClass(getValue(localName, value));
       }
       else if (localName.equals("annotation-implementation-class"))
       {
-         xmlAnnotation.setAnnotationImplementationClass(value);
+         xmlAnnotation.setAnnotationImplementationClass(getValue(localName, value));
       }
    }
    
@@ -734,11 +738,11 @@
    {
       if (localName.equals("activation-config-property-name") || localName.equals("message-driven-config-property-name")  || localName.equals("property-name"))
       {
-         property.setName(value);
+         property.setName(getValue(localName, value));
       }
       else if (localName.equals("activation-config-property-value") || localName.equals("message-driven-config-property-value") || localName.equals("property-value"))
       {
-         property.setValue(value);
+         property.setValue(getValue(localName, value));
       }
    }
    
@@ -747,11 +751,11 @@
    {
       if (localName.equals("res-name"))
       {
-         manager.setResourceName(value);
+         manager.setResourceName(getValue(localName, value));
       }
       else if (localName.equals("res-jndi-name"))
       {
-         manager.setResourceJndiName(value);
+         manager.setResourceJndiName(getValue(localName, value));
       }
    }
    
@@ -760,11 +764,11 @@
    {
       if (localName.equals("message-destination-name"))
       {
-         destination.setMessageDestinationName(value);
+         destination.setMessageDestinationName(getValue(localName, value));
       }
       else if (localName.equals("jndi-name"))
       {
-         destination.setJndiName(value);
+         destination.setJndiName(getValue(localName, value));
       }
    }
    
@@ -777,55 +781,55 @@
       }
       else if (localName.equals("jndi-name"))
       {
-         ejbs.setJndiName(value);
+         ejbs.setJndiName(getValue(localName, value));
       }
       else if (localName.equals("local-jndi-name"))
       {
-         ejbs.setLocalJndiName(value);
+         ejbs.setLocalJndiName(getValue(localName, value));
       }
       else if (localName.equals("security-domain"))
       {
-         ejbs.setSecurityDomain(value);
+         ejbs.setSecurityDomain(getValue(localName, value));
       }
       else if (localName.equals("depends"))
       {
-         ejbs.addDependency(value);
+         ejbs.addDependency(getValue(localName, value));
       }
       else if (localName.equals("run-as-principal"))
       {
-         ejbs.setRunAsPrincipal(value);
+         ejbs.setRunAsPrincipal(getValue(localName, value));
       }
       else if (localName.equals("aop-domain-name"))
       {
-         ejbs.setAopDomainName(value);
+         ejbs.setAopDomainName(getValue(localName, value));
       }
       else if (localName.equals("resource-adapter-name"))
       {
-         ejbs.setResourceAdapterName(value);
+         ejbs.setResourceAdapterName(getValue(localName, value));
       }
       else if (localName.equals("destination-jndi-name"))
       {
-         ejbs.setDestinationJndiName(value);
+         ejbs.setDestinationJndiName(getValue(localName, value));
       }
       else if (localName.equals("mdb-user"))
       {
-         ejbs.setMdbUser(value);
+         ejbs.setMdbUser(getValue(localName, value));
       }
       else if (localName.equals("mdb-passwd"))
       {
-         ejbs.setMdbPassword(value);
+         ejbs.setMdbPassword(getValue(localName, value));
       }
       else if (localName.equals("mdb-subscription-id"))
       {
-         ejbs.setMdbSubscriptionId(value);
+         ejbs.setMdbSubscriptionId(getValue(localName, value));
       }
       else if (localName.equals("clustered"))
       {
-         ejbs.setClustered(value);
+         ejbs.setClustered(getValue(localName, value));
       }
       else if (localName.equals("concurrent"))
       {
-         ejbs.setConcurrent(value);
+         ejbs.setConcurrent(getValue(localName, value));
       }
    }
    
@@ -837,47 +841,47 @@
    {
       if (localName.equals("ejb-name"))
       {
-         service.setEjbName(value);
+         service.setEjbName(getValue(localName, value));
       }
       if (localName.equals("object-name"))
       {
-         service.setObjectName(value);
+         service.setObjectName(getValue(localName, value));
       }
       else if (localName.equals("ejb-class"))
       {
-         service.setEjbClass(value);
+         service.setEjbClass(getValue(localName, value));
       }
       else if (localName.equals("local"))
       {
-         service.setLocal(value);
+         service.setLocal(getValue(localName, value));
       }
       else if (localName.equals("remote"))
       {
-         service.setRemote(value);
+         service.setRemote(getValue(localName, value));
       }
       else if (localName.equals("management"))
       {
-         service.setManagement(value);
+         service.setManagement(getValue(localName, value));
       }
       else if (localName.equals("jndi-name"))
       {
-         service.setJndiName(value);
+         service.setJndiName(getValue(localName, value));
       }
       else if (localName.equals("local-jndi-name"))
       {
-         service.setLocalJndiName(value);
+         service.setLocalJndiName(getValue(localName, value));
       }
       else if (localName.equals("security-domain"))
       {
-         service.setSecurityDomain(value);
+         service.setSecurityDomain(getValue(localName, value));
       }
       else if (localName.equals("aop-domain-name"))
       {
-         service.setAopDomainName(value);
+         service.setAopDomainName(getValue(localName, value));
       }
       else if (localName.equals("depends"))
       {
-         service.addDependency(value);
+         service.addDependency(getValue(localName, value));
       }
    }
    
@@ -889,48 +893,48 @@
    {
       if (localName.equals("message-destination"))
       {
-         consumer.setDestination(value);
+         consumer.setDestination(getValue(localName, value));
       }
       else if (localName.equals("message-destination-type"))
       {
-         consumer.setDestinationType(value);
+         consumer.setDestinationType(getValue(localName, value));
       }
       else if (localName.equals("ejb-class"))
       {
-         consumer.setEjbClass(value);
-         consumer.setEjbName(value);
+         consumer.setEjbClass(getValue(localName, value));
+         consumer.setEjbName(getValue(localName, value));
       }
       else if (localName.equals("local"))
       {
-         consumer.setLocal(value);
+         consumer.setLocal(getValue(localName, value));
       }
       else if (localName.equals("remote"))
       {
-         consumer.setRemote(value);
+         consumer.setRemote(getValue(localName, value));
       }
       else if (localName.equals("jndi-name"))
       {
-         consumer.setJndiName(value);
+         consumer.setJndiName(getValue(localName, value));
       }
       else if (localName.equals("local-jndi-name"))
       {
-         consumer.setLocalJndiName(value);
+         consumer.setLocalJndiName(getValue(localName, value));
       }
       else if (localName.equals("security-domain"))
       {
-         consumer.setSecurityDomain(value);
+         consumer.setSecurityDomain(getValue(localName, value));
       }
       else if (localName.equals("run-as-principal"))
       {
-         consumer.setRunAsPrincipal(value);
+         consumer.setRunAsPrincipal(getValue(localName, value));
       }
       else if (localName.equals("aop-domain-name"))
       {
-         consumer.setAopDomainName(value);
+         consumer.setAopDomainName(getValue(localName, value));
       }
       else if (localName.equals("depends"))
       {
-         consumer.addDependency(value);
+         consumer.addDependency(getValue(localName, value));
       }
    }
    
@@ -942,19 +946,19 @@
    {
       if (localName.equals("jndi-name"))
       {
-         binding.setJndiName(value);
+         binding.setJndiName(getValue(localName, value));
       }
       else if (localName.equals("client-bind-url"))
       {
-         binding.setClientBindUrl(value);
+         binding.setClientBindUrl(getValue(localName, value));
       }
       else if (localName.equals("proxy-factory"))
       {
-         binding.setProxyFactory(value);
+         binding.setProxyFactory(getValue(localName, value));
       }
       else if (localName.equals("interceptor-stack"))
       {
-         binding.setInterceptorStack(value);
+         binding.setInterceptorStack(getValue(localName, value));
       }
    }
    
@@ -966,15 +970,15 @@
    {
       if (localName.equals("delivery"))
       {
-         properties.setDelivery(value);
+         properties.setDelivery(getValue(localName, value));
       }
       else if (localName.equals("class"))
       {
-         properties.setClassName(value);
+         properties.setClassName(getValue(localName, value));
       }
       else if (localName.equals("priority"))
       {
-         properties.setPriority(value);
+         properties.setPriority(getValue(localName, value));
       }
    }
 
@@ -986,11 +990,11 @@
    {
       if (localName.equals("load-balance-policy"))
       {
-         config.setLoadBalancePolicy(value);
+         config.setLoadBalancePolicy(getValue(localName, value));
       }
       else if (localName.equals("partition-name"))
       {
-         config.setPartition(value);
+         config.setPartition(getValue(localName, value));
       }
    }
    
@@ -1002,23 +1006,23 @@
    {
       if (localName.equals("cache-class"))
       {
-         config.setCacheClass(value);
+         config.setCacheClass(getValue(localName, value));
       }
       else if (localName.equals("cache-max-size"))
       {
-         config.setMaxSize(value);
+         config.setMaxSize(getValue(localName, value));
       }
       else if (localName.equals("idle-timeout-seconds"))
       {
-         config.setIdleTimeoutSeconds(value);
+         config.setIdleTimeoutSeconds(getValue(localName, value));
       }
       else if (localName.equals("cache-name"))
       {
-         config.setName(value);
+         config.setName(getValue(localName, value));
       }
       else if (localName.equals("persistence-manager"))
       {
-         config.setPersistenceManager(value);
+         config.setPersistenceManager(getValue(localName, value));
       }
    }
    
@@ -1030,15 +1034,15 @@
    {
       if (localName.equals("pool-class"))
       {
-         config.setPoolClass(value);
+         config.setPoolClass(getValue(localName, value));
       }
       else if (localName.equals("pool-max-size"))
       {
-         config.setMaxSize(value);
+         config.setMaxSize(getValue(localName, value));
       }
       else if (localName.equals("pool-timeout"))
       {
-         config.setTimeout(value);
+         config.setTimeout(getValue(localName, value));
       }
    }
    
@@ -1051,11 +1055,11 @@
    {
       if (localName.equals("method-name"))
       {
-         method.setMethodName(value);
+         method.setMethodName(getValue(localName, value));
       }
       else if (localName.equals("transaction-timeout"))
       {
-         method.setTransactionTimeout(value);
+         method.setTransactionTimeout(getValue(localName, value));
       }
    }
 
@@ -1067,11 +1071,11 @@
    {
       if (localName.equals("security-domain"))
       {
-         dd.setSecurityDomain(value);
+         dd.setSecurityDomain(getValue(localName, value));
       }
       else if (localName.equals("unauthenticated-principal"))
       {
-         dd.setUnauthenticatedPrincipal(value);
+         dd.setUnauthenticatedPrincipal(getValue(localName, value));
       }
    }
    
@@ -1083,12 +1087,34 @@
    {
       if (localName.equals("class"))
       {
-         producer.setClassName(value);
+         producer.setClassName(getValue(localName, value));
       }
       else if (localName.equals("connection-factory"))
       {
-         producer.setConnectionFactory(value);
+         producer.setConnectionFactory(getValue(localName, value));
       }
    }
+   
+   protected String getValue(String name, String value)
+   {
+      if (value.startsWith("${") && value.endsWith("}"))
+      {
+         try
+         {
+            String propertyName = value.substring(2, value.length()-1);
+            ObjectName propertyServiceON = new ObjectName("jboss:type=Service,name=SystemProperties");
+            KernelAbstraction kernelAbstraction = KernelAbstractionFactory.getInstance();
+            String propertyValue = (String)kernelAbstraction.invoke(propertyServiceON, "get", new Object[]{propertyName}, new String[]{"java.lang.String"});
+            log.debug("Replaced jboss.xml element " + name + " with value " + propertyValue);
+            return propertyValue;
+         }
+         catch (Exception e)
+         {
+            log.warn("Unable to look up property service for jboss.xml element " + name + " with value " + value + ". Caused by " + e.getClass() + " " + e.getMessage());
+         }
+      }
+      
+      return value;
+   }
 
 }

Modified: trunk/ejb3/src/resources/test/bank/META-INF/ejb-jar.xml
===================================================================
--- trunk/ejb3/src/resources/test/bank/META-INF/ejb-jar.xml	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/src/resources/test/bank/META-INF/ejb-jar.xml	2006-09-03 17:19:49 UTC (rev 56531)
@@ -66,7 +66,7 @@
             <res-type>javax.sql.DataSource</res-type>
             <res-auth>Container</res-auth>
             <res-sharing-scope>Shareable</res-sharing-scope>
-            <mapped-name>java:/DefaultDS</mapped-name>
+            <mapped-name>${test.datasource.jndi}</mapped-name>
             <injection-target>
                <injection-target-class>org.jboss.ejb3.test.bank.BankBean</injection-target-class>
                <injection-target-name>customerDb</injection-target-name>
@@ -84,7 +84,7 @@
             <res-type>javax.sql.DataSource</res-type>
             <res-auth>Container</res-auth>
             <res-sharing-scope>Shareable</res-sharing-scope>
-            <mapped-name>java:/DefaultDS</mapped-name>
+            <mapped-name>${test.datasource.jndi}</mapped-name>
             <injection-target>
                <injection-target-class>org.jboss.ejb3.test.bank.BankBean21</injection-target-class>
                <injection-target-name>customerDb</injection-target-name>

Modified: trunk/ejb3/src/resources/test/bank/META-INF/jboss.xml
===================================================================
--- trunk/ejb3/src/resources/test/bank/META-INF/jboss.xml	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/src/resources/test/bank/META-INF/jboss.xml	2006-09-03 17:19:49 UTC (rev 56531)
@@ -46,7 +46,7 @@
           </method-attributes>
          <jndi-ref>
             <jndi-ref-name>TellerTM</jndi-ref-name>
-            <mapped-name>java:/TransactionManager</mapped-name>
+            <mapped-name>${test.transactionmanager.jndi}</mapped-name>
             <injection-target>
                <injection-target-class>org.jboss.ejb3.test.bank.TellerBean</injection-target-class>
                <injection-target-name>tm</injection-target-name>

Modified: trunk/ejb3/src/test/org/jboss/ejb3/test/bank/unit/BankDeploymentDescriptorTestCase.java
===================================================================
--- trunk/ejb3/src/test/org/jboss/ejb3/test/bank/unit/BankDeploymentDescriptorTestCase.java	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/ejb3/src/test/org/jboss/ejb3/test/bank/unit/BankDeploymentDescriptorTestCase.java	2006-09-03 17:19:49 UTC (rev 56531)
@@ -23,7 +23,11 @@
 
 import javax.ejb.EJBAccessException;
 import javax.ejb.EJBException;
+import javax.management.ObjectName;
 import javax.naming.InitialContext;
+
+import org.jboss.ejb3.ClientKernelAbstraction;
+import org.jboss.ejb3.KernelAbstractionFactory;
 import org.jboss.ejb3.test.bank.Bank;
 import org.jboss.ejb3.test.bank.ProxyFactoryInterface;
 import org.jboss.ejb3.test.bank.Teller;
@@ -345,10 +349,29 @@
    protected void setUp() throws Exception
    {
    }
+   
+   protected void tearDown() throws Exception
+   {
+   }
 
    public static Test suite() throws Exception
    {
-   //   return new TestSuite(BankDeploymentDescriptorTestCase.class);
+      ClientKernelAbstraction kernel = KernelAbstractionFactory.getClientInstance();
+      ObjectName propertiesServiceON = new ObjectName("jboss:type=Service,name=SystemProperties");
+      kernel.invoke(
+            propertiesServiceON,
+            "set",
+            new Object[]{"test.datasource.jndi","java:/DefaultDS"},
+            new String[]{"java.lang.String", "java.lang.String"}
+      );
+      
+      kernel.invoke(
+            propertiesServiceON,
+            "set",
+            new Object[]{"test.transactionmanager.jndi","java:/TransactionManager"},
+            new String[]{"java.lang.String", "java.lang.String"}
+      );
+      
       return getDeploySetup(BankDeploymentDescriptorTestCase.class, "bank.jar");
    }
 

Modified: trunk/server/src/main/org/jboss/metamodel/descriptor/DDObjectFactory.java
===================================================================
--- trunk/server/src/main/org/jboss/metamodel/descriptor/DDObjectFactory.java	2006-09-03 16:09:23 UTC (rev 56530)
+++ trunk/server/src/main/org/jboss/metamodel/descriptor/DDObjectFactory.java	2006-09-03 17:19:49 UTC (rev 56531)
@@ -181,27 +181,27 @@
    {
       if (localName.equals("ejb-ref-name"))
       {
-         ref.setEjbRefName(value);
+         ref.setEjbRefName(getValue(localName, value));
       }
       else if (localName.equals("ejb-ref-type"))
       {
-         ref.setEjbRefType(value);
+         ref.setEjbRefType(getValue(localName, value));
       }
       else if (localName.equals("local-home"))
       {
-         ref.setLocalHome(value);
+         ref.setLocalHome(getValue(localName, value));
       }
       else if (localName.equals("local"))
       {
-         ref.setLocal(value);
+         ref.setLocal(getValue(localName, value));
       }
       else if (localName.equals("ejb-link"))
       {
-         ref.setEjbLink(value);
+         ref.setEjbLink(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("local-jndi-name") || localName.equals("jndi-name"))
       {
-         ref.setMappedName(value);
+         ref.setMappedName(getValue(localName, value));
       }
       else if (localName.equals("ignore-dependency"))
       {
@@ -214,27 +214,27 @@
    {
       if (localName.equals("ejb-ref-name"))
       {
-         ref.setEjbRefName(value);
+         ref.setEjbRefName(getValue(localName, value));
       }
       else if (localName.equals("ejb-ref-type"))
       {
-         ref.setEjbRefType(value);
+         ref.setEjbRefType(getValue(localName, value));
       }
       else if (localName.equals("home"))
       {
-         ref.setHome(value);
+         ref.setHome(getValue(localName, value));
       }
       else if (localName.equals("remote"))
       {
-         ref.setRemote(value);
+         ref.setRemote(getValue(localName, value));
       }
       else if (localName.equals("ejb-link"))
       {
-         ref.setEjbLink(value);
+         ref.setEjbLink(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("jndi-name"))
       {
-         ref.setMappedName(value);
+         ref.setMappedName(getValue(localName, value));
       }
       else if (localName.equals("ignore-dependency"))
       {
@@ -250,11 +250,11 @@
    {
       if (localName.equals("injection-target-class"))
       {
-         target.setTargetClass(value);
+         target.setTargetClass(getValue(localName, value));
       }
       else if (localName.equals("injection-target-name"))
       {
-         target.setTargetName(value);
+         target.setTargetName(getValue(localName, value));
       }
    }
 
@@ -266,27 +266,27 @@
    {
       if (localName.equals("description"))
       {
-         ref.setDescription(value);
+         ref.setDescription(getValue(localName, value));
       }
       else if (localName.equals("message-destination-ref-name"))
       {
-         ref.setMessageDestinationRefName(value);
+         ref.setMessageDestinationRefName(getValue(localName, value));
       }
       else if (localName.equals("message-destination-type"))
       {
-         ref.setMessageDestinationType(value);
+         ref.setMessageDestinationType(getValue(localName, value));
       }
       else if (localName.equals("message-destination-usage"))
       {
-         ref.setMessageDestinationUsage(value);
+         ref.setMessageDestinationUsage(getValue(localName, value));
       }
       else if (localName.equals("message-destination-link"))
       {
-         ref.setMessageDestinationLink(value);
+         ref.setMessageDestinationLink(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("jndi-name"))
       {
-         ref.setMappedName(value);
+         ref.setMappedName(getValue(localName, value));
       }
    }
 
@@ -295,19 +295,19 @@
    {
       if (localName.equals("description"))
       {
-         entry.setDescription(value);
+         entry.setDescription(getValue(localName, value));
       }
       else if (localName.equals("env-entry-name"))
       {
-         entry.setEnvEntryName(value);
+         entry.setEnvEntryName(getValue(localName, value));
       }
       else if (localName.equals("env-entry-type"))
       {
-         entry.setEnvEntryType(value);
+         entry.setEnvEntryType(getValue(localName, value));
       }
       else if (localName.equals("env-entry-value"))
       {
-         entry.setEnvEntryValue(value);
+         entry.setEnvEntryValue(getValue(localName, value));
       }
    }
 
@@ -317,24 +317,24 @@
       if (localName.equals("res-ref-name")
               || localName.equals("resource-env-ref-name"))
       {
-         envRef.setResRefName(value);
+         envRef.setResRefName(getValue(localName, value));
       }
       else if (localName.equals("res-type")
               || localName.equals("resource-env-ref-type"))
       {
-         envRef.setResType(value);
+         envRef.setResType(getValue(localName, value));
       }
       else if (localName.equals("res-auth"))
       {
-         envRef.setResAuth(value);
+         envRef.setResAuth(getValue(localName, value));
       }
       else if (localName.equals("res-sharing-scope"))
       {
-         envRef.setResSharingScope(value);
+         envRef.setResSharingScope(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("jndi-name"))
       {
-         envRef.setMappedName(value);
+         envRef.setMappedName(getValue(localName, value));
       }
    }
 
@@ -344,34 +344,34 @@
       if (localName.equals("res-ref-name")
               || localName.equals("resource-env-ref-name"))
       {
-         ref.setResRefName(value);
+         ref.setResRefName(getValue(localName, value));
       }
       else if (localName.equals("res-type")
               || localName.equals("resource-env-ref-type"))
       {
-         ref.setResType(value);
+         ref.setResType(getValue(localName, value));
       }
       else if (localName.equals("res-auth"))
       {
-         ref.setResAuth(value);
+         ref.setResAuth(getValue(localName, value));
       }
       else if (localName.equals("res-sharing-scope"))
       {
-         ref.setResSharingScope(value);
+         ref.setResSharingScope(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("jndi-name"))
       {
-         ref.setMappedName(value);
-         ref.setJndiName(value);
+         ref.setMappedName(getValue(localName, value));
+         ref.setJndiName(getValue(localName, value));
       }
       else if (localName.equals("res-url"))
       {
-         ref.setResUrl(value);
+         ref.setResUrl(getValue(localName, value));
       }
       else if (localName.equals("resource-name"))
       {
-         ref.setResourceName(value);
-         ref.setMappedName(value);
+         ref.setResourceName(getValue(localName, value));
+         ref.setMappedName(getValue(localName, value));
       }
    }
 
@@ -380,27 +380,27 @@
    {
       if (localName.equals("service-ref-name"))
       {
-         ref.setServiceRefName(value);
+         ref.setServiceRefName(getValue(localName, value));
       }
       else if (localName.equals("service-res-type"))
       {
-         ref.setResType(value);
+         ref.setResType(getValue(localName, value));
       }
       else if (localName.equals("service-interface"))
       {
-         ref.setServiceInterface(value);
+         ref.setServiceInterface(getValue(localName, value));
       }
       else if (localName.equals("wsdl-file"))
       {
-         ref.setWsdlFile(value);
+         ref.setWsdlFile(getValue(localName, value));
       }
       else if (localName.equals("jaxrpc-mapping-file"))
       {
-         ref.setJaxRpcMappingFile(value);
+         ref.setJaxRpcMappingFile(getValue(localName, value));
       }
       else if (localName.equals("mapped-name"))
       {
-         ref.setMappedName(value);
+         ref.setMappedName(getValue(localName, value));
       }
    }
 
@@ -409,7 +409,7 @@
    {
       if (localName.equals("role-name"))
       {
-         role.setRoleName(value);
+         role.setRoleName(getValue(localName, value));
       }
    }
 
@@ -418,11 +418,11 @@
    {
       if (localName.equals("mapped-name"))
       {
-         ref.setMappedName(value);
+         ref.setMappedName(getValue(localName, value));
       }
       else if (localName.equals("jndi-ref-name"))
       {
-         ref.setJndiRefName(value);
+         ref.setJndiRefName(getValue(localName, value));
       }
    }
 
@@ -431,7 +431,7 @@
    {
       if (localName.equals("role-name"))
       {
-         runAs.setRoleName(value);
+         runAs.setRoleName(getValue(localName, value));
       }
    }
 
@@ -440,11 +440,11 @@
    {
       if (localName.equals("role-name"))
       {
-         ref.setRoleName(value);
+         ref.setRoleName(getValue(localName, value));
       }
       else if (localName.equals("role-link"))
       {
-         ref.setRoleLink(value);
+         ref.setRoleLink(getValue(localName, value));
       }
    }
 
@@ -453,7 +453,7 @@
    {
       if (localName.equals("listener-class"))
       {
-         listener.setListenerClass(value);
+         listener.setListenerClass(getValue(localName, value));
       }
    }
 
@@ -462,11 +462,11 @@
    {
       if (localName.equals("message-destination-name"))
       {
-         destination.setMessageDestinationName(value);
+         destination.setMessageDestinationName(getValue(localName, value));
       }
       else if (localName.equals("mapped-name") || localName.equals("jndi-name"))
       {
-         destination.setMappedName(value);
+         destination.setMappedName(getValue(localName, value));
       }
    }
 
@@ -475,11 +475,11 @@
    {
       if (localName.equals("persistence-unit-ref-name"))
       {
-         ref.setRefName(value);
+         ref.setRefName(getValue(localName, value));
       }
       else if (localName.equals("persistence-unit-name"))
       {
-         ref.setUnitName(value);
+         ref.setUnitName(getValue(localName, value));
       }
       else
       {
@@ -557,11 +557,11 @@
    {
       if (localName.equals("persistence-context-ref-name"))
       {
-         ref.setRefName(value);
+         ref.setRefName(getValue(localName, value));
       }
       else if (localName.equals("persistence-unit-name"))
       {
-         ref.setUnitName(value);
+         ref.setUnitName(getValue(localName, value));
       }
       else if(localName.equals("persistence-context-type"))
       {
@@ -575,4 +575,9 @@
          }
       }
    }
+   
+   protected String getValue(String name, String value)
+   {
+      return value;
+   }
 }




More information about the jboss-cvs-commits mailing list