Валидатор требует скопировать данные из input в output, остальные пункты проходят, не пойму что ему не нравится:
byte[] buffer = new byte[8 * 1024];
        int len;
        while ((len = zis.read(buffer)) > 0) {
            zos.write(buffer, 0, len);
        }