private static boolean hasChangesOfChildren(long last,PageContext pc,Class clazz){
  java.lang.reflect.Method[] methods=clazz.getMethods();
  java.lang.reflect.Method method;
  Class[] params;
  for (int i=0; i < methods.length; i++) {
    method=methods[i];
    if (method.getDeclaringClass() == clazz) {
      if (_hasChangesOfChildren(pc,last,method.getReturnType()))       return true;
      params=method.getParameterTypes();
      for (int y=0; y < params.length; y++) {
        if (_hasChangesOfChildren(pc,last,params[y]))         return true;
      }
    }
  }
  return false;
}

private static boolean hasChangesOfChildren ( long last , PageContext pc , Class clazz ) { java . lang . reflect . Method [ ] methods = clazz . getMethods ( ) ; java . lang . reflect . Method method ; Class [ ] params ; for ( int i = 0 ; i < methods . length ; i ++ ) { method = methods [ i ] ; if ( method . getDeclaringClass ( ) == clazz ) { if ( _hasChangesOfChildren ( pc , last , method . getReturnType ( ) ) ) return true ; params = method . getParameterTypes ( ) ; for ( int y = 0 ; y < params . length ; y ++ ) { if ( _hasChangesOfChildren ( pc , last , params [ y ] ) ) return true ; } } } return false ; }
check if one of the children is changed
