Program: 80949
Project: 80949
Buggy source:
public void load(Class<?> mainModule){
  try {
    if (log.isDebugEnabled())     log.debug("String_Node_Str");
    IocBy ib=mainModule.getAnnotation(IocBy.class);
    SetupBy sb=mainModule.getAnnotation(SetupBy.class);
    Views vms=mainModule.getAnnotation(Views.class);
    Localization lc=mainModule.getAnnotation(Localization.class);
    if (null != ib) {
      if (log.isDebugEnabled())       log.debugf("String_Node_Str",ib.type().getName());
      ioc=ib.type().newInstance().create(config,ib.args());
      config.getServletContext().setAttribute(Ioc.class.getName(),ioc);
    }
 else     if (log.isDebugEnabled()) {
      log.debug("String_Node_Str");
    }
    ArrayList<ViewMaker> makers=new ArrayList<ViewMaker>();
    makers.add(new DefaultViewMaker());
    if (null != vms)     for (    Class<? extends ViewMaker> type : vms.value())     makers.add(type.newInstance());
    if (log.isDebugEnabled())     log.debugf("String_Node_Str",mainModule.getName());
    urls=new UrlMapImpl(ioc,context);
    urls.setOk(mainModule.getAnnotation(Ok.class));
    urls.setFail(mainModule.getAnnotation(Fail.class));
    urls.setAdaptBy(mainModule.getAnnotation(AdaptBy.class));
    urls.setFilters(mainModule.getAnnotation(Filters.class));
    urls.setEncoding(mainModule.getAnnotation(Encoding.class));
    urls.add(makers,mainModule);
    Modules modules=mainModule.getAnnotation(Modules.class);
    if (null != modules)     for (    Class<?> module : modules.value()) {
      if (log.isDebugEnabled())       log.debugf("String_Node_Str",module.getName());
      urls.add(makers,module);
    }
    config.getServletContext().setAttribute(UrlMap.class.getName(),urls);
    if (null != lc) {
      if (log.isDebugEnabled())       log.debugf("String_Node_Str",lc.value());
      msgss=Mirror.me(lc.type()).born(lc.value()).load();
    }
 else     if (log.isDebugEnabled())     log.debug("String_Node_Str");
    if (null != sb) {
      if (log.isInfoEnabled())       log.info("String_Node_Str");
      Setup setup=sb.value().newInstance();
      config.getServletContext().setAttribute(Setup.class.getName(),setup);
      setup.init(config);
    }
  }
 catch (  InstantiationException e) {
    throw Lang.wrapThrow(e);
  }
catch (  IllegalAccessException e) {
    throw Lang.wrapThrow(e);
  }
}

Fixed version (ground truth):
public void load(Class<?> mainModule){
  try {
    if (log.isDebugEnabled())     log.debug("String_Node_Str");
    IocBy ib=mainModule.getAnnotation(IocBy.class);
    SetupBy sb=mainModule.getAnnotation(SetupBy.class);
    Views vms=mainModule.getAnnotation(Views.class);
    Localization lc=mainModule.getAnnotation(Localization.class);
    if (null != ib) {
      if (log.isDebugEnabled())       log.debugf("String_Node_Str",ib.type().getName());
      ioc=ib.type().newInstance().create(config,ib.args());
      config.getServletContext().setAttribute(Ioc.class.getName(),ioc);
    }
 else     if (log.isDebugEnabled()) {
      log.debug("String_Node_Str");
    }
    ArrayList<ViewMaker> makers=new ArrayList<ViewMaker>();
    makers.add(new DefaultViewMaker());
    if (null != vms)     for (    Class<? extends ViewMaker> type : vms.value())     makers.add(type.newInstance());
    if (log.isDebugEnabled())     log.debugf("String_Node_Str",mainModule.getName());
    urls=new UrlMapImpl(ioc,context);
    urls.setOk(mainModule.getAnnotation(Ok.class));
    urls.setFail(mainModule.getAnnotation(Fail.class));
    urls.setAdaptBy(mainModule.getAnnotation(AdaptBy.class));
    urls.setFilters(mainModule.getAnnotation(Filters.class));
    urls.setEncoding(mainModule.getAnnotation(Encoding.class));
    urls.add(makers,mainModule);
    Modules modules=mainModule.getAnnotation(Modules.class);
    if (null != modules) {
      for (      Class<?> module : modules.value()) {
        if (log.isDebugEnabled())         log.debugf("String_Node_Str",module.getName());
        urls.add(makers,module);
      }
      for (      String packageZ : modules.packages()) {
        if (log.isDebugEnabled())         log.debugf("String_Node_Str",packageZ);
        List<Class<?>> list=Resources.scanClass(null,Package.getPackage(packageZ));
        if (list != null)         for (        Class<?> module : list) {
          if (log.isDebugEnabled())           log.debugf("String_Node_Str",module.getName());
          urls.add(makers,module);
        }
      }
    }
    config.getServletContext().setAttribute(UrlMap.class.getName(),urls);
    if (null != lc) {
      if (log.isDebugEnabled())       log.debugf("String_Node_Str",lc.value());
      msgss=Mirror.me(lc.type()).born(lc.value()).load();
    }
 else     if (log.isDebugEnabled())     log.debug("String_Node_Str");
    if (null != sb) {
      if (log.isInfoEnabled())       log.info("String_Node_Str");
      Setup setup=sb.value().newInstance();
      config.getServletContext().setAttribute(Setup.class.getName(),setup);
      setup.init(config);
    }
  }
 catch (  InstantiationException e) {
    throw Lang.wrapThrow(e);
  }
catch (  IllegalAccessException e) {
    throw Lang.wrapThrow(e);
  }
}