garyp       00/10/10 12:10:39

  Modified:    java/src/org/apache/xalan/templates ElemExtensionDecl.java
  Log:
  Allow component element with no content; remove experimental reflection code.
  
  Revision  Changes    Path
  1.7       +75 -10    
xml-xalan/java/src/org/apache/xalan/templates/ElemExtensionDecl.java
  
  Index: ElemExtensionDecl.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/src/org/apache/xalan/templates/ElemExtensionDecl.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ElemExtensionDecl.java    2000/10/10 03:38:40     1.6
  +++ ElemExtensionDecl.java    2000/10/10 19:10:37     1.7
  @@ -1,3 +1,60 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 1999 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Xalan" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact [EMAIL PROTECTED]
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation and was
  + * originally based on software copyright (c) 1999, Lotus
  + * Development Corporation., http://www.lotus.com.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package org.apache.xalan.templates;
   
   import java.util.Vector;
  @@ -6,6 +63,7 @@
   import org.apache.xalan.utils.StringToStringTable;
   import org.apache.xalan.utils.StringVector;
   import org.apache.xalan.extensions.ExtensionHandler;
  +import org.apache.xalan.extensions.ExtensionHandlerGeneral;
   import org.apache.xalan.extensions.ExtensionsTable;
   import org.apache.xalan.transformer.TransformerImpl;
   import org.xml.sax.SAXException;
  @@ -149,20 +207,26 @@
       if(null == nsh)
       {
         if (lang.equals("javaclass")) {
  -        nsh = etable.get(srcURL);
  -        if (null == nsh) {
  -          nsh = etable.makeJavaNamespace(srcURL);
  +        if (null == srcURL)
  +        {
  +          nsh = etable.makeJavaNamespace(declNamespace);
  +        }
  +        else
  +        {
  +          nsh = etable.get(srcURL);
  +          if (null == nsh) {
  +            nsh = etable.makeJavaNamespace(srcURL);
  +          }
           }
         }
         else     // not java
         {
  -       nsh = ExtensionHandler.createGeneralHandler(
  -                                                   declNamespace,
  -                                                   this.m_elements,
  -                                                   this.m_functions,
  -                                                   lang,
  -                                                   srcURL,
  -                                                   scriptSrc);
  +        nsh = new ExtensionHandlerGeneral(declNamespace,
  +                                          this.m_elements,
  +                                          this.m_functions,
  +                                          lang,
  +                                          srcURL,
  +                                          scriptSrc);
           // System.out.println("Adding NS Handler: declNamespace = "+
           //                   declNamespace+", lang = "+lang+", srcURL = "+
           //                   srcURL+", scriptSrc="+scriptSrc);
  @@ -173,3 +237,4 @@
       }
     }
   }
  +
  
  
  

Reply via email to