public RequestDispatcher getRequestDispatcher(String uriInContext)
    {
        if (uriInContext == null)
            return null;

        if (!uriInContext.startsWith("/"))
            return null;
        
        try
        {
            String query=null;
            int q=0;
            if ((q=uriInContext.indexOf('?'))>0)
            {
                query=uriInContext.substring(q+1);
                uriInContext=uriInContext.substring(0,q);
            }
            if ((q=uriInContext.indexOf(';'))>0)
                uriInContext=uriInContext.substring(0,q);

            String pathInContext=URI.canonicalPath(URI.decodePath(uriInContext));
            Map.Entry entry=getHolderEntry(pathInContext);
            if (entry!=null)
                return new Dispatcher(ServletHandler.this,
                                      uriInContext,
                                      pathInContext,
                                      query,
                                      entry);
        }
        catch(Exception e)
        {
            LogSupport.ignore(log,e);
        }
        return null;
    }
public RequestDispatcher getRequestDispatcher ( String uriInContext ) { if ( uriInContext == null ) return null ; if ( ! uriInContext . startsWith ( "/" ) ) return null ; try { String query = null ; int q = 0 ; if ( ( q = uriInContext . indexOf ( '?' ) ) > 0 ) { query = uriInContext . substring ( q + 1 ) ; uriInContext = uriInContext . substring ( 0 , q ) ; } if ( ( q = uriInContext . indexOf ( ';' ) ) > 0 ) uriInContext = uriInContext . substring ( 0 , q ) ; String pathInContext = URI . canonicalPath ( URI . decodePath ( uriInContext ) ) ; Map . Entry entry = getHolderEntry ( pathInContext ) ; if ( entry != null ) return new Dispatcher ( ServletHandler . this , uriInContext , pathInContext , query , entry ) ; } catch ( Exception e ) { LogSupport . ignore ( log , e ) ; } return null ; }
/* ------------------------------------------------------------