2012-12-19 60 views
5

मेरे पास नेटबीन्स 7.2.1 में जावा ईई ऐप है। ,जावा ईई अपवाद: नाम जावा: कॉम्प इस संदर्भ में बाध्य नहीं है

Caused by: javax.naming.NameNotFoundException: Name java:comp is not bound in this Context 
    at org.apache.naming.NamingContext.lookup(NamingContext.java:770) 
    at org.apache.naming.NamingContext.lookup(NamingContext.java:153) 
    at javax.naming.InitialContext.lookup(InitialContext.java:392) 
    at org.springframework.jndi.JndiTemplate$1.doInContext(JndiTemplate.java:154) 
    at org.springframework.jndi.JndiTemplate.execute(JndiTemplate.java:87) 
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:152) 
    at org.springframework.jndi.JndiTemplate.lookup(JndiTemplate.java:178) 
    at org.springframework.jndi.JndiLocatorSupport.lookup(JndiLocatorSupport.java:95) 
    at org.springframework.jndi.JndiObjectLocator.lookup(JndiObjectLocator.java:105) 
    at org.springframework.jndi.JndiObjectFactoryBean.lookupWithFallback(JndiObjectFactoryBean.java:201) 
    at org.springframework.jndi.JndiObjectFactoryBean.afterPropertiesSet(JndiObjectFactoryBean.java:187) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1454) 

कोड के लिए खोज रहे कि इस त्रुटि मैं पालन पाया कारण बनता है::

public Object lookup(String name) throws NamingException { 
    return getURLOrDefaultInitCtx(name).lookup(name); 
    } 

यह कैसे के कारण होता है और यह (इमारत समाप्त होता है ठीक), मैं बिलाव लॉग में त्रुटि मिलती तैनात करने के लिए कोशिश कर रहा है मैं इसे कैसे सुलझाऊं?

+0

यही होगा बिलाव के मामले में होता है आप किसी कारण से जब वेब ऐप्लिकेशन की '/ वेब-INF/lib' में मनमाने ढंग से servletcontainer विशेष जार गिरा दिया (जो एक आम स्टार्टर की गलती के लिए संकलन त्रुटियों" ठीक "है)। क्या तुमने वह किया? – BalusC

+0

मैं तैयार ऐप के साथ काम करता हूं, इसलिए मैं हो सकता हूं। –

+0

उह ठीक है। कृपया "हां" या "नहीं" के साथ पुष्टि करें। यदि आप सामान के बारे में पूरी तरह से अनजान हैं (किसी भी जेएसपी/सर्वलेट ट्यूटोरियल द्वारा तैयार किए बिना गहरे छेद में फेंक दिया गया है?), तो यह उपयोगी होगा यदि आप वर्तमान में वेबएप के '/ WEB-INF/lib' में मौजूद JARs सूचीबद्ध करते हैं फ़ोल्डर। कोई यह इंगित करने में सक्षम होगा कि कौन से लोग वहां से संबंधित नहीं हैं। – BalusC

उत्तर

8

यही होगा बिलाव के मामले में हो सकता है जब आप के लिए किसी कारण इस तरह के jsp-api.jar, servlet-api.jar, catalina.jar, आदि वेब ऐप्लिकेशन की /WEB-INF/lib में के रूप में मनमाने ढंग से servletcontainer विशेष जार गिरा दिया। आपको वहां से सभी सर्वलेट कंटेनर-विशिष्ट जेएआर को हटा देना चाहिए, वे वहां नहीं हैं। साथ ही, सुनिश्चित करें कि उन JARs को अन्य JARs में आपके पास WEB-INF/lib के अंदर घोंसला नहीं है।

जेएसपी/सर्वलेट पुस्तकालयों पर संकलन त्रुटियों को "ठीक करने" के लिए यह एक आम स्टार्टर की गलती है जिसे अलग-अलग हल किया जाना चाहिए; अर्थात् आईडीई प्रोजेक्ट को नेटबीन्स में "लक्ष्य सर्वर" या ग्रहण में "लक्ष्य रनटाइम" से संबद्ध करने के लिए कॉन्फ़िगर करके। आईडीई तब संकलित समय के दौरान स्वचालित रूप से सर्वर के पुस्तकालयों को शामिल करेगा।

+0

धन्यवाद बलुस्क! मैं अपने अनुभव की रिपोर्ट करना चाहता हूं, इसलिए यह दूसरों के लिए उपयोगी हो सकता है। मेरे मामले में, ग्रहण स्वचालित मैवेन रिज़ॉल्वर में टॉमकैट पर पोम निर्भरता शामिल थी, इसलिए स्वचालित स्वचालित रूप से एक्लिप्स टॉमकैट सर्वर के साथ काम नहीं करता था। – M3rlino

+2

कंटेनर-प्रदान की गई लाइब्रेरी को pom.xml में 'प्रदत्त' के रूप में चिह्नित करें। – BalusC