You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Stefan Bodewig (JIRA)" <ji...@apache.org> on 2012/07/07 07:05:34 UTC

[jira] [Comment Edited] (COMPRESS-193) java.io.IOException: This archives contains unclosed entries.

    [ https://issues.apache.org/jira/browse/COMPRESS-193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13408575#comment-13408575 ] 

Stefan Bodewig edited comment on COMPRESS-193 at 7/7/12 5:03 AM:
-----------------------------------------------------------------

you'd get that exception when an exception is thrown between any of the putArchiveEntry and corresponding closeArchiveEntry calls.

Otherwise, what Sebb said.
                
      was (Author: bodewig):
    you'd get that exception when an exception is thrown between any of the putArchiveEntry and corresponding closeArchiveEntry calls.
                  
> java.io.IOException: This archives contains unclosed entries.
> -------------------------------------------------------------
>
>                 Key: COMPRESS-193
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-193
>             Project: Commons Compress
>          Issue Type: Bug
>         Environment: Windows Server 2008 R2
>            Reporter: Shishir goswami
>
> I am getting java.io.IOException: This archives contains unclosed entries.
> Below is the code. Any help is much appreciated
> {code}
> final File output = new File("c:\\testdata", "shishir.zip"); 
> final File file1 = new File ("C:\\testdata\test1.xml"); 
> final File file2 = new File ("C:\\testdata\test2.xml"); 
> final OutputStream out = new FileOutputStream(output); 
> ArchiveOutputStream os = null; 
> FileInputStream input1=null;
> FileInputStream input2=null;
> try { 
>     os = new ArchiveStreamFactory() 
>         .createArchiveOutputStream("zip", out); 
>     os.putArchiveEntry(new ZipArchiveEntry("testdata\test1.xml")); 
>     input1 = new FileInputStream(file1);
>     IOUtils.copy(input1, os); 
>     input1.close();
>     os.closeArchiveEntry(); 
>     input2 = new FileInputStream(file2);
>     input2.close();
>     os.putArchiveEntry(new ZipArchiveEntry("testdata\test2.xml")); 
>     IOUtils.copy(input2, os); 
>     os.closeArchiveEntry(); 
>     os.finish();
> } finally { 
>     if (os != null) {
>         os.close(); 
>     }else if (out != null) {
>         out.close();
>     } 
> } 
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira