यह पहले-invokeApplication-phaselistener में managedbean होने वाली मार डाला के लिए एक संदर्भ पाने के लिए संभव है?जेएसएफ 2: चरण श्रोता ऑब्जेक्ट में प्रबंधित बीन का उदाहरण एक्सेस करना?
आह्वान आवेदन चरण से पहले, यह स्पष्ट किया जाना चाहिए जो managedBean कि विधि निष्पादित करने के लिए जा रहा है।
उदाहरण के लिए, वहाँ 1 JSF पेज को संभालने के लिए 1 का प्रबंधन मुख्य सेम मान।
तो क्या मैं जरूरत मूल रूप से है: मेनू
- उपयोगकर्ता पहुँच कार्यक्रम, मुख्य प्रबंधन में फली की init() विधि की तैयारी की तरह सामान को प्रारंभ करने के लिए बुलाया जाता है डेटा, प्राधिकरण कर जाँच करता है
- बाद प्रविष्टियों पर न जब तक यह लागू करने के लिए बिंदु # मेनू
से reaccessed है init() विधि अब और कॉल करने की आवश्यकता 2, चरणों
मैं चरणों कार्यान्वयन में कामयाब रहे सेम करने के बारे में एपीआई डॉक्स देख लिया है में से एक में अवरोध डालने के im सोच, लेकिन मैं सके किसी भी खोजने के लिए लग रहे हैं।
इस सवाल लिखने के बाद, मैं मैं @PostConstruct या प्रबंधित सेम के निर्माता में ऐसा कर सकता है एहसास है, लेकिन यह पहली बार सेम का निर्माण किया है पर केवल करना होगा, और मेरी जरूरत कॉल करने के लिए विधि हर JSF है मेनू से पहुंचा जा रहा है।
कोई सुझाव?
सादर,
अल्बर्ट Kam
वाह, इतने सारे विकल्प। धन्यवाद ! – bertie
मुझे नहीं लगता कि यह वास्तव में कैसे कार्य करता है जो क्रिया विधि में शामिल है। आपके दृष्टिकोण की आवश्यकता है कि बीन नाम पहले से ही पहले से ही ज्ञात है। वैसे, मैं ['आवेदन # मूल्यांकन ExpressionGet()'] पसंद करता हूं (http://download.oracle.com/javaee/6/api/javax/faces/application/Application.html#evaluateExpressionGet%28javax.faces.context FacesContext,% 20java.lang.String,% 20java.lang.Class% 29) 'ELResolver/ELContext' के बजाय शॉर्टैंड। यह भी देखें [यह उत्तर] (http://stackoverflow.com/questions/2633112/jsf-get-managed-bean-by-name)। – BalusC
ठीक है, अगर उसका चरण श्रोता आवेदन चरण पहले आने वाले कार्यक्रम में सुन रहा है, तो चरण श्रोता ऑब्जेक्ट इंस्टेंस को तुरंत चालू करेगा। यह वही उदाहरण आवेदन विधि (जिसे चालान आवेदन चरण के दौरान बुलाया जाता है) में संदर्भित किया जाएगा, क्योंकि प्रबंधित अभी भी दायरे में है (उसी अनुरोध)। मैंने सवाल कैसे किया कि यह कैसे करें, लेकिन मैं इसे सबसे अच्छा समाधान के रूप में समर्थन नहीं देता हूं। मैंने विकल्प प्रदान किए जो अंतिम लक्ष्य को प्राप्त करने के लिए बेहतर अनुकूल लगते हैं। –