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

[jira] [Updated] (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:all-tabpanel ]

Sebb updated COMPRESS-193:
--------------------------

    Description: 
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}

  was:
I am getting java.io.IOException: This archives contains unclosed entries.Below is the code. Any help is much appreciated

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();
		}
 
    } 

    
> 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