title: OutOfMemory Error while trying to extract a large jar using ZipFileSet
body: <p>With jdk1.5, i get an OutofMemoryError while trying to extract a reasonably large jar.
  However, this does not happen on jdk6. Is it because of different default heap-size/permgen settings on jdk1.5 and jdk6 or is this a bug in jdk1.5 that was fixed in jdk6?</p>
  
  <pre><code>import java.io.*;
  import java.util.zip.*;
  
  public class UnZip {
     final int BUFFER = 2048;
     public static void main (String argv[]) {
        try {
           BufferedOutputStream dest = null;
           FileInputStream fis = new FileInputStream(argv[0]);
           ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
           ZipEntry entry;
           while((entry = zis.getNextEntry()) != null) {
              System.out.println("Extracting: " +entry);
              int count;
              byte data[] = new byte[BUFFER];
              // write the files to the disk
              FileOutputStream fos = new FileOutputStream(entry.getName());
              dest = new BufferedOutputStream(fos, BUFFER);
              while ((count = zis.read(data, 0, BUFFER)) != -1) {
                 dest.write(data, 0, count);
              }
              dest.flush();
              dest.close();
           }
           zis.close();
        } catch(Exception e) {
           e.printStackTrace();
        }
     }
  }
  </code></pre>