System.err.println("Bug 1004[TGMapped "+tgMapped+"]: Init AppContext @ "+info+" on thread "+thread.getName()+" "+toHexString(thread.hashCode())+ ": tg "+threadGroup.getName()+" "+toHexString(threadGroup.hashCode())+ " -> appCtx [ main "+mainThreadAppContext+" "+toHexString(mainThreadAppContextHash)+ " -> this "+thisThreadAppContext+" "+toHexString(thisThreadAppContextHash) + " ] "); final int mainThreadAppContextHash = mainThreadAppContext.hashCode(); final int thisThreadAppContextHash = thisThreadAppContext.hashCode(); System.err.println("Bug 1004[TGMapped "+tgMapped+"]: OK AppContext @ "+info+" on thread "+thread.getName()+" "+toHexString(thread.hashCode())+ ": tg "+threadGroup.getName()+" "+toHexString(threadGroup.hashCode())+ " : appCtx [ this "+thisThreadAppContext+" "+toHexString(thisThreadAppContextHash)+ " , main "+mainThreadAppContext+" "+toHexString(mainThreadAppContextHash) + " ] "); final int mainThreadAppContextHash = null != mainThreadAppContext ? mainThreadAppContext.hashCode() : 0; final int thisThreadAppContextHash = null != thisThreadAppContext ? thisThreadAppContext.hashCode() : 0; System.err.println("Bug 1004[TGMapped "+tgMapped+"]: No AppContext @ "+info+" on thread "+thread.getName()+" "+toHexString(thread.hashCode())+ ": tg "+threadGroup.getName()+" "+toHexString(threadGroup.hashCode())+ " -> appCtx [ this "+thisThreadAppContext+" "+toHexString(thisThreadAppContextHash)+ " -> main "+mainThreadAppContext+" "+toHexString(mainThreadAppContextHash) + " ] ");
t = Thread.currentThread(); if( DEBUG ) { System.err.println("Bug 1004: Invoke.0 on current AppContext thread: "+t+" "+toHexString(t.hashCode())); if( DEBUG ) { final int tgHash = null != tg ? tg.hashCode() : 0; System.err.println("Bug 1004: Invoke.1 on new AppContext thread: "+t+" "+toHexString(t.hashCode())+", tg "+tg+" "+toHexString(tgHash));