2013-10-03 26 views
5

Weblogicでアプリケーションをデプロイする際にこのエラーが発生します。WLSでアプリケーションをデプロイする際にjava.lang.ArrayIndexOutOfBoundsExceptionが発生する

<Oct 3, 2013 12:18:00 PM IST> <Error> <Deployer> <BEA-149205> <Failed to initialize the application "MyApp" due to error java.lang.ArrayIndexOutOfBoundsException: 4818 
8 
java.lang.ArrayIndexOutOfBoundsException: 48188 
     at com.bea.objectweb.asm.ClassReader.readClass(Unknown Source) 
     at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
     at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
     at weblogic.application.utils.annotation.ClassInfoImpl.<init>(ClassInfoImpl.java:45) 
     at weblogic.application.utils.annotation.ClassfinderClassInfos.polulateOneClassInfo(ClassfinderClassInfos.java:145) 
     Truncated. see log file for complete stacktrace 
Caused By: java.lang.ArrayIndexOutOfBoundsException: 48188 
     at com.bea.objectweb.asm.ClassReader.readClass(Unknown Source) 
     at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
     at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
     at weblogic.application.utils.annotation.ClassInfoImpl.<init>(ClassInfoImpl.java:45) 
     at weblogic.application.utils.annotation.ClassfinderClassInfos.polulateOneClassInfo(ClassfinderClassInfos.java:145) 
     Truncated. see log file for complete stacktrace 
> 

これはクラスが正しく読み込まれないためですが、どのようにして見つけられますか? 私はHotspot 1.7を使用していますが、-verboseを使用しています:class誤ってロードされたクラスを見つけられません。

ここでは、詳細なクラス読み込みが有効になっているリストがあります。

[Loaded com.bea.objectweb.asm.FieldVisitor from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.MethodVisitor from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.AnnotationVisitor from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.commons.EmptyVisitor from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm.commons_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.ClassReader from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.Attribute from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded com.bea.objectweb.asm.MethodWriter from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded weblogic.servlet.internal.WebAppInternalModuleExtension$PersistenceExtension from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded weblogic.servlet.internal.WebAppInternalModuleExtension$SpringInstrumentationExtension from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded weblogic.cacheprovider.coherence.CoherenceClusterContainer from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded weblogic.servlet.internal.WebAppInternalModuleExtension$CoherenceCacheExtension from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded weblogic.utils.enumerations.FileEnumeration from file:/C:/Oracle/Middleware/modules/com.bea.core.utils_2.0.0.0.jar] 
[Loaded weblogic.utils.classloaders.DirectoryClassFinder$1 from file:/C:/Oracle/Middleware/modules/com.bea.core.utils.classloaders_3.0.0.0.jar] 
[Loaded weblogic.utils.enumerations.EmptyFileContainerException from file:/C:/Oracle/Middleware/modules/com.bea.core.utils_2.0.0.0.jar] 
[Loaded weblogic.utils.enumerations.FileEnumeration$NullDirectoryListException from file:/C:/Oracle/Middleware/modules/com.bea.core.utils_2.0.0.0.jar] 
[Loaded weblogic.utils.enumerations.FileContainer from file:/C:/Oracle/Middleware/modules/com.bea.core.utils_2.0.0.0.jar] 
[Loaded weblogic.utils.enumerations.LIFO_FileContainer from file:/C:/Oracle/Middleware/modules/com.bea.core.utils_2.0.0.0.jar] 
[Loaded com.bea.objectweb.asm.Type from file:/C:/Oracle/Middleware/modules/com.bea.core.repackaged.asm_1.2.0.0_3-2-0.jar] 
[Loaded weblogic.application.internal.flow.ModuleStateDriver$DestroyStateChange from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded weblogic.application.utils.ExceptionUtils from file:/C:/Oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar] 
[Loaded javax.management.RuntimeErrorException from C:\Java\JDK\JDK17~1.0_1\jre\lib\rt.jar] 
[Loaded com.bea.logging.ThrowableWrapper from file:/C:/Oracle/Middleware/modules/com.bea.core.logging_2.0.0.0.jar] 
<Oct 3, 2013 11:51:20 AM IST> <Error> <Deployer> <BEA-149205> <Failed to initialize the application "MyApp" due to error java.lang.ArrayIndexOutOfBoundsException: 48188 
java.lang.ArrayIndexOutOfBoundsException: 48188 
    at com.bea.objectweb.asm.ClassReader.readClass(Unknown Source) 
    at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
    at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
    at weblogic.application.utils.annotation.ClassInfoImpl.<init>(ClassInfoImpl.java:45) 
    at weblogic.application.utils.annotation.ClassfinderClassInfos.polulateOneClassInfo(ClassfinderClassInfos.java:145) 
    Truncated. see log file for complete stacktrace 
Caused By: java.lang.ArrayIndexOutOfBoundsException: 48188 
    at com.bea.objectweb.asm.ClassReader.readClass(Unknown Source) 
    at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
    at com.bea.objectweb.asm.ClassReader.accept(Unknown Source) 
    at weblogic.application.utils.annotation.ClassInfoImpl.<init>(ClassInfoImpl.java:45) 
    at weblogic.application.utils.annotation.ClassfinderClassInfos.polulateOneClassInfo(ClassfinderClassInfos.java:145) 
    Truncated. see log file for complete stacktrace 

furthurを続行する方法についてどのようなヒント?

ありがとうございます!

答えて

7

基本的には、展開内の悪いクラスファイルです。いくつかのlibsはそれらを持っています。

weblogic 12cは例外をキャッチしていないため、原因をログに記録していないので、どちらが該当するのかがわかります。私はOracleにこの問題を提起し、そうするでしょう。

警告をメッセージに変更し、展開を妨げないようにメッセージを変更したsimilar issue in Geronimoを参照してください。

どのファイルに問題があるかもしれないかのヒントはin 12c they are loading resource classes as well which they did not do in previous versionsなので、アプリが以前のバージョンで動作する場合はそれが原因である可能性があります。

どのクラスを見つけるかについては、weblogicインスタンスにデバッグを接続し、java.lang.ArrayIndexOutOfBoundsExceptionに例外ブレークポイントを追加してから、コンテキストを調べてパラメータを見つけようとしてください。

+0

それを試して、ポストバックします..チップのおかげで! –

+1

同じ問題がありました。私はEclipseからデバッガを使いました。それは簡単でした。 EclipseでArrayIndexOutofBoundExceptionを検索し、すべてのコンストラクタにブレークポイントを設定し、サーバー/プロセスにeclipseを添付して、行がヒットするのを待ってから、スタックトレースを調べます。問題の原因となっているURLを持つメソッドがあります(jarfile !クラス名)。先端のおかげで、私の日を救った。 –

+0

が怠惰です。処理中のクラスを印刷するために、weblogic.application.utils.annotation.ClassfinderClassInfosにSystem.out.printlnステートメントを追加しました(http://www.javamonamour.org/2016/01/weblogic-deployment- fails.html) – PierluigiVernetto

関連する問題