In this case I've tried to print the domain (ProtectionDomain), as
you can
see two threads have arrived at the same breakpoint.
jdb -attach 8000
Set uncaught java.lang.Throwable
Set deferred uncaught java.lang.Throwable
Initializing jdb ...
VM Started: No frames on the current call stack
main[1] stop in com.sun.jini.start.AggregatePolicyProvider.implies
Deferring breakpoint
com.sun.jini.start.AggregatePolicyProvider.implies.
It will be set after the class is loaded.
main[1] run
Set deferred breakpoint
com.sun.jini.start.AggregatePolicyProvider.implies
Breakpoint hit: "thread=main",
com.sun.jini.start.AggregatePolicyProvider.implies(), line=201 bci=0
main[1] print domain
Breakpoint hit: "thread=main",
com.sun.jini.start.AggregatePolicyProvider.implies(), line=201 bci=0
main[1] where all
Signal Dispatcher:
Finalizer:
[1] java.lang.Object.wait (native method)
[2] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:118)
[3] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:134)
[4] java.lang.ref.Finalizer$FinalizerThread.run (Finalizer.java:159)
Reference Handler:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:485)
[3] java.lang.ref.Reference$ReferenceHandler.run (Reference.java:116)
main:
[1] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[2] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[3] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[4] java.security.AccessController.checkPermission
(AccessController.java:546)
[5] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[6] java.security.ProtectionDomain.seeAllp (ProtectionDomain.java:295)
[7] java.security.ProtectionDomain.toString
(ProtectionDomain.java:255)
[8] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[9] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[10] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[11] java.security.AccessController.checkPermission
(AccessController.java:546)
[12] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[13] java.lang.SecurityManager.checkCreateClassLoader
(SecurityManager.java:594)
[14] java.lang.ClassLoader.checkCreateClassLoader
(ClassLoader.java:177)
[15] java.lang.ClassLoader.<init> (ClassLoader.java:225)
[16] java.security.SecureClassLoader.<init>
(SecureClassLoader.java:93)
[17] java.net.URLClassLoader.<init> (URLClassLoader.java:115)
[18]
com.sun.jini.test.impl.start.aggregatepolicyprovider.GetContextTest.run
(GetContextTest.java:85)
[19] com.sun.jini.qa.harness.MasterTest.doTest (MasterTest.java:252)
[20] com.sun.jini.qa.harness.MasterTest.main (MasterTest.java:142)
no heart without soul:
[1] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[2] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[3] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[4] java.security.AccessController.checkPermission
(AccessController.java:546)
[5] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[6] java.lang.SecurityManager.checkRead (SecurityManager.java:871)
[7] java.io.File.exists (File.java:731)
[8] com.sun.jini.qa.harness.HeartOfTheMachine.hasReasonToLive
(HeartOfTheMachine.java:56)
[9] com.sun.jini.qa.harness.HeartOfTheMachine.ticktack
(HeartOfTheMachine.java:62)
[10] com.sun.jini.qa.harness.HeartOfTheMachine.access$000
(HeartOfTheMachine.java:29)
[11] com.sun.jini.qa.harness.HeartOfTheMachine$1.run
(HeartOfTheMachine.java:45)
[12] java.lang.Thread.run (Thread.java:662)
Thread-2:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-3:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-4:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
RequestHandler:
[1] java.io.FileInputStream.readBytes (native method)
[2] java.io.FileInputStream.read (FileInputStream.java:220)
[3] java.io.BufferedInputStream.fill (BufferedInputStream.java:218)
[4] java.io.BufferedInputStream.read1 (BufferedInputStream.java:258)
[5] java.io.BufferedInputStream.read (BufferedInputStream.java:317)
[6] java.io.ObjectInputStream$PeekInputStream.read
(ObjectInputStream.java:2,265)
[7] java.io.ObjectInputStream$PeekInputStream.readFully
(ObjectInputStream.java:2,278)
[8] java.io.ObjectInputStream$BlockDataInputStream.readShort
(ObjectInputStream.java:2,749)
[9] java.io.ObjectInputStream.readStreamHeader
(ObjectInputStream.java:779)
[10] java.io.ObjectInputStream.<init> (ObjectInputStream.java:279)
[11] com.sun.jini.qa.harness.MasterTest$RequestHandler.run
(MasterTest.java:323)
[12] java.lang.Thread.run (Thread.java:662)
main[1] monitor
main[1] step
Breakpoint hit: "thread=no heart without soul",
com.sun.jini.start.AggregatePolicyProvider.implies(), line=201 bci=0
no heart without soul[1] where all
Signal Dispatcher:
Finalizer:
[1] java.lang.Object.wait (native method)
[2] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:118)
[3] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:134)
[4] java.lang.ref.Finalizer$FinalizerThread.run (Finalizer.java:159)
Reference Handler:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:485)
[3] java.lang.ref.Reference$ReferenceHandler.run (Reference.java:116)
main:
[1] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[2] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[3] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[4] java.security.AccessController.checkPermission
(AccessController.java:546)
[5] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[6] java.security.ProtectionDomain.seeAllp (ProtectionDomain.java:295)
[7] java.security.ProtectionDomain.toString
(ProtectionDomain.java:255)
[8] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[9] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[10] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[11] java.security.AccessController.checkPermission
(AccessController.java:546)
[12] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[13] java.lang.SecurityManager.checkCreateClassLoader
(SecurityManager.java:594)
[14] java.lang.ClassLoader.checkCreateClassLoader
(ClassLoader.java:177)
[15] java.lang.ClassLoader.<init> (ClassLoader.java:225)
[16] java.security.SecureClassLoader.<init>
(SecureClassLoader.java:93)
[17] java.net.URLClassLoader.<init> (URLClassLoader.java:115)
[18]
com.sun.jini.test.impl.start.aggregatepolicyprovider.GetContextTest.run
(GetContextTest.java:85)
[19] com.sun.jini.qa.harness.MasterTest.doTest (MasterTest.java:252)
[20] com.sun.jini.qa.harness.MasterTest.main (MasterTest.java:142)
no heart without soul:
[1] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[2] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[3] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[4] java.security.AccessController.checkPermission
(AccessController.java:546)
[5] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[6] java.lang.SecurityManager.checkRead (SecurityManager.java:871)
[7] java.io.File.exists (File.java:731)
[8] com.sun.jini.qa.harness.HeartOfTheMachine.hasReasonToLive
(HeartOfTheMachine.java:56)
[9] com.sun.jini.qa.harness.HeartOfTheMachine.ticktack
(HeartOfTheMachine.java:62)
[10] com.sun.jini.qa.harness.HeartOfTheMachine.access$000
(HeartOfTheMachine.java:29)
[11] com.sun.jini.qa.harness.HeartOfTheMachine$1.run
(HeartOfTheMachine.java:45)
[12] java.lang.Thread.run (Thread.java:662)
Thread-2:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-3:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-4:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
RequestHandler:
[1] java.io.FileInputStream.readBytes (native method)
[2] java.io.FileInputStream.read (FileInputStream.java:220)
[3] java.io.BufferedInputStream.fill (BufferedInputStream.java:218)
[4] java.io.BufferedInputStream.read1 (BufferedInputStream.java:258)
[5] java.io.BufferedInputStream.read (BufferedInputStream.java:317)
[6] java.io.ObjectInputStream$PeekInputStream.read
(ObjectInputStream.java:2,265)
[7] java.io.ObjectInputStream$PeekInputStream.readFully
(ObjectInputStream.java:2,278)
[8] java.io.ObjectInputStream$BlockDataInputStream.readShort
(ObjectInputStream.java:2,749)
[9] java.io.ObjectInputStream.readStreamHeader
(ObjectInputStream.java:779)
[10] java.io.ObjectInputStream.<init> (ObjectInputStream.java:279)
[11] com.sun.jini.qa.harness.MasterTest$RequestHandler.run
(MasterTest.java:323)
[12] java.lang.Thread.run (Thread.java:662)
no heart without soul[1] step
Breakpoint hit: "thread=main",
com.sun.jini.start.AggregatePolicyProvider.implies(), line=201 bci=0
main[1] where all
Signal Dispatcher:
Finalizer:
[1] java.lang.Object.wait (native method)
[2] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:118)
[3] java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:134)
[4] java.lang.ref.Finalizer$FinalizerThread.run (Finalizer.java:159)
Reference Handler:
[1] java.lang.Object.wait (native method)
[2] java.lang.Object.wait (Object.java:485)
[3] java.lang.ref.Reference$ReferenceHandler.run (Reference.java:116)
main:
[1] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[2] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[3] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[4] java.security.AccessController.checkPermission
(AccessController.java:546)
[5] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[6] java.security.ProtectionDomain.seeAllp (ProtectionDomain.java:295)
[7] java.security.ProtectionDomain.toString
(ProtectionDomain.java:255)
[8] com.sun.jini.start.AggregatePolicyProvider.implies
(AggregatePolicyProvider.java:201)
[9] java.security.ProtectionDomain.implies (ProtectionDomain.java:224)
[10] java.security.AccessControlContext.checkPermission
(AccessControlContext.java:352)
[11] java.security.AccessController.checkPermission
(AccessController.java:546)
[12] java.lang.SecurityManager.checkPermission
(SecurityManager.java:532)
[13] java.lang.SecurityManager.checkCreateClassLoader
(SecurityManager.java:594)
[14] java.lang.ClassLoader.checkCreateClassLoader
(ClassLoader.java:177)
[15] java.lang.ClassLoader.<init> (ClassLoader.java:225)
[16] java.security.SecureClassLoader.<init>
(SecureClassLoader.java:93)
[17] java.net.URLClassLoader.<init> (URLClassLoader.java:115)
[18]
com.sun.jini.test.impl.start.aggregatepolicyprovider.GetContextTest.run
(GetContextTest.java:85)
[19] com.sun.jini.qa.harness.MasterTest.doTest (MasterTest.java:252)
[20] com.sun.jini.qa.harness.MasterTest.main (MasterTest.java:142)
no heart without soul:
[1] java.lang.SecurityManager.checkRead (SecurityManager.java:873)
[2] java.io.File.exists (File.java:731)
[3] com.sun.jini.qa.harness.HeartOfTheMachine.hasReasonToLive
(HeartOfTheMachine.java:56)
[4] com.sun.jini.qa.harness.HeartOfTheMachine.ticktack
(HeartOfTheMachine.java:62)
[5] com.sun.jini.qa.harness.HeartOfTheMachine.access$000
(HeartOfTheMachine.java:29)
[6] com.sun.jini.qa.harness.HeartOfTheMachine$1.run
(HeartOfTheMachine.java:45)
[7] java.lang.Thread.run (Thread.java:662)
Thread-2:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-3:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
Thread-4:
[1] java.net.PlainSocketImpl.socketAccept (native method)
[2] java.net.PlainSocketImpl.accept (PlainSocketImpl.java:408)
[3] java.net.ServerSocket.implAccept (ServerSocket.java:462)
[4] java.net.ServerSocket.accept (ServerSocket.java:430)
[5] com.sun.jini.tool.ClassServer.run (ClassServer.java:396)
RequestHandler:
[1] java.io.FileInputStream.readBytes (native method)
[2] java.io.FileInputStream.read (FileInputStream.java:220)
[3] java.io.BufferedInputStream.fill (BufferedInputStream.java:218)
[4] java.io.BufferedInputStream.read1 (BufferedInputStream.java:258)
[5] java.io.BufferedInputStream.read (BufferedInputStream.java:317)
[6] java.io.ObjectInputStream$PeekInputStream.read
(ObjectInputStream.java:2,265)
[7] java.io.ObjectInputStream$PeekInputStream.readFully
(ObjectInputStream.java:2,278)
[8] java.io.ObjectInputStream$BlockDataInputStream.readShort
(ObjectInputStream.java:2,749)
[9] java.io.ObjectInputStream.readStreamHeader
(ObjectInputStream.java:779)
[10] java.io.ObjectInputStream.<init> (ObjectInputStream.java:279)
[11] com.sun.jini.qa.harness.MasterTest$RequestHandler.run
(MasterTest.java:323)
[12] java.lang.Thread.run (Thread.java:662)
main[1] dump this
this = {
mainPolicyClassProperty:
"com.sun.jini.start.AggregatePolicyProvider.mainPolicyClass"
defaultMainPolicyClass:
"net.jini.security.policy.DynamicPolicyProvider"
trustGetCCL: instance of java.util.WeakHashMap(id=962)
myDomain: instance of java.security.ProtectionDomain(id=963)
subPolicies: instance of
com.sun.jini.collection.WeakIdentityMap(id=964)
subPolicyCache: instance of
com.sun.jini.collection.WeakIdentityMap(id=965)
mainPolicy: instance of
net.jini.security.policy.DynamicPolicyProvider(id=966)
$assertionsDisabled: true
java.security.Policy.UNSUPPORTED_EMPTY_COLLECTION: instance of
java.security.Policy$UnsupportedEmptyCollection(id=967)
java.security.Policy.policy: instance of
com.sun.jini.start.AggregatePolicyProvider(id=959)
java.security.Policy.debug: null
java.security.Policy.pdMapping: instance of
java.util.WeakHashMap(id=968)
}
main[1] exit