User: mulder  
  Date: 00/07/28 07:00:51

  Modified:    src/main/org/jboss/metadata/jboss JBossContainer.java
                        JBossXMLReader.java
  Log:
  Change metadata to use Strings instead of Classes.
  Prevents icky ClassNotFoundExceptions and NoClassDefFoundErrors.
  Added convenience methods that take Classes and convert them to Strings.
  
  Revision  Changes    Path
  1.2       +6 -6      jboss/src/main/org/jboss/metadata/jboss/JBossContainer.java
  
  Index: JBossContainer.java
  ===================================================================
  RCS file: 
/products/cvs/ejboss/jboss/src/main/org/jboss/metadata/jboss/JBossContainer.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JBossContainer.java       2000/07/04 00:10:09     1.1
  +++ JBossContainer.java       2000/07/28 14:00:51     1.2
  @@ -5,17 +5,17 @@
   
   public class JBossContainer extends AbstractContainer {
       public boolean secure;
  -    public Class configurationClass;
  +    public String configurationClass;
       public String name;
       public boolean callLogging;
  -    public Class containerInvoker;
  +    public String containerInvokerClass;
       public boolean invokerOptimized;
  -    public Class instancePool;
  +    public String instancePoolClass;
       public int poolMinimum;
       public int poolMaximum;
  -    public Class instanceCache;
  -    public Class persistenceManager;
  -    public Class transactionManager;
  +    public String instanceCacheClass;
  +    public String persistenceManagerClass;
  +    public String transactionManagerClass;
       public char commitOption;
   
       public JBossContainer() {
  
  
  
  1.2       +15 -51    jboss/src/main/org/jboss/metadata/jboss/JBossXMLReader.java
  
  Index: JBossXMLReader.java
  ===================================================================
  RCS file: 
/products/cvs/ejboss/jboss/src/main/org/jboss/metadata/jboss/JBossXMLReader.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JBossXMLReader.java       2000/07/04 00:10:10     1.1
  +++ JBossXMLReader.java       2000/07/28 14:00:51     1.2
  @@ -16,16 +16,11 @@
       private String currentElement;
       private String contents;
       private Vector containers;
  -    private ClassLoader loader;
   
       public JBossXMLReader() {
           containers = new Vector();
       }
   
  -    public void setClassLoader(ClassLoader loader) {
  -        this.loader = loader;
  -    }
  -
       public String getFileName() {
           return "jboss.xml";
       }
  @@ -58,11 +53,7 @@
               server = new JBossServer();
           } else if(name.equals("container-configuration")) {
               container = new JBossContainer();
  -            try {
  -                container.configurationClass = 
loadClass(atts.getValue("configuration-class"));
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class 
'"+atts.getValue("configuration-class")+"'.");
  -            }
  +            container.configurationClass = atts.getValue("configuration-class");
           } else if(name.equals("entity") || name.equals("session"))
               bean = new JBossBean();
       }
  @@ -95,42 +86,22 @@
               container.name = contents;
           else if(name.equals("call-logging"))
               container.callLogging = new Boolean(contents).booleanValue();
  -        else if(name.equals("container-invoker"))
  -            try {
  -                if(contents != null && contents.length() > 0)
  -                    container.containerInvoker = loadClass(contents);
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class '"+contents+"'.");
  -            }
  -        else if(name.equals("instance-pool"))
  -            try {
  -                if(contents != null && contents.length() > 0)
  -                    container.instancePool = loadClass(contents);
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class '"+contents+"'.");
  -            }
  -        else if(name.equals("instance-cache"))
  -            try {
  +        else if(name.equals("container-invoker")) {
                   if(contents != null && contents.length() > 0)
  -                    container.instanceCache = loadClass(contents);
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class '"+contents+"'.");
  -            }
  -        else if(name.equals("persistence-manager"))
  -            try {
  -                if(contents != null && contents.length() > 0)
  -                    container.persistenceManager = loadClass(contents);
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class '"+contents+"'.");
  -            }
  -        else if(name.equals("transaction-manager"))
  -            try {
  +                    container.containerInvokerClass = contents;
  +        } else if(name.equals("instance-pool")) {
  +            if(contents != null && contents.length() > 0)
  +                container.instancePoolClass = contents;
  +        } else if(name.equals("instance-cache")) {
  +            if(contents != null && contents.length() > 0)
  +                container.instanceCacheClass = contents;
  +        } else if(name.equals("persistence-manager")) {
  +            if(contents != null && contents.length() > 0)
  +                container.persistenceManagerClass = contents;
  +        } else if(name.equals("transaction-manager")) {
                   if(contents != null && contents.length() > 0)
  -                    container.transactionManager = loadClass(contents);
  -            } catch(ClassNotFoundException e) {
  -                throw new SAXException("Unable to load class '"+contents+"'.");
  -            }
  -        else if(name.equals("Optmized"))
  +                    container.transactionManagerClass = contents;
  +        } else if(name.equals("Optmized"))
               container.invokerOptimized = new Boolean(contents).booleanValue();
           else if(name.equals("MaximumSize"))
               container.poolMaximum = Integer.parseInt(contents);
  @@ -138,12 +109,5 @@
               container.poolMinimum = Integer.parseInt(contents);
           else if(name.equals("commit-option"))
               container.commitOption = contents.charAt(0);
  -    }
  -
  -    private Class loadClass(String name) throws ClassNotFoundException {
  -        if(loader == null)
  -            return Class.forName(name);
  -        else
  -            return loader.loadClass(name);
       }
   }
  
  
  

Reply via email to