Program: 1759
Project: 1759
Buggy source:
/** 
 * initializes the passed in server.  Use this if you need to override the  StrestServer or set a new Router, ect.   In other cases you should use the the StrestServer.instance methods
 * @param server
 * @param config
 * @throws Exception
 */
public void initialize(DynMap config) throws Exception {
  if (config == null) {
    throw new Exception("String_Node_Str");
  }
  this.setMaxWorkerThreads(config.getInteger("String_Node_Str",10));
  this.setMaxIOThreads(config.getInteger("String_Node_Str",8));
  List<String> controllerPackages=config.getList(String.class,"String_Node_Str");
  if (controllerPackages != null) {
    for (    String c : controllerPackages) {
      this.getRouter().addControllerPackage(c);
    }
  }
  List<String> filters=config.getList(String.class,"String_Node_Str");
  if (filters != null) {
    this.getRouter().setFilters("String_Node_Str",filters);
  }
  this.getRouter().setServer(this);
  DynMap listeners=config.getMap("String_Node_Str",new DynMap());
  for (  String name : listeners.keySet()) {
    DynMap listenerConfig=listeners.getMap(name,new DynMap());
    ServerListenerBase listener=null;
    if (listenerConfig.containsKey("String_Node_Str")) {
      listener=Reflection.instance(ServerListenerBase.class,listenerConfig.getString("String_Node_Str"),this,listenerConfig);
    }
 else {
      Class cls=this.listenerClasses.get(name);
      if (cls == null) {
        log.warn("String_Node_Str" + name + "String_Node_Str");
        continue;
      }
      listener=Reflection.instance(cls,this,listenerConfig);
    }
    if (listener == null) {
      log.warn("String_Node_Str" + name + "String_Node_Str");
      continue;
    }
    this.listeners.put(name,listener);
  }
}

Fixed version (ground truth):
/** 
 * initializes the passed in server.  Use this if you need to override the  StrestServer or set a new Router, ect.   In other cases you should use the the StrestServer.instance methods
 * @param server
 * @param config
 * @throws Exception
 */
public void initialize(DynMap config) throws Exception {
  if (config == null) {
    throw new Exception("String_Node_Str");
  }
  this.setMaxWorkerThreads(config.getInteger("String_Node_Str",10));
  this.setMaxIOThreads(config.getInteger("String_Node_Str",8));
  List<String> controllerPackages=config.getList(String.class,"String_Node_Str");
  if (controllerPackages != null) {
    for (    String c : controllerPackages) {
      this.getRouter().addControllerPackage(c);
    }
  }
  List<String> filters=config.getList(String.class,"String_Node_Str");
  if (filters != null) {
    this.getRouter().setFilters("String_Node_Str",filters);
  }
  this.getRouter().setServer(this);
  DynMap listeners=config.getMap("String_Node_Str",new DynMap());
  for (  String name : listeners.keySet()) {
    DynMap listenerConfig=listeners.getMap(name,new DynMap());
    ServerListenerBase listener=null;
    if (listenerConfig.containsKey("String_Node_Str")) {
      listener=Reflection.instance(ServerListenerBase.class,listenerConfig.getString("String_Node_Str"),this,listenerConfig);
    }
 else {
      Class<? extends ServerListenerBase> cls=this.listenerClasses.get(name);
      if (cls == null) {
        log.warn("String_Node_Str" + name + "String_Node_Str");
        continue;
      }
      listener=Reflection.instance(cls,this,listenerConfig);
    }
    if (listener == null) {
      log.warn("String_Node_Str" + name + "String_Node_Str");
      continue;
    }
    this.listeners.put(name,listener);
  }
}