Julian Cable created KARAF-4474:
-----------------------------------

             Summary: ArrayIndexOutOfBoundsException installing webbundle
                 Key: KARAF-4474
                 URL: https://issues.apache.org/jira/browse/KARAF-4474
             Project: Karaf
          Issue Type: Bug
    Affects Versions: 4.0.4
         Environment: Java 7, Java 8
            Reporter: Julian Cable


Exception thrown installing with 4.0.4 but 3.0.6 is ok. Steps to recreate:

1) Create a .war
    mvn archetype:generate -DarchetypeGroupId=org.apache.camel.archetypes 
-DarchetypeArtifactId=camel-archetype-webconsole  -DarchetypeVersion=2.12.4 
-DgroupId=test -DartifactId=t1 -Dversion=0.1
    cd t1
    mvn package
    cd ..
2) install in a clean karaf
    tar xf apache-karaf-4.0.4.tar.gz
    cd apache-karaf-4.0.4
    bin/karaf
    karaf@root()> feature:install war
    karaf@root()> bundle:install -s 
"webbundle:file:../t1/target/t1-0.1.war?Bundle-SymbolicName=t1&WebContextPath=t1"
 
The following exception results and karaf hangs:

java.lang.ArrayIndexOutOfBoundsException: 176
        at aQute.bnd.osgi.Clazz.classConstRef(Clazz.java:1862)
        at aQute.bnd.osgi.Clazz.crawl(Clazz.java:1166)
        at aQute.bnd.osgi.Clazz.doCode(Clazz.java:1134)
        at aQute.bnd.osgi.Clazz.doAttribute(Clazz.java:945)
        at aQute.bnd.osgi.Clazz.doAttributes(Clazz.java:910)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:741)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:494)
        at aQute.bnd.osgi.Clazz.parseClassFileWithCollector(Clazz.java:483)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:473)
        at aQute.bnd.osgi.Analyzer.analyzeJar(Analyzer.java:2177)
        at aQute.bnd.osgi.Analyzer.analyzeBundleClasspath(Analyzer.java:2114)
        at aQute.bnd.osgi.Analyzer.analyze(Analyzer.java:138)
        at aQute.bnd.osgi.Analyzer.calcManifest(Analyzer.java:616)
        at org.ops4j.pax.swissbox.bnd.BndUtils.createBundle(BndUtils.java:161)
        at 
org.ops4j.pax.url.war.internal.AbstractConnection.createBundle(AbstractConnection.java:174)
        at 
org.ops4j.pax.url.war.internal.WebBundleConnection.createBundle(WebBundleConnection.java:108)
        at 
org.ops4j.pax.url.war.internal.AbstractConnection.getInputStream(AbstractConnection.java:143)
        at 
org.ops4j.pax.url.war.internal.WarConnection.getInputStream(WarConnection.java:33)
        at 
org.apache.felix.framework.util.SecureAction.getURLConnectionInputStream(SecureAction.java:525)
        at 
org.apache.felix.framework.cache.JarRevision.initialize(JarRevision.java:166)
        at 
org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:77)
        at 
org.apache.felix.framework.cache.BundleArchive.createRevisionFromLocation(BundleArchive.java:878)
        at 
org.apache.felix.framework.cache.BundleArchive.reviseInternal(BundleArchive.java:550)
        at 
org.apache.felix.framework.cache.BundleArchive.<init>(BundleArchive.java:153)
        at 
org.apache.felix.framework.cache.BundleCache.create(BundleCache.java:277)
        at org.apache.felix.framework.Felix.installBundle(Felix.java:2971)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:167)
        at org.apache.karaf.bundle.command.Install.execute(Install.java:77)
        at 
org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)
        at 
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)
        at 
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)
        at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)
        at 
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)
        at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
        at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)
        at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)
        at 
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)
        at 
org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:270)
        at java.lang.Thread.run(Thread.java:745)
java.lang.ArrayIndexOutOfBoundsException: 176
        at aQute.bnd.osgi.Clazz.classConstRef(Clazz.java:1862)
        at aQute.bnd.osgi.Clazz.crawl(Clazz.java:1166)
        at aQute.bnd.osgi.Clazz.doCode(Clazz.java:1134)
        at aQute.bnd.osgi.Clazz.doAttribute(Clazz.java:945)
        at aQute.bnd.osgi.Clazz.doAttributes(Clazz.java:910)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:741)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:494)
        at aQute.bnd.osgi.Clazz.parseClassFileWithCollector(Clazz.java:483)
        at aQute.bnd.osgi.Clazz.parseClassFile(Clazz.java:473)
        at aQute.bnd.osgi.Analyzer.analyzeJar(Analyzer.java:2177)
        at aQute.bnd.osgi.Analyzer.analyzeBundleClasspath(Analyzer.java:2114)
        at aQute.bnd.osgi.Analyzer.analyze(Analyzer.java:138)
        at aQute.bnd.osgi.Analyzer.calcManifest(Analyzer.java:616)
        at org.ops4j.pax.swissbox.bnd.BndUtils.createBundle(BndUtils.java:161)
        at 
org.ops4j.pax.url.war.internal.AbstractConnection.createBundle(AbstractConnection.java:174)
        at 
org.ops4j.pax.url.war.internal.WebBundleConnection.createBundle(WebBundleConnection.java:108)
        at 
org.ops4j.pax.url.war.internal.AbstractConnection.getInputStream(AbstractConnection.java:143)
        at 
org.ops4j.pax.url.war.internal.WarConnection.getInputStream(WarConnection.java:33)
        at 
org.apache.felix.framework.util.SecureAction.getURLConnectionInputStream(SecureAction.java:525)
        at 
org.apache.felix.framework.cache.JarRevision.initialize(JarRevision.java:166)
        at 
org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:77)
        at 
org.apache.felix.framework.cache.BundleArchive.createRevisionFromLocation(BundleArchive.java:878)
        at 
org.apache.felix.framework.cache.BundleArchive.reviseInternal(BundleArchive.java:550)
        at 
org.apache.felix.framework.cache.BundleArchive.<init>(BundleArchive.java:153)
        at 
org.apache.felix.framework.cache.BundleCache.create(BundleCache.java:277)
        at org.apache.felix.framework.Felix.installBundle(Felix.java:2971)
        at 
org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:167)
        at org.apache.karaf.bundle.command.Install.execute(Install.java:77)
        at 
org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)
        at 
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)
        at 
org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)
        at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)
        at 
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)
        at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
        at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)
        at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)
        at 
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)
        at 
org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:270)
        at java.lang.Thread.run(Thread.java:745)





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to