Cannot deploy Java app to Wildfly 10 when upgrading BouncyCastle from 1.62 to 1.66

264 Views Asked by At

I got a Java application which is using BouncyCastle bcprov-jdk15on, bcpmail-jdk15on and bcpkix-jdk15on version 1.62. Then I wish to upgrade BouncyCastle library from 1.62 to 1.66. I'll show the following pom source code:

<dependencies>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk15on</artifactId>
        <version>1.66</version>    
        <scope>provided</scope>   
    </dependency>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcmail-jdk15on</artifactId>
        <version>1.66</version>    
        <scope>provided</scope>   
    </dependency>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk15on</artifactId>
        <version>1.66</version>    
        <scope>provided</scope>   
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-server</artifactId>
        <version>1.8</version>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-json</artifactId>
        <version>1.8</version>
    </dependency>
    <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-client</artifactId>
        <version>1.8</version>
    </dependency>
</dependencies>

Then I tried to deploy the application as War file to RHEL server with Wildfly 10, jdk 1.8u341. Even though I have the following message:

Cannot upload deployment: 
{"WFLYCTL0080: Failed services" => 
    {"jboss.undertow.deployment.default-server.default-host./myJavaApp" => 
          "org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./myJavaApp: java.lang.ArrayIndexOutOfBoundsException: 1612 Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"},
"WFLYCTL0412: Required services that are not installed:" => ["jboss.undertow.deployment.default-server.default-host./myJavaApp"],
"WFLYCTL0180: Services with missing/unavailable dependencies" => undefined}

I also checked in Wildfly log and I have the following messages:

10:44:48,116 WARN  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0059: Class Path entry lib/bcpkix-jdk15on-151.jar in /content/myJavaApp.war/WEB-INF/lib/ejbca-ws-cli-6-6.0.jar  does not point to a valid jar for a Class-Path reference.
10:44:48,116 WARN  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0059: Class Path entry lib/bcprov-jdk15on-151.jar in /content/myJavaApp.war/WEB-INF/lib/ejbca-ws-cli-6-6.0.jar  does not point to a valid jar for a Class-Path reference.

10:44:48,147 WARN  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0003: Could not index class bcpkix-jdk15on-1.66.jar/META-INF/versions/9/module-info.class at /content/myJavaApp.war/WEB-INF/lib: java.lang.IllegalStateException: Unknown tag! pos=4 poolCount = 107
        at org.jboss.jandex.Indexer.processConstantPool(Indexer.java:1416)
        at org.jboss.jandex.Indexer.index(Indexer.java:1450)
        at java.lang.Thread.run(Thread.java:750)
        .....

10:44:48,283 WARN  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0003: Could not index class bcprov-jdk15on-1.66.jar/META-INF/versions/9/module-info.class at /content/myJavaApp.war/WEB-INF/lib: java.lang.IllegalStateException: Unknown tag! pos=4 poolCount = 337
        at org.jboss.jandex.Indexer.processConstantPool(Indexer.java:1416)
        at org.jboss.jandex.Indexer.index(Indexer.java:1450)
        ....

10:44:51,082 WARN  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0059: Class Path entry jaxb-api.jar in /content/myJavaApp.war/WEB-INF/lib/jaxb-impl-2.2.3-1.jar  does not point to a valid jar for a Class-Path reference.

  /WEB-INF/lib
  /WEB-INF/classes
10:44:52,100 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 182) MSC000001: Failed to start service jboss.undertow.deployment.default-server.default-host./myJavaApp: org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./myJavaApp: java.lang.ArrayIndexOutOfBoundsException: 1612
        at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:85)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612
        at org.objectweb.asm.ClassReader.readClass(Unknown Source)
        at org.objectweb.asm.ClassReader.accept(Unknown Source)
        at org.objectweb.asm.ClassReader.accept(Unknown Source)
        at com.sun.jersey.spi.scanning.AnnotationScannerListener.onProcess(AnnotationScannerListener.java:133)
        at com.sun.jersey.core.spi.scanning.JarFileScanner.scan(JarFileScanner.java:97)
        at com.sun.jersey.spi.scanning.WebAppResourcesScanner$1.f(WebAppResourcesScanner.java:94)
        at com.sun.jersey.core.util.Closing.f(Closing.java:71)
        at com.sun.jersey.spi.scanning.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:92)
        ... 

10:44:52,118 ERROR [org.jboss.as.controller.management-operation] (External Management Request Threads -- 8) WFLYCTL0013: Operation ("add") failed - address: ([("deployment" => "myJavaApp.war")]) - failure description: {
    "WFLYCTL0080: Failed services" => {"jboss.undertow.deployment.default-server.default-host./myJavaApp" => "org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./myJavaApp: java.lang.ArrayIndexOutOfBoundsException: 1612
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"},
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.undertow.deployment.default-server.default-host./myJavaApp"],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => undefined
}
10:44:52,119 ERROR [org.jboss.as.server] (External Management Request Threads -- 8) WFLYSRV0021: Deploy of deployment "myJavaApp.war" was rolled back with the following failure message:
{
    "WFLYCTL0080: Failed services" => {"jboss.undertow.deployment.default-server.default-host./myJavaApp" => "org.jboss.msc.service.StartException in service jboss.undertow.deployment.default-server.default-host./myJavaApp: java.lang.ArrayIndexOutOfBoundsException: 1612
    Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"},
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.undertow.deployment.default-server.default-host./myJavaApp"],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => undefined
}
10:44:52,265 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0028: Stopped deployment myJavaApp.war (runtime-name: myJavaApp.war) in 145ms
10:44:52,266 INFO  [org.jboss.as.controller] (External Management Request Threads -- 8) WFLYCTL0183: Service status report
WFLYCTL0186:   Services which failed to start:      service jboss.undertow.deployment.default-server.default-host./myJavaApp

The java app has dependencies defined from pom file and dependencies created manually by Netbeans.

It happens when I try to upgrade BouncyCastle library from 1.62 to 1.66. What can I do?

Edits:

  1. When I tried to deploy it by Wildfly 24, I get the following message from Admin Console:

       {"WFLYCTL0080: Failed services" => 
       {"jboss.deployment.unit.\"myJavaApp.war\".undertow-deployment" => 
        "java.lang.ArrayIndexOutOfBoundsException: 1612
         Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"}}
    

    Wildfly 24 log:

     15:32:20,821 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 91) MSC000001: Failed to start service 
           jboss.deployment.unit."myJavaApp.war".undertow-deployment: org.jboss.msc.service.StartException in service jboss.deployment.unit."myJavaApp.war".undertow-deployment: java.lang.ArrayIndexOutOfBoundsException: 1612
             at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:90)
             at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
             at java.util.concurrent.FutureTask.run(FutureTask.java:266)
             at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
     Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612
             at org.objectweb.asm.ClassReader.readClass(Unknown Source)
             at org.objectweb.asm.ClassReader.accept(Unknown Source)
             at org.objectweb.asm.ClassReader.accept(Unknown Source)
             at com.sun.jersey.spi.scanning.AnnotationScannerListener.onProcess(AnnotationScannerListener.java:133)
             at com.sun.jersey.core.spi.scanning.JarFileScanner.scan(JarFileScanner.java:97)
             at com.sun.jersey.spi.scanning.WebAppResourcesScanner$1.f(WebAppResourcesScanner.java:94)
             at com.sun.jersey.core.util.Closing.f(Closing.java:71)
             at com.sun.jersey.spi.scanning.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:92)
             ...
     15:32:20,830 ERROR [org.jboss.as.controller.management-operation] (External Management Request Threads -- 1) WFLYCTL0013: Operation ("add") 
              failed - address: ([("deployment" => "myJavaApp.war")]) - failure description: {"WFLYCTL0080: Failed services" => 
                      {"jboss.deployment.unit.\"myJavaApp.war\".undertow-deployment" => "java.lang.ArrayIndexOutOfBoundsException: 1612
         Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"}}
     15:32:20,831 ERROR [org.jboss.as.controller.management-operation] (External Management Request Threads -- 1) WFLYCTL0013: Operation ("add") 
              failed - address: ([("deployment" => "myJavaApp.war")]) - failure description: {"WFLYCTL0080: Failed services" => 
                      {"jboss.deployment.unit.\"myJavaApp.war\".undertow-deployment" => "java.lang.ArrayIndexOutOfBoundsException: 1612
         Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"}}
     15:32:20,832 ERROR [org.jboss.as.server] (External Management Request Threads --1) WFLYSRV0021: Deploy of deployment "myJavaApp.war" was rolled back with the following failure message:
     {"WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"myJavaApp.war\".undertow-deployment" => "java.lang.ArrayIndexOutOfBoundsException: 1612
         Caused by: java.lang.ArrayIndexOutOfBoundsException: 1612"}}
    
0

There are 0 best solutions below