User: starksm 
  Date: 02/02/15 20:56:08

  Modified:    catalina/src/main/org/jboss/web/catalina
                        EmbeddedCatalinaServiceSX.java
  Log:
  Use org.jboss.metadata.XmlFileLoader to parse the web.xml and jboss-web.xml
  descriptor and its local entity resolver.
  
  Revision  Changes    Path
  1.6       +6 -47     
contrib/catalina/src/main/org/jboss/web/catalina/EmbeddedCatalinaServiceSX.java
  
  Index: EmbeddedCatalinaServiceSX.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/catalina/src/main/org/jboss/web/catalina/EmbeddedCatalinaServiceSX.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- EmbeddedCatalinaServiceSX.java    15 Feb 2002 18:06:00 -0000      1.5
  +++ EmbeddedCatalinaServiceSX.java    16 Feb 2002 04:56:08 -0000      1.6
  @@ -22,8 +22,6 @@
   import javax.naming.InitialContext;
   import javax.naming.NamingException;
   import javax.servlet.ServletContext;
  -import javax.xml.parsers.DocumentBuilderFactory;
  -import javax.xml.parsers.DocumentBuilder;
   
   import org.w3c.dom.Document;
   import org.w3c.dom.Element;
  @@ -31,6 +29,7 @@
   import org.xml.sax.InputSource;
   
   import org.jboss.deployment.DeploymentException;
  +import org.jboss.metadata.XmlFileLoader;
   import org.jboss.security.SecurityDomain;
   import org.jboss.web.AbstractWebContainer;
   import org.jboss.web.AbstractWebContainer.WebDescriptorParser;
  @@ -70,7 +69,7 @@
    @see org.apache.catalina.startup.Embedded
    
    @author [EMAIL PROTECTED]
  - @version $Revision: 1.5 $
  + @version $Revision: 1.6 $
    */
   public class EmbeddedCatalinaServiceSX extends AbstractWebContainer implements 
EmbeddedCatalinaServiceSXMBean
   {
  @@ -527,17 +526,15 @@
               }
               // Apply any extended configuration to the context
   
  -            // Get the web-app.xml and jboss-web.xml deployment descriptors 
  -            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  -            DocumentBuilder parser = factory.newDocumentBuilder();
  -            parser.setEntityResolver(new LocalResolver());
  -            Document webDoc = parser.parse(stream);
  +            // Get the web-app.xml and jboss-web.xml deployment descriptors
  +            XmlFileLoader xmlLoader = new XmlFileLoader();
  +            Document webDoc = xmlLoader.getDocument(stream, "/WEB-INF/web.xml");
               Element web = webDoc.getDocumentElement();
               Element jbossWeb = null;
               stream = servletCtx.getResourceAsStream("/WEB-INF/jboss-web.xml");
               if( stream != null )
               {
  -                Document jbossWebDoc = parser.parse(stream);
  +                Document jbossWebDoc = xmlLoader.getDocument(stream, 
"/WEB-INF/jboss-web.xml");
                   jbossWeb = jbossWebDoc.getDocumentElement();
               }
               // Setup the wep app JNDI java:comp/env namespace
  @@ -551,44 +548,6 @@
           catch(Exception e)
           {
               log.error("Failed to setup web application ENC", e);
  -        }
  -    }
  -    
  -    /** An implementation of EntityResolver for the web.dtd and jboss-web.dtd
  -     */
  -    private class LocalResolver implements EntityResolver
  -    {
  -        private HashMap dtds = new HashMap();
  -
  -        public LocalResolver()
  -        {
  -            dtds.put("-//JBoss//DTD Web Application 2.2//EN", 
"org/jboss/metadata/jboss-web.dtd");
  -            dtds.put("-//JBoss//DTD Web Application 2.3//EN", 
"org/jboss/metadata/jboss-web.dtd");
  -            dtds.put("-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN", 
"javax/servlet/resources/web-app_2_2.dtd");
  -            dtds.put("-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN", 
"javax/servlet/resources/web-app_2_3.dtd");
  -        }
  -
  -        public InputSource resolveEntity(String publicId, String systemId)
  -        {
  -            String dtd = (String) dtds.get(publicId);
  -            InputSource is = null;
  -            if (dtd != null)
  -            {
  -                try
  -                {
  -                    ClassLoader loader = 
Thread.currentThread().getContextClassLoader();
  -                    InputStream dtdStream = loader.getResourceAsStream(dtd);
  -                    if( dtdStream == null )
  -                        log.warn("Failed to find local dtd: "+dtd);
  -                    else
  -                        is = new InputSource(dtdStream);
  -                }
  -                catch(Exception ignore)
  -                {
  -                    // ignore
  -                }
  -            }
  -            return is;
           }
       }
   
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to