What causes java.util.zip.ZipException error in opening zip file randomly after application has been running for a while in JBoss EAP 5

Solution Unverified - Updated -

Issue

We randomly see 'ZipException: error reading zip file' occur when trying to load a class after an application has been running fine for some time. The class is in a jar which we added via the jboss-service.xml :

<classpath codebase="../../../myapp/lib" archives="my-common-classes.jar"/>

The exception we see is :

 Unexpected error during load of:com.redhat.examples.ExampleObject
java.lang.RuntimeException: Unable to load class byte code com.redhat.examples.ExampleObject
        at org.jboss.classloader.plugins.ClassLoaderUtils.loadByteCode(ClassLoaderUtils.java:155)
        at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:604)
        at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:592)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseClassLoader.java:591)
        at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseClassLoader.java:568)
        at org.jboss.classloader.spi.base.BaseDelegateLoader.loadClass(BaseDelegateLoader.java:135)
        at org.jboss.classloader.spi.filter.FilteredDelegateLoader.loadClass(FilteredDelegateLoader.java:131)
        at org.jboss.classloader.spi.base.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:455)
        at org.jboss.classloader.spi.base.ClassLoaderManager.nextTask(ClassLoaderManager.java:267)
        at org.jboss.classloader.spi.base.ClassLoaderManager.process(ClassLoaderManager.java:166)
        at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseClassLoaderDomain.java:287)
        at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseClassLoaderDomain.java:1163)
        at org.jboss.classloader.spi.base.BaseClassLoader.loadClassFromDomain(BaseClassLoader.java:862)
        at org.jboss.classloader.spi.base.BaseClassLoader.doLoadClass(BaseClassLoader.java:502)
        at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:447)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at com.redhat.examples.ExampleBean (ExampleBean.java:123)
        ...
Caused by: java.util.zip.ZipException: error reading zip file
        at java.util.zip.ZipFile.read(Native Method)
        at java.util.zip.ZipFile.access$1400(ZipFile.java:56)
        at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:679)
        at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:415)
        at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
        at java.io.FilterInputStream.read(FilterInputStream.java:107)
        at org.jboss.virtual.plugins.context.zip.CertificateReaderInputStream.read(CertificateReaderInputStream.java:129)
        at org.jboss.classloader.plugins.ClassLoaderUtils.readBytes(ClassLoaderUtils.java:213)
        at org.jboss.classloader.plugins.ClassLoaderUtils.loadByteCode(ClassLoaderUtils.java:151)
        ... 26 more

Environment

Red Hat JBoss Enterprise Application Platform (EAP) 5.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content