【问题标题】:Exception when deploying on glassfish: ArrayIndexOutOfBoundsException: 9578在 glassfish 上部署时出现异常:ArrayIndexOutOfBoundsException: 9578
【发布时间】:2018-10-07 12:41:12
【问题描述】:

当我在 tomcat 上部署我的 war 文件时没问题,但是当我在 glassfish 上部署它时出现异常,我搜索但没有找到如何解决这个问题的结果。

java.lang.ArrayIndexOutOfBoundsException: 9578
    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 org.glassfish.hk2.classmodel.reflect.Parser$5.on(Parser.java:363)
    at com.sun.enterprise.v3.server.ReadableArchiveScannerAdapter.handleEntry(ReadableArchiveScannerAdapter.java:171)
    at com.sun.enterprise.v3.server.ReadableArchiveScannerAdapter.onSelectedEntries(ReadableArchiveScannerAdapter.java:133)
    at org.glassfish.hk2.classmodel.reflect.Parser.doJob(Parser.java:348)
    at org.glassfish.hk2.classmodel.reflect.Parser.access$300(Parser.java:70)
    at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:307)
    at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:296)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
...............

[#|2018-10-07T15:19:22.345+0330|SEVERE|glassfish3.1.2|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=84;_ThreadName=Thread-2;|Exception while loading the app|#]

[#|2018-10-07T15:19:25.182+0330|SEVERE|glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=84;_ThreadName=Thread-2;|Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TestController' defined in file [E:\glassfish3-Reservation\glassfish3\glassfish\domains\domain1\applications\myproject\WEB-INF\classes\com\company\controller\TestController.class]: Instantiation of bean failed; nested exception is java.lang.ExceptionInInitializerError

【问题讨论】:

    标签: java exception jersey glassfish hk2


    【解决方案1】:

    如果可以,您最好的选择是更新您的 Glassfish 服务器。您的版本 3.1.2 太旧了,当前版本是 5.0。

    另一种选择是在 TestController 类中查找 Lambda 表达式,然后将其删除或替换为标准代码。

    当您使用 Lambda 表达式或更新的 Java 字节码和版本太旧的 asm.jar 时,似乎会发生此异常。这与捆绑了 asm.jar 3.1 的 Jersey 1.x 捆绑的旧版本 Glassfish 有关。此版本似乎与 Java8 或更新的字节码不完全兼容。

    更多相关信息:

    【讨论】:

      猜你喜欢
      • 2023-03-06
      • 1970-01-01
      • 2011-10-28
      • 2018-02-13
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多