cziegeler    2003/03/17 04:44:49

  Added:       site/excalibur/sourceresolve index.html
  Log:
  First fix: adding sourceresolve package
  
  Revision  Changes    Path
  1.1                  avalon-site/site/excalibur/sourceresolve/index.html
  
  Index: index.html
  ===================================================================
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
  <html><head><META http-equiv="Content-Type" content="text/html; 
charset=ISO-8859-1"><link rel="stylesheet" href="/excalibur/skin/tigris.css" 
type="text/css"><link rel="stylesheet" href="/excalibur/skin/site.css" 
type="text/css"><link media="print" rel="stylesheet" href="/excalibur/skin/print.css" 
type="text/css"><meta value="Avalon Documentation Team" name="author"><meta 
value="[EMAIL PROTECTED]" name="email"><title>Excalibur Source Resolving - 
Overview</title></head><body bgcolor="white" class="composite" marginheight="0" 
marginwidth="0"><div id="banner"><table width="100%" cellpadding="8" cellspacing="0" 
border="0"><tbody><tr><td align="left"><a href="http://jakarta.apache.org/";><img 
border="0" src="/excalibur/images/jakarta-logo.gif"></a></td><td align="right"><a 
href="http://jakarta.apache.org/avalon/";><img border="0" 
src="/excalibur/images/header.gif"></a></td></tr></tbody></table></div><table 
width="100%" cellpadding="0" cellspacing="0" border="0" id="breadcrumbs"><td><a 
href="http://jakarta.apache.org/";>Jakarta Main</a> |
              <a href="http://jakarta.apache.org/avalon";>Avalon Main</a> |
              <a href="../index.html">Up</a></td><td style="text-align: right" 
align="right"><a href="http://jakarta.apache.org/avalon/framework/";>Framework</a> |
              <a href="http://jakarta.apache.org/avalon/excalibur/";>Excalibur</a> |
              <a href="http://jakarta.apache.org/avalon/cornerstone/";>Cornerstone</a> |
              <a href="http://jakarta.apache.org/avalon/phoenix/";>Phoenix</a> |
              <a href="http://jakarta.apache.org/avalon/apps/";>Apps</a> |
              <a 
href="http://jakarta.apache.org/avalon/logkit/";>Logkit</a></td></table><table 
id="main" width="100%" cellpadding="8" cellspacing="0" border="0"><tbody><tr 
valign="top"><td id="leftcol"><div id="navcolumn"><div><strong>About</strong><div><a 
href="index.html">Overview</a></div><div><a 
href="http://jakarta.apache.org/avalon/excalibur/index.html";>Excalibur 
Home</a></div><div><a 
href="http://jakarta.apache.org/builds/jakarta-avalon-excalibur/release";>Download</a></div><div><a
 href="http://avalon.apache.org/api/";>API Docs</a></div></div></div></td><td><div 
id="bodycol"><div class="app"><div align="center"><h1>Excalibur Source Resolving - 
Overview</h1><h2></h2></div><div class="h3">
    
    
      <div class="h3"><h3>Introduction</h3></div>
        <p>
          A very common problem is resolving a source, which means
          finding a source using a URI.
        </p>
        <p>
          The source resolver of Avalon Excalibur is a component
          helping you in this task. It resolves sources from a given
          URI. The URI can use all available protocols of the JRE.
          In addition own protocols can be plugged-in. So using
          the standard protocols like HTTP, FTP or file can be handled
          in the same way, like dealing with custom, self-build
          protocols such as myxmldatabase://root/documents/test.xml.
        </p>
        <p>
          The main advantage in comparisson to the mechanisms provided
          by the JRE is that the source resolver can be used without
          any problems with web application servers. Each web
          application can use it's own configured version of this
          component avoiding any possible conflicts between these
          applications.
        </p>
        <p>
          The architecture of this package is simple but powerful.
          The main component is the SourceResolver. It is used
          to resolve any URI. If the SourceResolver can resolve the
          protocol of the URI, it returns a Source object. This Source
          object is an abstraction of the underlying resource. This
          resource can be accessed by a provided InputStream.
        </p>
        <p>
          Own protocols can be configured using the SourceFactory interface.
          Whenever the SourceResolver finds a protocol that it can't handle
          by itself, it gets a role selector for a SourceFactory and tries
          to get a component with the role name of the protocol.
          If such a factory exists, the source creation is passed on to this
          factory.
        </p>
        <p>
          The Source object is handled similar to Avalon components.
          After it has been used it must be released using the SourceResolver.
          The SourceResolver in turn passed on the release of the
          object to the SourceFactory that created it.
        </p>
        <p>
          The Source object is a lightwight object which can be extended with
          several interface. For example the XMLizable interface from the XML
          package to generate SAX events from the Source. Or the Monitorable
          interface from the monitor package to monitor the resource.
        </p>
        <p>
          For caching purposes the Source object offers a SourceValidity object
          which can be used in addition to the system ID of the Source to verify
          if a cache contains a valid version of the Source object.
        </p>
      
      <div class="h3"><h3>Projects</h3></div>
        <p>You can see the source resolving in action in the Apache Cocoon
          project.
        </p>
      
    
    
  <div id="authors" align="right">by&nbsp;Carsten 
Ziegeler</div></div></div></div></td></tr></tbody></table><div id="footer"><table 
width="100%" cellpadding="4" cellspacing="0" border="0"><tbody><tr><td 
align="left">Copyright &copy; 2000-2002 Apache Software Foundation. All Rights 
Reserved.</td><td></td><td align="right"><script language="JavaScript">
                            <!--
                                    document.write("last modified: " + 
document.lastModified);
                            //  -->
  
                             </script></td></tr></tbody></table></div></body></html>
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to