देता है मैं जावा के लिए कुछ नया हूं इसलिए शायद मैं जावा में एनोटेशन के लिए उपयोग के मामलों को गलत समझता हूं। मेरा मुद्दा निम्न है:जावा एनोटेशन क्रिप्टिक क्लास नाम
विधि को एनोटेट करने के बाद मुझे विधि पर एनोटेशन का निरीक्षण करते समय $ Proxy31 जैसे क्लास नाम प्राप्त होते हैं। मुझे उत्सुकता है कि मुझे अपनी एनोटेशन के लिए क्लास नाम क्यों मिल रहे हैं जो इस तरह के हैं, और मैं इस समस्या को ठीक करने के लिए क्या कर सकता हूं।
Method m = this.remoteServiceClass.getMethod(rpcRequest.getMethod().getName());
RequiredPermission a = m.getAnnotation(RequiredPermission.class);
यह एक अशक्त एनोटेशन मैं जानता हूँ कि भले ही उस विधि इसे देख रहा है RequiredPermission एनोटेशन लागू किया है देता है।
for(Annotation a : m.getAnnotations())
{
System.out.println(a.getClass().getName());
}
यह $ Proxy31 क्लास नामों को प्रिंट करता है।
कृपया समस्या का प्रदर्शन करने के लिए एक छोटा लेकिन पूरा कार्यक्रम प्रदान करें। कोड के बिना यह जानना मुश्किल है कि क्या हो रहा है। –
रिमोट क्लास में विधि है, या आरपीसीआरक्वेट क्लास एनोटेशन लागू किया गया है? क्या एनोटेशन में रनटाइम प्रतिधारण है और विधि प्रकार पर लागू होता है? (यदि एनोटेशन स्वयं को सही ढंग से एनोटेट नहीं किया गया है, तो आपको त्रुटियां नहीं मिलेंगी, एनोटेशन बस गायब हो गया है)। – Yishai
दूरस्थ सेवा क्लास में विधि है, एनोटेशन में रनटाइम प्रतिधारण और लक्ष्य तत्व प्रकार के तरीके हैं। मैं कक्षा से वास्तविक विधि को पुनः प्राप्त करने के लिए rpcRequest से नाम का उपयोग कर रहा हूं। – bdorry