public static <T> void serialize(ArrayList<T> objToSerialize, String filename, String pathKey)
      throws Exception {
    FileOutputStream output = null;
    ObjectOutputStream objOut = null;
    try {
      File serializeF = FileUtil.createNewLocalFile(pathKey, "", filename);

      output = new FileOutputStream(serializeF);
      objOut = new ObjectOutputStream(output);
      for (int i = 0; i < objToSerialize.size(); i++) {
        objOut.writeObject(objToSerialize.get(i));
      }
    } catch (Exception ex) {
      throw new ApplicationException(
          "[ObjSerializeHelper.serialize] Unable to serialize obj to a file.", ex);
    } finally {
      if (output != null) {
        output.close();
      }
      if (objOut != null) {
        objOut.flush();
        objOut.close();
      }
    }
  }