@FFDCIgnore(ClassNotFoundException.class)
	public boolean isSkippableOrRetryable(Exception e) {
		final String mName = "isSkippableOrRetryable";
		String exClassName = e.getClass().getName();
		
		boolean retVal = false;
		try {
			ClassLoader tccl = Thread.currentThread().getContextClassLoader();
			Class<?> excClass = tccl.loadClass(e.getClass().getName());
			exceptionHierarchy = new ArrayList<Object>();
			// Gets the List of Super Classes from excClass as the bottom
			getSuperClasses(excClass);
			
			boolean inExclude = isInElementSet(_skipExcludeExceptions, excClass);
			boolean inInclude = isInElementSet(_skipIncludeExceptions, excClass);
			
			if(inInclude && inExclude) {
				// If the Exception is in both elements, find which is the nearest tag
				// Find distance to nearest exclude
				int includeCount = getDistanceToElement(_skipIncludeExceptions);
				int excludeCount = getDistanceToElement(_skipExcludeExceptions);
				
				if(includeCount == excludeCount) {
				    retVal = false;
				} else if (includeCount < excludeCount) {
				    retVal = true;
				} else {
				    retVal = false;
				}
			} else if (inInclude && !inExclude) {
				// If inInclude = true and inExclude = false we will skip
			    retVal = true;
			} else {
				// Default Behavior
			    retVal = false;
			}
		} catch (ClassNotFoundException cnf) {
			logger.logp(Level.FINE, className, mName, cnf.getLocalizedMessage());				
		}
		
		if(logger.isLoggable(Level.FINE))
            logger.logp(Level.FINE, className, mName, mName+": " + retVal + ": " + exClassName);
		
		return retVal;
	}
@ FFDCIgnore ( ClassNotFoundException . class ) public boolean isSkippableOrRetryable ( Exception e ) { final String mName = "isSkippableOrRetryable" ; String exClassName = e . getClass ( ) . getName ( ) ; boolean retVal = false ; try { ClassLoader tccl = Thread . currentThread ( ) . getContextClassLoader ( ) ; Class < ? > excClass = tccl . loadClass ( e . getClass ( ) . getName ( ) ) ; exceptionHierarchy = new ArrayList < Object > ( ) ; getSuperClasses ( excClass ) ; boolean inExclude = isInElementSet ( _skipExcludeExceptions , excClass ) ; boolean inInclude = isInElementSet ( _skipIncludeExceptions , excClass ) ; if ( inInclude && inExclude ) { int includeCount = getDistanceToElement ( _skipIncludeExceptions ) ; int excludeCount = getDistanceToElement ( _skipExcludeExceptions ) ; if ( includeCount == excludeCount ) { retVal = false ; } else if ( includeCount < excludeCount ) { retVal = true ; } else { retVal = false ; } } else if ( inInclude && ! inExclude ) { retVal = true ; } else { retVal = false ; } } catch ( ClassNotFoundException cnf ) { logger . logp ( Level . FINE , className , mName , cnf . getLocalizedMessage ( ) ) ; } if ( logger . isLoggable ( Level . FINE ) ) logger . logp ( Level . FINE , className , mName , mName + ": " + retVal + ": " + exClassName ) ; return retVal ; }
Check whether given exception is in skippable/retryable exception list
@param e - the exception to check
@return true or false