commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Soundararajan Thevaraj (JIRA)" <j...@apache.org>
Subject [jira] Updated: (COMPRESS-105) While Archiving the empty directories are not archived to the archive.
Date Mon, 19 Apr 2010 12:56:49 GMT

     [ https://issues.apache.org/jira/browse/COMPRESS-105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Soundararajan Thevaraj updated COMPRESS-105:
--------------------------------------------

    Attachment: ArchiveIssue.JPG

For your reference . I have attached screen shot of the archive created using Compressed Zip
of Windows XP.

> While Archiving the empty directories are not archived to the archive.
> ----------------------------------------------------------------------
>
>                 Key: COMPRESS-105
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-105
>             Project: Commons Compress
>          Issue Type: Bug
>         Environment: 64 bit Windows Vista, JDK1.4.1_11
>            Reporter: Soundararajan Thevaraj
>             Fix For: 1.0
>
>         Attachments: ArchiveIssue.JPG, TestDirectory.java
>
>
> I am trying to create a zip archive. I am having a empty directory "test" . When i try
to create it to archive . The archive created but the test folder is created as file. And
also I got the below exception.
> Temp file created at C:\Users\Soundar\AppData\Local\Temp\sample5278197872513888977.zip
> Exception in thread "main" java.io.IOException: This archives contains unclosed entries.
> 	at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.finish(ZipArchiveOutputStream.java:343)
> 	at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.close(ZipArchiveOutputStream.java:550)
> 	at com.tcs.tools.archive.test.ArchiveTest.createArchive(ArchiveTest.java:64)
> 	at com.tcs.tools.archive.test.ArchiveTest.main(ArchiveTest.java:119)
> Code used
> -------------
> 	protected File createArchive(String archivename) throws Exception {
> 		ArchiveOutputStream out = null;
> 		OutputStream stream = null;
> 		ArchiveStreamFactory factory = new ArchiveStreamFactory();
> 		try {
> 			File archive = File.createTempFile("sample", "." + archivename);
> 			System.out.println("Temp file created at " + archive.getAbsolutePath());
> 			List archiveList = new ArrayList();
> 			stream = new FileOutputStream(archive);
> 			out = factory.createArchiveOutputStream(archivename, stream);
> 			final File file7 = new File("C:\\Users\\Soundar\\Desktop\\test");
> 			addArchiveEntry(out, "test", file7);
> 			System.out.println("Going to process directory");
> 			System.out.println("Directory Name =" + file7.getName());
> 			ArchiveEntry entry = out.createArchiveEntry(file7, "test");
> 			out.putArchiveEntry(entry);
> 			IOUtils.copy(new FileInputStream(file7), out);
> 			out.closeArchiveEntry();
> 			out.finish();
> 			return archive;
> 		} finally {
> 			if (out != null) {
> 				out.close();
> 			} else if (stream != null) {
> 				stream.close();
> 			}
> 		}
> 	}
> Note
> ------
> I tried the same archiving using the compressed zip of Windows Vista default feature.
It creates the Sample.zip which contains the empty test folder as archived.
> I know there is a work around  using java.util.zip.zipEntry. But is there a  work around
in our Compress itself?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message