e.printStackTrace();
  protected SortedMap buildRollupCargoProtos (ResultSet rs, UIDGenerator generator, Map protoToNode, Map protoToName) {    SortedMap nameToNode = new TreeMap ();    try{      while(rs.next()){	String type  = rs.getString (1);	String nomen = rs.getString (2);	String proto = rs.getString (3);	int aggNumber = rs.getInt (4);	String owner = rs.getString (5);	double weight    = rs.getDouble (7);	double width     = rs.getDouble (8);	double height    = rs.getDouble (9);	double depth     = rs.getDouble (10);	double area      = rs.getDouble (11);	double volume    = rs.getDouble (12);	String nameKey = nomen;	if (aggregateByUnit)	  nameKey = owner + nomen;	String key = proto;			if (aggregateByUnit)	  key = owner + proto; // the key is unit+proto	AggregateCargoType aggTypeNode = (AggregateCargoType)protoToNode.get(key);	if(aggTypeNode == null){	  aggTypeNode = createCargoType (generator, proto, type, nomen, aggNumber, aggNumber, owner,					 weight, width, height, depth, area, volume);	  nameToNode.put  (nameKey, aggTypeNode);	  protoToNode.put (key, aggTypeNode);	  protoToName.put (key, nameKey);	  	  if (debug)	    TPFDDLoggerFactory.createLogger().logMessage(Logger.NORMAL, Logger.GENERIC, "FilterQuery.buildRollupCargoProtos - mapping key " + key + " to " + aggTypeNode);	}else{	  aggTypeNode.incrementTotalAggNumber(aggNumber);	}      }    } catch (SQLException e) {      TPFDDLoggerFactory.createLogger().logMessage(Logger.NORMAL, Logger.GENERIC, "FilterQuery.buildRollupCargoProtos - SQLError : " + e);    }finally{      if(rs!=null) {	try { rs.close(); } catch (SQLException e){	  TPFDDLoggerFactory.createLogger().logMessage(Logger.NORMAL, Logger.GENERIC, "FilterQuery.buildRollupCargoProtos - " +			      "closing result set, got sql error : " + e); 	}      }    }    return nameToNode;  }