logger.log( Level.WARNING, "Failed to register wrapped driver instance.", e);
	private  boolean loadAndRegisterDriver( String className ) 		throws ClassNotFoundException	{		if ( className == null || className.length() == 0)			return false;				Class driverClass = null;		if ( ! registeredDrivers.contains( className ) )		{			try			{				driverClass = Class.forName( className );			}			catch ( ClassNotFoundException e )			{				// Driver not in plugin class path; find it in drivers directory				driverClass = loadExtraDriver( className );								// if driver class still cannot be found, 				if( driverClass == null)					return false;			}					// Register the driver with JDBC driver manager; normally this is done by			// the driver's class static intialization code when we do Class.forName().			// However not all drivers follow this convention. We always register			// the driver, and ignore error should it results in duplicate registration			Driver driver = null;			try			{				driver = (Driver) driverClass.newInstance( );			}			catch (IllegalAccessException e)			{				// TODO: log error				return false;			}			catch (InstantiationException e )			{				// TODO: log error				return false;			}			try			{				DriverManager.registerDriver( new WrappedDriver( driver ) );			}			catch ( SQLException e)			{				// Assume this error is caused by duplicate registration; ignore it			}			registeredDrivers.add( className );		}		return true;	}