if ( URIUtil.FILE_SCHEMA .equalsIgnoreCase( objURI.getProtocol( ) ) )
String protocol = objURI.getProtocol( );  if ( URIUtil.FILE_SCHEMA.equalsIgnoreCase( protocol ) )
	public URL findResource( ModuleHandle moduleHandle, String fileName,			int type )	{		if ( fileName == null )			return null;		try		{			// try absolute path search			File f = new File( fileName );			if ( f.isAbsolute( ) )				return f.exists( ) && f.isFile( ) ? f.getCanonicalFile( )						.toURL( ) : null;			try			{				URL objURI = new URL( fileName );				if ( URIUtil.FILE_SCHEMA						.equalsIgnoreCase( objURI.getProtocol( ) ) )				{					f = new File( objURI.getPath( ) );					if ( f.isAbsolute( ) )						return f.exists( ) && f.isFile( ) ? f								.getCanonicalFile( ).toURL( ) : null;				}			}			catch ( MalformedURLException e )			{			}			// try file search based on resource path set on this session			String resourcePath = moduleHandle.getModule( ).getSession( )					.getBirtResourcePath( );			if ( resourcePath != null )			{				f = new File( resourcePath, fileName );				if ( f.exists( ) && f.isFile( ) )					return f.getCanonicalFile( ).toURL( );			}			// try file search based on path of the input module			if ( moduleHandle == null )				return null;			URL systemId = moduleHandle.getModule( ).getSystemId( );			if ( systemId == null )				return null;			if ( URIUtil.FILE_SCHEMA.equalsIgnoreCase( systemId.getProtocol( ) ) )				return tryFileSearch( systemId, fileName );			return new URL( systemId, URIUtil					.convertFileNameToURLString( fileName ) );		}		catch ( MalformedURLException e )		{		}		catch ( IOException e )		{		}		return null;	}