You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by xu...@apache.org on 2009/12/12 03:45:26 UTC

svn commit: r889880 - in /geronimo/server/branches/2.1: assemblies/geronimo-boilerplate-minimal/src/main/assembly/ framework/configs/client-system/ framework/configs/j2ee-system/ framework/configs/jsr88-deploymentfactory/ framework/configs/online-deplo...

Author: xuhaihong
Date: Sat Dec 12 02:45:24 2009
New Revision: 889880

URL: http://svn.apache.org/viewvc?rev=889880&view=rev
Log:
GERONIMO-3003 Encrypt password strings in deployment plans

Modified:
    geronimo/server/branches/2.1/assemblies/geronimo-boilerplate-minimal/src/main/assembly/boilerplate.xml
    geronimo/server/branches/2.1/framework/configs/client-system/pom.xml
    geronimo/server/branches/2.1/framework/configs/j2ee-system/pom.xml
    geronimo/server/branches/2.1/framework/configs/jsr88-deploymentfactory/pom.xml
    geronimo/server/branches/2.1/framework/configs/online-deployer/pom.xml
    geronimo/server/branches/2.1/framework/configs/shutdown/pom.xml
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/pom.xml
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/DynamicGAttributeInfo.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GAttributeInfo.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanData.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/xstream/GBeanDataConverter.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/gbean/runtime/GBeanAttributeTest.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/MockGBean.java
    geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/config/ConfigurationUtilTest.java
    geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/GBeanOverride.java
    geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/LocalAttributeManager.java
    geronimo/server/branches/2.1/framework/modules/geronimo-system/src/test/java/org/apache/geronimo/system/configuration/LocalAttributeManagerTest.java
    geronimo/server/branches/2.1/plugins/activemq/activemq-console-jetty/pom.xml
    geronimo/server/branches/2.1/plugins/activemq/activemq-console-tomcat/pom.xml
    geronimo/server/branches/2.1/plugins/connector/connector-deployer/src/main/plan/plan.xml
    geronimo/server/branches/2.1/plugins/connector/geronimo-connector-builder/pom.xml
    geronimo/server/branches/2.1/plugins/j2ee/jsr88-jar-configurer/pom.xml
    geronimo/server/branches/2.1/plugins/j2ee/jsr88-rar-configurer/pom.xml
    geronimo/server/branches/2.1/plugins/j2ee/jsr88-war-configurer/pom.xml
    geronimo/server/branches/2.1/plugins/system-database/sysdb-console-jetty/pom.xml
    geronimo/server/branches/2.1/plugins/system-database/sysdb-console-tomcat/pom.xml

Modified: geronimo/server/branches/2.1/assemblies/geronimo-boilerplate-minimal/src/main/assembly/boilerplate.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/assemblies/geronimo-boilerplate-minimal/src/main/assembly/boilerplate.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/assemblies/geronimo-boilerplate-minimal/src/main/assembly/boilerplate.xml (original)
+++ geronimo/server/branches/2.1/assemblies/geronimo-boilerplate-minimal/src/main/assembly/boilerplate.xml Sat Dec 12 02:45:24 2009
@@ -63,6 +63,7 @@
                 <include>xpp3:xpp3</include>
                 <include>com.thoughtworks.xstream:xstream</include>
                 <include>org.apache.geronimo.framework:geronimo-cli</include>
+                <include>org.apache.geronimo.framework:geronimo-crypto</include>
                 <include>org.apache.geronimo.framework:geronimo-kernel</include>
                 <include>org.apache.geronimo.framework:geronimo-deploy-jsr88-bootstrapper</include>
                 <include>org.apache.geronimo.framework:jsr88-deploymentfactory</include>

Modified: geronimo/server/branches/2.1/framework/configs/client-system/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/configs/client-system/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/configs/client-system/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/configs/client-system/pom.xml Sat Dec 12 02:45:24 2009
@@ -133,6 +133,11 @@
                         </element>
                         <element>
                             <groupId>org.apache.geronimo.framework</groupId>
+                            <artifactId>geronimo-crypto</artifactId>
+                            <version>${version}</version>
+                        </element>
+                        <element>
+                            <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>geronimo-kernel</artifactId>
                             <version>${version}</version>
                         </element>

Modified: geronimo/server/branches/2.1/framework/configs/j2ee-system/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/configs/j2ee-system/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/configs/j2ee-system/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/configs/j2ee-system/pom.xml Sat Dec 12 02:45:24 2009
@@ -153,6 +153,11 @@
                         </element>
                         <element>
                             <groupId>org.apache.geronimo.framework</groupId>
+                            <artifactId>geronimo-crypto</artifactId>
+                            <version>${version}</version>
+                        </element>
+                        <element>
+                            <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>geronimo-kernel</artifactId>
                             <version>${version}</version>
                         </element>

Modified: geronimo/server/branches/2.1/framework/configs/jsr88-deploymentfactory/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/configs/jsr88-deploymentfactory/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/configs/jsr88-deploymentfactory/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/configs/jsr88-deploymentfactory/pom.xml Sat Dec 12 02:45:24 2009
@@ -117,6 +117,11 @@
                     <classpath>
                         <element>
                             <groupId>org.apache.geronimo.framework</groupId>
+                            <artifactId>geronimo-crypto</artifactId>
+                            <version>${version}</version>
+                        </element>
+                        <element>
+                            <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>geronimo-kernel</artifactId>
                             <version>${version}</version>
                         </element>

Modified: geronimo/server/branches/2.1/framework/configs/online-deployer/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/configs/online-deployer/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/configs/online-deployer/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/configs/online-deployer/pom.xml Sat Dec 12 02:45:24 2009
@@ -151,6 +151,11 @@
                         </element>
                         <element>
                             <groupId>org.apache.geronimo.framework</groupId>
+                            <artifactId>geronimo-crypto</artifactId>
+                            <version>${version}</version>
+                        </element>
+                        <element>
+                            <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>geronimo-kernel</artifactId>
                             <version>${version}</version>
                         </element>

Modified: geronimo/server/branches/2.1/framework/configs/shutdown/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/configs/shutdown/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/configs/shutdown/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/configs/shutdown/pom.xml Sat Dec 12 02:45:24 2009
@@ -104,6 +104,11 @@
                     <classpath>
                         <element>
                             <groupId>org.apache.geronimo.framework</groupId>
+                            <artifactId>geronimo-crypto</artifactId>
+                            <version>${version}</version>
+                        </element>
+                        <element>
+                            <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>geronimo-kernel</artifactId>
                             <version>${version}</version>
                         </element>

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/pom.xml (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/pom.xml Sat Dec 12 02:45:24 2009
@@ -66,6 +66,12 @@
             <groupId>xpp3</groupId>
             <artifactId>xpp3</artifactId>
         </dependency>
+
+        <dependency>
+            <groupId>org.apache.geronimo.framework</groupId>
+            <artifactId>geronimo-crypto</artifactId>
+            <version>${version}</version>
+        </dependency>
     </dependencies>
 
     <build>

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/DynamicGAttributeInfo.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/DynamicGAttributeInfo.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/DynamicGAttributeInfo.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/DynamicGAttributeInfo.java Sat Dec 12 02:45:24 2009
@@ -23,6 +23,10 @@
  * @version $Rev$ $Date$
  */
 public class DynamicGAttributeInfo extends GAttributeInfo {
+    public DynamicGAttributeInfo(String name, String type, boolean persistent, boolean manageable, boolean encrypted, boolean readable, boolean writable) {
+        super(name, type, persistent, manageable, encrypted, readable, writable, null, null);
+    }
+    
     public DynamicGAttributeInfo(String name, String type, boolean persistent, boolean manageable, boolean readable, boolean writable) {
         super(name, type, persistent, manageable, readable, writable, null, null);
     }

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GAttributeInfo.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GAttributeInfo.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GAttributeInfo.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GAttributeInfo.java Sat Dec 12 02:45:24 2009
@@ -21,6 +21,7 @@
 import java.util.Arrays;
 
 import org.apache.geronimo.kernel.KernelRegistry;
+import org.apache.geronimo.crypto.EncryptionManager;
 
 /**
  * Describes an attibute of a GBean.
@@ -49,6 +50,11 @@
      * Is this attribute manageable?
      */
     private final boolean manageable;
+    
+    /**
+     * Does this attribute need to be encrypted when persisted?
+     */
+    private final boolean encrypted;
 
     /**
      * Is this attribute readable?
@@ -71,17 +77,46 @@
      * The default is "set" + name.  In the case of a defualt value we do a caseless search for the name.
      */
     private final String setterName;
+    
+    /**
+     * Determines whether the given attribute need to be encrypted by default.
+     * 
+     * @param name - Name of the attribute
+     * @param type - Type of the attribute
+     * @return
+     */
+    private static boolean defaultEncrypted(String name, String type) {
+        if (name != null && (name.toLowerCase().contains("password") || name.toLowerCase().contains("keystorepass")) && "java.lang.String".equals(type)) {
+            return true;
+        } else {
+           return false;
+        }
+    }
 
     public GAttributeInfo(String name, String type, boolean persistent, boolean manageable, String getterName, String setterName) {
         this(name, type, persistent, manageable, getterName != null, setterName != null, getterName, setterName);
     }
 
     public GAttributeInfo(String name, String type, boolean persistent, boolean manageable, boolean readable, boolean writable, String getterName, String setterName) {
+        this(name, type, persistent, manageable, defaultEncrypted(name, type), readable, writable, getterName,
+                setterName);       
+    }
+
+    public GAttributeInfo(String name, String type, boolean persistent, boolean manageable, boolean encrypted, String getterName, String setterName) {
+        this(name, type, persistent, manageable, encrypted, getterName != null, setterName != null, getterName,
+                setterName);
+    }
+
+    public GAttributeInfo(String name, String type, boolean persistent, boolean manageable, boolean encrypted, boolean readable, boolean writable, String getterName, String setterName) {
+        if (encrypted && !"java.lang.String".equals(type)) {
+            throw new IllegalArgumentException("Only attributes of String type can be encrypted.");
+        }
         this.name = name;
         this.type = type;
         this.persistent = persistent;
         //non persistent attributes cannot be manageable
         this.manageable = manageable & persistent;
+        this.encrypted = encrypted;
         this.readable = readable;
         this.writable = writable;
         this.getterName = getterName;
@@ -104,6 +139,10 @@
         return manageable;
     }
 
+    public boolean isEncrypted() {
+        return encrypted;
+    }
+
     public boolean isReadable() {
         return readable;
     }
@@ -125,6 +164,7 @@
                  " type=" + type +
                  " persistent=" + persistent +
                  " manageable=" + manageable +
+                 " encrypted=" + encrypted +
                  " readable=" + readable +
                  " writable=" + writable +
                  " getterName=" + getterName +
@@ -140,6 +180,7 @@
         xml.append("type='" + type + "' ");
         xml.append("persistent='" + persistent + "' ");
         xml.append("manageable='" + manageable + "' ");
+        xml.append("encrypted='" + encrypted + "' ");
         xml.append("readable='" + readable + "' ");
         xml.append("writable='" + writable + "' ");
         xml.append(">");
@@ -152,9 +193,13 @@
                 Object value = KernelRegistry.getSingleKernel().getAttribute(abstractName, name);
                 if (value != null) {
                     if (value instanceof String[]) {
-                        for (String valueString : Arrays.asList((String[]) value))
+                        for (String valueString : Arrays.asList((String[]) value)) {
                             xml.append("<value>" + valueString + "</value>");
+                        }
                     } else {
+                        if (encrypted && value instanceof String) {
+                            value = EncryptionManager.encrypt((String) value);
+                        }
                         xml.append("<value>" + value + "</value>");
                     }
                 }

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanData.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanData.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanData.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanData.java Sat Dec 12 02:45:24 2009
@@ -27,6 +27,8 @@
 import java.util.Map;
 import java.util.Set;
 
+import org.apache.geronimo.crypto.EncryptionManager;
+
 /**
  * @version $Rev$ $Date$
  */
@@ -110,8 +112,21 @@
     public Object getAttribute(String name) {
         return attributes.get(name);
     }
+    
+    private boolean isEncrypted(String attrName) {
+        if (gbeanInfo != null) {
+            GAttributeInfo attr = gbeanInfo.getAttribute(attrName);
+            if (attr != null) {
+                return attr.isEncrypted();
+            }
+        }
+        return false;
+    }
 
     public void setAttribute(String name, Object value) {
+        if (isEncrypted(name) && value != null) {
+            value = EncryptionManager.decrypt((String) value);
+        }
         attributes.put(name, value);
     }
 
@@ -207,6 +222,9 @@
         for (Map.Entry<String, Object> entry : attributes.entrySet()) {
             String name = entry.getKey();
             Object value = entry.getValue();
+            if (isEncrypted(name) && value != null) {
+                value = EncryptionManager.encrypt((String) value);
+            }
             try {
                 out.writeObject(name);
                 out.writeObject(value);
@@ -352,3 +370,4 @@
 
 }
 
+

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/GBeanInfoBuilder.java Sat Dec 12 02:45:24 2009
@@ -233,11 +233,12 @@
                     // magic attributes can't be persistent
                     continue;
                 }
-                attributes.put(attributeName,
+                attributes.put(attributeName,   
                         new GAttributeInfo(attributeName,
-                                attribute.getType(),
+                                attribute.getType(), 
                                 true,
                                 attribute.isManageable(),
+                                attribute.isEncrypted(),
                                 attribute.getGetterName(),
                                 attribute.getSetterName()));
             } else {
@@ -264,6 +265,7 @@
                                 attribute.getType(),
                                 attribute.isPersistent(),
                                 true,
+                                attribute.isEncrypted(),
                                 attribute.getGetterName(),
                                 attribute.getSetterName()));
             }
@@ -317,6 +319,7 @@
                                     attributeType,
                                     attribute.isPersistent() || persistentNames.contains(attributeName),
                                     attribute.isManageable() || manageableNames.contains(attributeName),
+                                    attribute.isEncrypted(),
                                     method.getName(),
                                     attribute.getSetterName()));
                 }
@@ -341,6 +344,7 @@
                                     attributeType,
                                     attribute.isPersistent() || persistentNames.contains(attributeName),
                                     attribute.isManageable() || manageableNames.contains(attributeName),
+                                    attribute.isEncrypted(),
                                     attribute.getGetterName(),
                                     method.getName()));
                 }
@@ -362,7 +366,6 @@
             addInterface(set, cls[i]);
         }
     }
-
     public void addAttribute(String name, Class type, boolean persistent) {
         addAttribute(name, type.getName(), persistent, true);
     }
@@ -381,6 +384,16 @@
         addAttribute(new GAttributeInfo(name, type, persistent, manageable, getter, setter));
     }
 
+    public void addAttribute(String name, Class type, boolean persistent, boolean manageable, boolean encrypted) {
+        addAttribute(name, type.getName(), persistent, manageable, encrypted);
+    }
+
+    public void addAttribute(String name, String type, boolean persistent, boolean manageable, boolean encrypted) {
+        String getter = searchForGetter(name, type, gbeanType);
+        String setter = searchForSetter(name, type, gbeanType);
+        addAttribute(new GAttributeInfo(name, type, persistent, manageable, encrypted, getter, setter));
+    }
+
     public void addAttribute(GAttributeInfo info) {
         attributes.put(info.getName(), info);
     }

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/gbean/runtime/GBeanAttribute.java Sat Dec 12 02:45:24 2009
@@ -19,6 +19,7 @@
 
 import java.lang.reflect.Method;
 
+import org.apache.geronimo.crypto.EncryptionManager;
 import org.apache.geronimo.gbean.DynamicGAttributeInfo;
 import org.apache.geronimo.gbean.DynamicGBean;
 import org.apache.geronimo.gbean.GAttributeInfo;
@@ -49,6 +50,8 @@
 
     private final boolean manageable;
 
+    private final boolean encrypted;
+
     private Object persistentValue;
 
     /**
@@ -117,6 +120,9 @@
         // not manageable
         this.manageable = false;
 
+        // special attributes are not encrypted
+        this.encrypted = false;
+        
         // create an attribute info for this gbean
         if (attribute != null) {
             GAttributeInfo attributeInfo = attribute.getAttributeInfo();
@@ -124,6 +130,7 @@
                     this.type.getName(),
                     this.persistent,
                     this.manageable,
+                    this.encrypted,
                     this.readable,
                     this.writable,
                     attributeInfo.getGetterName(),
@@ -133,6 +140,7 @@
                     this.type.getName(),
                     this.persistent,
                     this.manageable,
+                    this.encrypted,
                     this.readable,
                     this.writable,
                     null,
@@ -172,12 +180,11 @@
 
         // persistence
         this.persistent = persistent;
-        initializePersistentValue(persistentValue);
 
         // manageable
         this.manageable = manageable;
-
-        // create an attribute info for this gbean
+        
+         // create an attribute info for this gbean
         attributeInfo = new GAttributeInfo(this.name,
                 this.type.getName(),
                 this.persistent,
@@ -186,6 +193,14 @@
                 this.writable,
                 null,
                 null);
+
+        this.encrypted = attributeInfo.isEncrypted();
+
+        if (this.encrypted && persistentValue != null) {
+            this.persistentValue = EncryptionManager.decrypt((String) persistentValue);
+        } else {
+            initializePersistentValue(persistentValue);
+        }
     }
 
     public GBeanAttribute(GBeanInstance gbeanInstance, GAttributeInfo attributeInfo, boolean isConstructorArg) throws InvalidConfigurationException {
@@ -211,6 +226,7 @@
         }
         this.persistent = attributeInfo.isPersistent();
         this.manageable = attributeInfo.isManageable();
+        this.encrypted = attributeInfo.isEncrypted();
 
         readable = attributeInfo.isReadable();
         writable = attributeInfo.isWritable();
@@ -338,6 +354,10 @@
         return manageable;
     }
 
+    public boolean isEncrypted() {
+        return encrypted;
+    }
+
     public boolean isSpecial() {
         return special;
     }
@@ -365,7 +385,9 @@
         }
 
         // @todo actually check type
-        this.persistentValue = persistentValue;
+        this.persistentValue = (encrypted && persistentValue != null) ? EncryptionManager
+                .decrypt((String) persistentValue)
+                : persistentValue;
     }
 
     public Object getValue(Object target) throws Exception {
@@ -412,6 +434,9 @@
             throw new IllegalStateException("GBean does not have a target instance to invoke. " + getDescription());
         }
 
+        if (encrypted && value != null) {
+            value = EncryptionManager.decrypt((String) value);
+        }
         // call the setter
         setInvoker.invoke(target, new Object[]{value});
     }

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/xstream/GBeanDataConverter.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/xstream/GBeanDataConverter.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/xstream/GBeanDataConverter.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/main/java/org/apache/geronimo/kernel/config/xstream/GBeanDataConverter.java Sat Dec 12 02:45:24 2009
@@ -30,6 +30,8 @@
 import com.thoughtworks.xstream.io.HierarchicalStreamReader;
 import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
 import com.thoughtworks.xstream.mapper.Mapper;
+
+import org.apache.geronimo.crypto.EncryptionManager;
 import org.apache.geronimo.gbean.AbstractName;
 import org.apache.geronimo.gbean.GBeanData;
 import org.apache.geronimo.gbean.GBeanInfo;
@@ -84,6 +86,11 @@
             Map.Entry entry = (Map.Entry) iterator.next();
             String attributeName = (String) entry.getKey();
             Object attributeValue = entry.getValue();
+            if (gbeanInfo.getAttribute(attributeName).isEncrypted()
+                    && attributeValue != null) {
+                attributeValue = EncryptionManager
+                        .encrypt((String) attributeValue);
+            }
             if (attributeValue != null) {
                 writer.startNode("attribute");
                 writer.addAttribute("name", attributeName);

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/gbean/runtime/GBeanAttributeTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/gbean/runtime/GBeanAttributeTest.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/gbean/runtime/GBeanAttributeTest.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/gbean/runtime/GBeanAttributeTest.java Sat Dec 12 02:45:24 2009
@@ -20,6 +20,7 @@
 import org.apache.geronimo.gbean.AbstractName;
 import org.apache.geronimo.gbean.GAttributeInfo;
 import org.apache.geronimo.gbean.GBeanData;
+import org.apache.geronimo.gbean.GBeanInfo;
 import org.apache.geronimo.gbean.InvalidConfigurationException;
 import org.apache.geronimo.kernel.Kernel;
 import org.apache.geronimo.kernel.KernelFactory;
@@ -48,6 +49,15 @@
     private GAttributeInfo attributeInfo = null;
     private Kernel kernel;
 
+    public final void testGBeanAttributeEncryption() {
+        GBeanInfo ginfo = gbeanInstance.getGBeanInfo();
+        assertTrue(ginfo.getAttribute("value").isEncrypted());
+        assertTrue(ginfo.getAttribute("yourPassword").isEncrypted());
+        assertFalse(ginfo.getAttribute("myPassword").isEncrypted());
+        assertFalse(ginfo.getAttribute("nonStringPassword").isEncrypted());
+        assertFalse(ginfo.getAttribute("finalInt").isEncrypted());
+    }
+    
     public final void testGBeanAttributStringClassMethodInvokerMethodInvoker() {
         try {
             GBeanAttribute.createFrameworkAttribute(null, null, null, null);
@@ -62,18 +72,21 @@
         assertTrue(attribute.isReadable());
         assertFalse(attribute.isWritable());
         assertFalse(attribute.isPersistent());
+        assertFalse(attribute.isEncrypted());
         attribute = GBeanAttribute.createFrameworkAttribute(gbeanInstance, attributeName, String.class, null, setInvoker, false, null, false);
         assertEquals(String.class, attribute.getType());
         assertEquals(attributeName, attribute.getName());
         assertFalse(attribute.isReadable());
         assertTrue(attribute.isWritable());
         assertFalse(attribute.isPersistent());
+        assertFalse(attribute.isEncrypted());
         attribute = GBeanAttribute.createFrameworkAttribute(gbeanInstance, attributeName, String.class, getInvoker, setInvoker, false, null, false);
         assertEquals(String.class, attribute.getType());
         assertEquals(attributeName, attribute.getName());
         assertTrue(attribute.isReadable());
         assertTrue(attribute.isWritable());
         assertFalse(attribute.isPersistent());
+        assertFalse(attribute.isEncrypted());
     }
 
     public final void testGBeanAttributeInfoClass() {

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/MockGBean.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/MockGBean.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/MockGBean.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/MockGBean.java Sat Dec 12 02:45:24 2009
@@ -67,7 +67,10 @@
         infoFactory.addAttribute("classLoader", ClassLoader.class, false);
         infoFactory.addAttribute("actualKernel", Kernel.class, false);
         infoFactory.addAttribute("kernel", Kernel.class, false);
-        infoFactory.addAttribute("value", String.class, true);
+        infoFactory.addAttribute("value", String.class, true, true, true);
+        infoFactory.addAttribute("myPassword", String.class, true, true, false);
+        infoFactory.addAttribute("yourPassword", String.class, true);
+        infoFactory.addAttribute("nonStringPassword", Object.class, true);
         infoFactory.addAttribute("finalInt", Integer.TYPE, true);
         infoFactory.addAttribute("mutableInt", Integer.TYPE, false);
         infoFactory.addAttribute("exceptionMutableInt", Integer.TYPE, true);

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/config/ConfigurationUtilTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/config/ConfigurationUtilTest.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/config/ConfigurationUtilTest.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-kernel/src/test/java/org/apache/geronimo/kernel/config/ConfigurationUtilTest.java Sat Dec 12 02:45:24 2009
@@ -52,6 +52,12 @@
         configurationData = createConfigurationData(xstreamConfigurationMarshaler);
         ByteArrayOutputStream out = new ByteArrayOutputStream();
         xstreamConfigurationMarshaler.writeConfigurationData(configurationData, out);
+        // Test whether the attribute "value" is encrypted
+        assertFalse(out.toString().contains("1234"));
+        assertFalse(out.toString().contains("5678"));
+        // Test whether other attributes are not encrypted
+        assertTrue(out.toString().contains("Parent"));
+        assertTrue(out.toString().contains("child"));
         data = copy(configurationData, xstreamConfigurationMarshaler, xstreamConfigurationMarshaler);
         assertEquals(data, configurationData);
 

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/GBeanOverride.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/GBeanOverride.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/GBeanOverride.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/GBeanOverride.java Sat Dec 12 02:45:24 2009
@@ -69,6 +69,7 @@
     private final Map<String, ReferencePatterns> references = new LinkedHashMap<String, ReferencePatterns>();
     private final Set<String> clearAttributes = new LinkedHashSet<String>();
     private final Set<String> nullAttributes = new LinkedHashSet<String>();
+    private final Set<String> encryptedAttributes = new LinkedHashSet<String>();
     private final Set<String> clearReferences = new LinkedHashSet<String>();
     private final String gbeanInfo;
     private final JexlExpressionParser expressionParser;
@@ -104,6 +105,7 @@
         this.references.putAll(original.references);
         this.clearAttributes.addAll(original.clearAttributes);
         this.nullAttributes.addAll(original.nullAttributes);
+        this.encryptedAttributes.addAll(original.encryptedAttributes);
         this.clearReferences.addAll(original.clearReferences);
         this.gbeanInfo = original.gbeanInfo;
         this.expressionParser = original.expressionParser;
@@ -143,8 +145,12 @@
             if (attributeInfo == null) {
                 throw new InvalidAttributeException("No attribute: " + attributeName + " for gbean: " + gbeanData.getAbstractName());
             }
+            // TODO: shouldn't we only save manageable attributes here?
             Object attributeValue = entry.getValue();
-            setAttribute(attributeName, attributeValue, attributeInfo.getType(), classLoader);
+            setAttribute(attributeInfo, attributeValue, classLoader);
+            if (attributeInfo.isEncrypted() && attributes.containsKey(attributeName)) {
+                encryptedAttributes.add(attributeName);
+            }
         }
 
         // references can be coppied in blind
@@ -199,6 +205,14 @@
                     } else {
                         String truevalue = (String) EncryptionManager.decrypt(value);
                         setAttribute(attr.getName(), truevalue);
+                        /*
+                         * If the original value is encrypted, retain this 
+                         * meta-information.
+                         */
+                        if (!value.equals(truevalue)
+                                && attributes.containsKey(attr.getName())) {
+                            encryptedAttributes.add(attr.getName());
+                        }
                     }
                 }
             } else if (o instanceof ReferenceType) {
@@ -312,12 +326,43 @@
         references.remove(referenceName);
     }
 
-    public void setAttribute(String attributeName, Object attributeValue, String attributeType, ClassLoader classLoader) throws InvalidAttributeException {
+    public void setAttribute(GAttributeInfo attrInfo, Object attributeValue,
+            ClassLoader classLoader) throws InvalidAttributeException {
+        setAttribute(attrInfo.getName(), attributeValue, attrInfo.getType(),
+                classLoader);
+        if (attrInfo.isEncrypted()
+                && attributes.containsKey(attrInfo.getName())) {
+            encryptedAttributes.add(attrInfo.getName());
+        } else {
+            encryptedAttributes.remove(attrInfo.getName());
+        }
+    }
+
+    /**
+     * This method should be discouraged for usage outside in future, as it does
+     * not pass in encryption meta-information about the attribute being set.
+     * 
+     * Use setAttribute(GAttributeInfo attrInfo, Object attributeValue,
+     * ClassLoader classLoader) instead.
+     * 
+     * @deprecated
+     */
+    void setAttribute(String attributeName, Object attributeValue, String attributeType, ClassLoader classLoader) throws InvalidAttributeException {
         String stringValue = getAsText(attributeName, attributeValue, attributeType, classLoader);
         setAttribute(attributeName, stringValue);
     }
 
-    public void setAttribute(String attributeName, String attributeValue) {
+
+    /**
+     * This method should be discouraged for usage outside in future, as it does
+     * not pass in encryption meta-information about the attribute being set.
+     * 
+     * Use setAttribute(GAttributeInfo attrInfo, Object attributeValue,
+     * ClassLoader classLoader) instead.
+     * 
+     * @deprecated
+     */
+    void setAttribute(String attributeName, String attributeValue) {
         if (attributeValue == null || attributeValue.length() == 0) {
             setClearAttribute(attributeName);
         } else {
@@ -358,6 +403,12 @@
             String valueString = entry.getValue();
             Object value = getValue(attributeInfo, valueString, configName, gbeanName, classLoader);
             data.setAttribute(attributeName, value);
+            // Read the latest encryption meta-information on attributes
+            if (attributeInfo.isEncrypted()) {
+                encryptedAttributes.add(attributeName);
+            } else {
+                encryptedAttributes.remove(attributeName);
+            }
         }
 
         //Clear attributes
@@ -468,9 +519,8 @@
             } else {                
                 nullAttributes.remove(name);
                 clearAttributes.remove(name);
-
-                if ((name.toLowerCase().indexOf("password") > -1) ||
-                    (name.toLowerCase().equals("keystorepass"))) {
+              
+                if (encryptedAttributes.contains(name)) {
                     value = EncryptionManager.encrypt(value);
                 }
 

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/LocalAttributeManager.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/LocalAttributeManager.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/LocalAttributeManager.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-system/src/main/java/org/apache/geronimo/system/configuration/LocalAttributeManager.java Sat Dec 12 02:45:24 2009
@@ -257,7 +257,7 @@
         }
 
         try {
-            gbean.setAttribute(attribute.getName(), value, attribute.getType(), classLoader);
+            gbean.setAttribute(attribute, value, classLoader);
             attributeChanged();
         } catch (InvalidAttributeException e) {
             // attribute can not be represented as a string
@@ -390,6 +390,13 @@
         }
     }
 
+    void write(Writer writer) throws XMLStreamException, JAXBException,
+            IOException {
+        AttributesType attributes = serverOverride.writeXml();
+        AttributesXmlUtil.writeAttributes(attributes, writer);
+        writer.flush();
+    }
+
     private static void saveXmlToFile(File file, ServerOverride serverOverride) {
         try {
             Writer fileOut = new FileWriter(file);

Modified: geronimo/server/branches/2.1/framework/modules/geronimo-system/src/test/java/org/apache/geronimo/system/configuration/LocalAttributeManagerTest.java
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/framework/modules/geronimo-system/src/test/java/org/apache/geronimo/system/configuration/LocalAttributeManagerTest.java?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/framework/modules/geronimo-system/src/test/java/org/apache/geronimo/system/configuration/LocalAttributeManagerTest.java (original)
+++ geronimo/server/branches/2.1/framework/modules/geronimo-system/src/test/java/org/apache/geronimo/system/configuration/LocalAttributeManagerTest.java Sat Dec 12 02:45:24 2009
@@ -16,30 +16,35 @@
  */
 package org.apache.geronimo.system.configuration;
 
+import java.io.ByteArrayOutputStream;
+import java.io.FileReader;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import javax.management.ObjectName;
+
 import junit.framework.TestCase;
+
+import org.apache.geronimo.gbean.AbstractName;
+import org.apache.geronimo.gbean.AbstractNameQuery;
 import org.apache.geronimo.gbean.GAttributeInfo;
 import org.apache.geronimo.gbean.GBeanData;
 import org.apache.geronimo.gbean.GBeanInfo;
 import org.apache.geronimo.gbean.GBeanInfoBuilder;
 import org.apache.geronimo.gbean.GReferenceInfo;
-import org.apache.geronimo.gbean.AbstractNameQuery;
-import org.apache.geronimo.gbean.AbstractName;
 import org.apache.geronimo.gbean.ReferencePatterns;
-import org.apache.geronimo.kernel.repository.Artifact;
-import org.apache.geronimo.kernel.Naming;
 import org.apache.geronimo.kernel.Jsr77Naming;
+import org.apache.geronimo.kernel.Naming;
 import org.apache.geronimo.kernel.config.InvalidConfigException;
+import org.apache.geronimo.kernel.repository.Artifact;
 import org.apache.geronimo.system.serverinfo.BasicServerInfo;
-
-import javax.management.ObjectName;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.LinkedHashSet;
-import java.util.Set;
+import org.apache.geronimo.system.serverinfo.ServerInfo;
 
 /**
  * @version $Rev$ $Date$
@@ -51,6 +56,7 @@
     private Artifact configurationName;
     private AbstractName gbeanName;
     private GAttributeInfo attributeInfo;
+    private GAttributeInfo encryptedAttributeInfo;
     private GReferenceInfo referenceInfo;
 
     public void testConfigurationShouldLoad() throws Exception {
@@ -128,6 +134,22 @@
         gbeanDatas.add(gbeanData);
         gbeanDatas = localAttributeManager.applyOverrides(configurationName, gbeanDatas, getClass().getClassLoader());
         assertEquals(attributeValue, gbeanData.getAttribute(attributeInfo.getName()));
+        StringWriter w = new StringWriter();
+        localAttributeManager.write(w);
+        assertTrue(w.toString().contains(attributeValue));
+    }
+
+    public void testEncryptedAttribute() throws Exception {
+        String attributeValue = "attribute value";
+        localAttributeManager.setValue(configurationName, gbeanName, encryptedAttributeInfo, attributeValue, getClass().getClassLoader());
+        Collection gbeanDatas = new ArrayList();
+        GBeanData gbeanData = new GBeanData(gbeanName, GBEAN_INFO);
+        gbeanDatas.add(gbeanData);
+        gbeanDatas = localAttributeManager.applyOverrides(configurationName, gbeanDatas, getClass().getClassLoader());
+        assertEquals(attributeValue, gbeanData.getAttribute(encryptedAttributeInfo.getName()));
+        StringWriter w = new StringWriter();
+        localAttributeManager.write(w);
+        assertFalse(w.toString().contains(attributeValue));
     }
 
     public void testSetReference() throws Exception {
@@ -227,6 +249,7 @@
         ObjectName objectName = ObjectName.getInstance(":name=gbean,parent="+configurationName+",foo=bar");
         gbeanName = new AbstractName(configurationName, objectName.getKeyPropertyList(), objectName);
         attributeInfo = GBEAN_INFO.getAttribute("attribute");
+        encryptedAttributeInfo = GBEAN_INFO.getAttribute("secret");
         referenceInfo = GBEAN_INFO.getReference("reference");
     }
 
@@ -241,6 +264,7 @@
         GBeanInfoBuilder infoFactory = GBeanInfoBuilder.createStatic(LocalAttributeManagerTest.class);
         infoFactory.addReference("reference", String.class);
         infoFactory.addAttribute("attribute", String.class, true);
+        infoFactory.addAttribute("secret", String.class, true, true, true);
         GBEAN_INFO = infoFactory.getBeanInfo();
     }
 

Modified: geronimo/server/branches/2.1/plugins/activemq/activemq-console-jetty/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/activemq/activemq-console-jetty/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/activemq/activemq-console-jetty/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/activemq/activemq-console-jetty/pom.xml Sat Dec 12 02:45:24 2009
@@ -74,6 +74,12 @@
             <version>${version}</version>
             <type>car</type>
         </dependency>
+        
+        <dependency>
+            <groupId>org.apache.geronimo.framework</groupId>
+            <artifactId>geronimo-deploy-jsr88</artifactId>
+            <version>${version}</version>
+        </dependency>
 
         <dependency>
             <groupId>org.apache.geronimo.configs</groupId>
@@ -117,12 +123,12 @@
             <type>rar</type>
         </dependency>
 
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.configs</groupId>
             <artifactId>jsr88-rar-configurer</artifactId>
             <version>${version}</version>
             <type>car</type>
-        </dependency>
+        </dependency-->
 
         <!-- for jspc. why is this needed? -->
         <dependency>

Modified: geronimo/server/branches/2.1/plugins/activemq/activemq-console-tomcat/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/activemq/activemq-console-tomcat/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/activemq/activemq-console-tomcat/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/activemq/activemq-console-tomcat/pom.xml Sat Dec 12 02:45:24 2009
@@ -93,6 +93,12 @@
 
         <dependency>
             <groupId>org.apache.geronimo.framework</groupId>
+            <artifactId>geronimo-deploy-jsr88</artifactId>
+            <version>${version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>geronimo-kernel</artifactId>
             <version>${version}</version>
         </dependency>
@@ -117,12 +123,12 @@
             <type>rar</type>
         </dependency>
 
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.configs</groupId>
             <artifactId>jsr88-rar-configurer</artifactId>
             <version>${version}</version>
             <type>car</type>
-        </dependency>
+        </dependency-->
     </dependencies>
 
     <build>

Modified: geronimo/server/branches/2.1/plugins/connector/connector-deployer/src/main/plan/plan.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/connector-deployer/src/main/plan/plan.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/connector/connector-deployer/src/main/plan/plan.xml (original)
+++ geronimo/server/branches/2.1/plugins/connector/connector-deployer/src/main/plan/plan.xml Sat Dec 12 02:45:24 2009
@@ -100,4 +100,5 @@
         <attribute name="eeNamespaces">http://java.sun.com/xml/ns/j2ee,http://java.sun.com/xml/ns/javaee</attribute>
     </gbean>
 
+    <gbean name="RARConfigurer" class="org.apache.geronimo.connector.deployment.RARConfigurer"/>
 </module>

Modified: geronimo/server/branches/2.1/plugins/connector/geronimo-connector-builder/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/connector/geronimo-connector-builder/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/connector/geronimo-connector-builder/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/connector/geronimo-connector-builder/pom.xml Sat Dec 12 02:45:24 2009
@@ -39,11 +39,11 @@
             <version>${version}</version>
         </dependency>
 
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>geronimo-deploy-config</artifactId>
             <version>${version}</version>
-        </dependency>
+        </dependency-->
 
         <dependency>
             <groupId>org.apache.geronimo.modules</groupId>

Modified: geronimo/server/branches/2.1/plugins/j2ee/jsr88-jar-configurer/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/j2ee/jsr88-jar-configurer/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/j2ee/jsr88-jar-configurer/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/j2ee/jsr88-jar-configurer/pom.xml Sat Dec 12 02:45:24 2009
@@ -34,13 +34,13 @@
     <packaging>car</packaging>
 
     <dependencies>
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>jsr88-cli</artifactId>
             <version>${version}</version>
             <scope>runtime</scope>
             <type>car</type>
-        </dependency>
+        </dependency-->
 
         <dependency>
             <groupId>org.apache.geronimo.modules</groupId>
@@ -65,12 +65,12 @@
                             <type>jar</type>
                             <import>classes</import>
                         </dependency>
-                        <dependency>
+                        <!--dependency>
                             <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>jsr88-cli</artifactId>
                             <type>car</type>
                             <import>classes</import>
-                        </dependency>
+                        </dependency-->
                     </dependencies>
                     <category>Deployment</category>
                     <instance>

Modified: geronimo/server/branches/2.1/plugins/j2ee/jsr88-rar-configurer/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/j2ee/jsr88-rar-configurer/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/j2ee/jsr88-rar-configurer/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/j2ee/jsr88-rar-configurer/pom.xml Sat Dec 12 02:45:24 2009
@@ -34,20 +34,26 @@
     <packaging>car</packaging>
     
     <dependencies>
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>jsr88-cli</artifactId>
             <version>${version}</version>
             <scope>runtime</scope>
             <type>car</type>
-        </dependency>
+        </dependency-->
 
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.configs</groupId>
             <artifactId>connector-deployer</artifactId>
             <version>${version}</version>
             <scope>runtime</scope>
             <type>car</type>
+        </dependency-->
+        
+        <dependency>
+            <groupId>org.apache.geronimo.modules</groupId>
+            <artifactId>geronimo-connector-builder</artifactId>
+            <version>${version}</version>
         </dependency>
     </dependencies>
     
@@ -61,7 +67,7 @@
                         <value>false</value>
                     </useMavenDependencies>
                     <dependencies>
-                        <dependency>
+                        <!--dependency>
                             <groupId>org.apache.geronimo.configs</groupId>
                             <artifactId>connector-deployer</artifactId>
                             <type>car</type>
@@ -72,6 +78,12 @@
                             <artifactId>jsr88-cli</artifactId>
                             <type>car</type>
                             <import>classes</import>
+                        </dependency-->
+                        <dependency>
+                            <groupId>org.apache.geronimo.modules</groupId>
+                            <artifactId>geronimo-connector-builder</artifactId>
+                            <type>jar</type>
+                            <import>classes</import>
                         </dependency>
                     </dependencies>
                     <category>Deployment</category>

Modified: geronimo/server/branches/2.1/plugins/j2ee/jsr88-war-configurer/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/j2ee/jsr88-war-configurer/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/j2ee/jsr88-war-configurer/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/j2ee/jsr88-war-configurer/pom.xml Sat Dec 12 02:45:24 2009
@@ -34,13 +34,13 @@
     <packaging>car</packaging>
     
     <dependencies>
-        <dependency>
+        <!--dependency>
             <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>jsr88-cli</artifactId>
             <version>${version}</version>
             <scope>runtime</scope>
             <type>car</type>
-        </dependency>
+        </dependency-->
 
         <dependency>
             <groupId>org.apache.geronimo.modules</groupId>
@@ -65,12 +65,12 @@
                             <type>jar</type>
                             <import>classes</import>
                         </dependency>
-                        <dependency>
+                        <!--dependency>
                             <groupId>org.apache.geronimo.framework</groupId>
                             <artifactId>jsr88-cli</artifactId>
                             <type>car</type>
                             <import>classes</import>
-                        </dependency>
+                        </dependency-->
                     </dependencies>
                     <category>Deployment</category>
                     <instance>

Modified: geronimo/server/branches/2.1/plugins/system-database/sysdb-console-jetty/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/system-database/sysdb-console-jetty/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/system-database/sysdb-console-jetty/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/system-database/sysdb-console-jetty/pom.xml Sat Dec 12 02:45:24 2009
@@ -79,13 +79,19 @@
 
         <dependency>
             <groupId>org.apache.geronimo.configs</groupId>
-            <artifactId>jsr88-rar-configurer</artifactId>
+            <artifactId>connector-deployer</artifactId>
             <version>${version}</version>
             <type>car</type>
         </dependency>
 
         <dependency>
             <groupId>org.apache.geronimo.framework</groupId>
+            <artifactId>geronimo-deploy-jsr88</artifactId>
+            <version>${version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>geronimo-gbean-deployer</artifactId>
             <version>${version}</version>
             <type>car</type>

Modified: geronimo/server/branches/2.1/plugins/system-database/sysdb-console-tomcat/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/server/branches/2.1/plugins/system-database/sysdb-console-tomcat/pom.xml?rev=889880&r1=889879&r2=889880&view=diff
==============================================================================
--- geronimo/server/branches/2.1/plugins/system-database/sysdb-console-tomcat/pom.xml (original)
+++ geronimo/server/branches/2.1/plugins/system-database/sysdb-console-tomcat/pom.xml Sat Dec 12 02:45:24 2009
@@ -79,13 +79,19 @@
 
         <dependency>
             <groupId>org.apache.geronimo.configs</groupId>
-            <artifactId>jsr88-rar-configurer</artifactId>
+            <artifactId>connector-deployer</artifactId>
             <version>${version}</version>
             <type>car</type>
         </dependency>
 
         <dependency>
             <groupId>org.apache.geronimo.framework</groupId>
+            <artifactId>geronimo-deploy-jsr88</artifactId>
+            <version>${version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.geronimo.framework</groupId>
             <artifactId>geronimo-gbean-deployer</artifactId>
             <version>${version}</version>
             <type>car</type>