2012-11-16 8 views
37

मुझे पता चला कि PropertyEditorManager रजिस्ट्रार/ThreadGroupContext आधार पर संपादकों को पाता है, प्रति जावा रजिस्ट्री के अनुसार प्रति वैश्विक रजिस्ट्री नहीं।Java7 PropertyDditors ThreadGroupContext के माध्यम से पंजीकृत

और जावा 7 हर बार एक नया थ्रेड ग्रुप कॉन्टेक्स्ट बनाता है जो एक नए ThreadGroup के लिए बनाता है। इस प्रकार PropertyEditorFinder (जो वास्तव में रजिस्टरों/संपादकों को पाता है) फिर से नया है।

जावा कुछ वर्गों (Byte, Long, आदि) के लिए पूर्वनिर्धारित संपादकों का उपयोग करता है और ctor पर PropertyEditorFinder में उन्हें पंजीकृत करता है)। मान लीजिए कि मैं कुछ पूर्वनिर्धारित वर्ग (यानी लांग) के लिए अपना खुद का PropertyEditor पंजीकृत करना चाहता हूं। जावा 6 में करना आसान है, लेकिन जावा 7 में, प्रत्येक बार थ्रेड नए ThreadGroup के भीतर बनाए जाते हैं, मैंने अपना संपादक खो दिया।

तो क्या आप कृपया मुझे बता सकते हैं कि जावा 7 में नए ThreadGroup के लिए संपादकों को एक अच्छी तरह से संभालने का कोई समाधान है? अगर किसी समस्या का सामना करना पड़ता है और आप इसे कैसे दूर करते हैं?

पीएस मुझे लगता है कि मुझे अपनी अंग्रेजी के लिए माफ़ी मांगनी चाहिए =)

पी.पी.एस. ThreadGroupContextAppContext के लिए एक प्रतिस्थापन है। और मैं उम्मीद कर रहा था कि संदर्भ बनाने के कार्यान्वयन समान होंगे: ThreadGroup के बीच मैपिंग का उपयोग जावा में 6, ThreadGroupContext जावा में संदर्भ (AppContext) के बीच मैपिंग का उपयोग करें। और जावा 6 अपने माता-पिता के लिए नए ThreadGroup के लिए उसी AppContext का उपयोग करता है। दूसरे शब्दों में AppContext का उपयोग पूरे ThreadGroup पेड़ के लिए एक जेवीएम में किया जाता है। लेकिन दुर्भाग्य से ThreadGroupContext का निर्माण अलग है - यह एक नए समूह के लिए बस एक नया संदर्भ है। इसलिए यदि प्रश्न एक दिन ThreadGroupContext उसी निर्माण तकनीक का उपयोग करेगा तो प्रश्न स्वचालित रूप से हल हो जाएगा।

+0

मुझे संपत्ति एडिटर प्रबंधक के साथ एक ही समस्या है और मुझे समाधान नहीं मिला है अभी तक .. – Vadeg

उत्तर

1

यदि आपके पास java.lang.Long के FQPN के साथ एक कक्षा है, तो आपको java.lang.LongEditor नामक एक कक्षा को लागू करने और इसे अपने एप्लिकेशन के साथ वितरित करने की आवश्यकता है। आम तौर पर, उस वर्ग को लागू करें जिसमें उस वर्ग का नाम है जिसे आप संपादित करना चाहते हैं, इसके साथ में संलग्न संपादक के साथ संपादित करना है, और जावा को स्वचालित रूप से

संबंधित मुद्दे