सिंगलेट्स बुरा हैं, आप क्या उम्मीद करते हैं? ;)
शायद सबसे व्यापक दृष्टिकोण एक अलग वर्ग लोडर में एप्लेट का बड़ा भार लोड करना होगा (java.net.URLClassLoader.newInstance का उपयोग करें)। फिर क्लास लोडर को एक एप्लेट के साथ जोड़ने के लिए एक WeakHashMap का उपयोग करें। यदि आप अधिकांश कोड को एक सामान्य वर्ग लोडर (प्रत्येक प्रति-एप्लेट क्लास लोडर के माता-पिता के रूप में) और सामान्य एप्लेट कोडबेस में विभाजित कर सकते हैं, तो यह तेज़ होगा लेकिन अधिक काम करेगा।
अन्य हैक्स:
यदि आपके पास किसी भी घटक तक पहुंच है, तो आप बार-बार या SwingUtilities.getRoot Component.getParent का उपयोग कर सकते हैं।
यदि आप एक प्रति-एप्लेट उदाहरण थ्रेड में हैं, तो आप एक थ्रेडलोकल सेट अप कर सकते हैं।
ईडीटी से, आप वर्तमान घटना को कतार (java.awt.EventQueue.getCurrentEvent ()) से पढ़ सकते हैं, और संभवतः उस से एक घटक पा सकते हैं। वैकल्पिक रूप से एक ओवरकॉइड प्रेषण विधि विधि के साथ एक EventQueue धक्का।