public void handleExceptionWithRecordProcess(Exception e, Object w)
      {
        final String mName = "handleExceptionWithRecordProcess";
        if(logger.isLoggable(Level.FINER)) 
          logger.logp(Level.FINE, className, mName, e.getClass().getName() + "; " + this.toString());

        if (!isSkipLimitReached() && excMatcher.isSkippableOrRetryable(e))
        {
          // Skip it.  Log it.  Call the SkipProcessListener.
          ++_skipCount;
          logSkip(e);

          if (_skipProcessListener != null) {
              for (SkipProcessListenerProxy skipProcessListenerProxy : _skipProcessListener) {
                  skipProcessListenerProxy.onSkipProcessItem(w, e);
                }
          }
        }
        else
        {
          // No skip.  Throw it back.
          if(logger.isLoggable(Level.FINER)) 
            logger.logp(Level.FINE, className, mName, "No skip.  Rethrow ", e);
          throw new BatchContainerRuntimeException(e);
        }
      }
public void handleExceptionWithRecordProcess ( Exception e , Object w ) { final String mName = "handleExceptionWithRecordProcess" ; if ( logger . isLoggable ( Level . FINER ) ) logger . logp ( Level . FINE , className , mName , e . getClass ( ) . getName ( ) + "; " + this . toString ( ) ) ; if ( ! isSkipLimitReached ( ) && excMatcher . isSkippableOrRetryable ( e ) ) { ++ _skipCount ; logSkip ( e ) ; if ( _skipProcessListener != null ) { for ( SkipProcessListenerProxy skipProcessListenerProxy : _skipProcessListener ) { skipProcessListenerProxy . onSkipProcessItem ( w , e ) ; } } } else { if ( logger . isLoggable ( Level . FINER ) ) logger . logp ( Level . FINE , className , mName , "No skip.  Rethrow " , e ) ; throw new BatchContainerRuntimeException ( e ) ; } }
Handle exception from a process failure.