2008-10-16 9 views
6

मैं डब्ल्यूटीपी 3.0.2 के साथ एक्लिप्स 3.4 का उपयोग कर रहा हूं और काफी बड़ी गतिशील वेब प्रोजेक्ट चला रहा हूं। ताकि मैं http://127.0.0.1:8080/share/ पर उस तक पहुँच सकते मैं परियोजना की स्थापना की है, लेकिन जब भी मैं करता हूँ, मैं निम्नलिखित त्रुटि मिलती है:ग्रहण और जेएसपी: java.lang.NoSuchMethodError: javax.servlet.jsp.tagext.TagAttributeInfo। <init> (लाजावा/लैंग/स्ट्रिंग; ज़्लेजावा/लैंग/स्ट्रिंग; जेडजेड) वी

 
    java.lang.NoSuchMethodError: javax.servlet.jsp.tagext.TagAttributeInfo.(Ljava/lang/String;ZLjava/lang/String;ZZ)V 
    at org.apache.jasper.compiler.TagLibraryInfoImpl.createAttribute(TagLibraryInfoImpl.java:572) 
    at org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:401) 
    at org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:248) 
    at org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:162) 
    at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:423) 
    at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:492) 
    at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1552) 
    at org.apache.jasper.compiler.Parser.parse(Parser.java:126) 
    at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211) 
    at org.apache.jasper.compiler.ParserController.parse(ParserController.java:100) 
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:295) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:276) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:264) 
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563) 
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:303) 
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) 
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) 
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) 
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) 
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) 
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) 
    at java.lang.Thread.run(Unknown Source) 

ऊपर फ़ाइलों में से कोई भी अपने ही है, इस समस्या का कारण उनका कहना है काफी कठिन है। कोई विचार जहां दिखना शुरू करना है?

उत्तर

5

मैंने अपने स्वयं के प्रश्न का उत्तर देने का अंत किया: समस्या यह थी कि जम्मू में जो आवश्यक जारों को जोड़ा गया था, वह एक विवादित servlet.jar था। जब मैंने इसे हटा दिया, तो त्रुटि गायब हो गई।

0

क्या आपने "प्राथमिकताएं-> टोमकैट-> उन्नत-> टॉमकैट बेस" में टॉमकैट पथ सेट किया था?

उस पथ को साफ़ करने का प्रयास करें (डिफ़ॉल्ट कॉन्फ़िगरेशन पर वापस आना), और जांचें कि क्या समस्या हल हो जाती है।

0

ग्रहण में सबसे अधिक टॉमकैट प्लगइन संघर्ष समस्या का कारण बनता है, मैं समान संस्करण जार फ़ाइल प्राप्त करके समस्या को हल करने का प्रबंधन करता हूं और इसे ग्रहण में टॉमकैट प्लगइन में ओवरराइड करता हूं।

0

मैं इसी तरह की समस्या थी और मैं यह सुनिश्चित करना मैं classpath है कि मेरे आवेदन के द्वारा ले जाया जा रहा है और यह भी मैं में पुराने रखा था J2EE.jar फ़ाइल में servlet.jar का सही संस्करण है कि इस समस्या को ठीक किया गया था क्लासपाथ और वह मुख्य समस्या पैदा कर रहा था। इसलिए मैंने यह सुनिश्चित करने के लिए क्लासपाथ से हटा दिया कि यह डिफ़ॉल्ट फ़ाइलों द्वारा उपयोग करता है।

+1

इससे भविष्य में परेशानी होगी। आपको वेब-विशिष्ट लाइब्रेरी में '/ WEB-INF/lib' जैसे सर्वर-विशिष्ट पुस्तकालयों को कभी भी शामिल नहीं करना चाहिए। आपको कभी भी ढीली सर्वर-विशिष्ट जेएआर फ़ाइलों को कॉपी/डुप्लिकेट नहीं करना चाहिए। 'servlet.jar' टोमकैट विशिष्ट है। 'j2ee.jar' ग्लासफ़िश विशिष्ट है। उन्हें मिश्रण मत करो। सर्वर की लाइब्रेरी में उन्हें वहां रखें, जहां वे संबंधित हैं। आपको मूल रूप से करने की आवश्यकता है क्लासपाथ (पथ बनाना) में अपना फ़ाइल सिस्टम पथ जोड़ना। ग्रहण में, आपको केवल सर्वर सर्वर * में सर्वर को एकीकृत करने और प्रोजेक्ट गुणों में * लक्षित रनटाइम * द्वारा परियोजना के साथ संबद्ध करने की आवश्यकता है। – BalusC

0

मुझे एलेप्से हेलीओस चलाने में एक ही समस्या थी, मैवेन हैंडलिंग निर्भरताओं के साथ और जेटी को वेबसर्वर के रूप में उपयोग कर रहा था। वसंत 3.1 में अपडेट करने के बाद मुझे अचानक यह समस्या मिली, लेकिन केवल मेरी स्थानीय विकास मशीन पर।

मैंने पहली बार अपने स्थानीय मैवेन भंडार में वसंत और जेटी फ़ोल्डरों को हटा दिया और निर्भरताओं को अद्यतन किया, लेकिन इससे स्थिति में सुधार नहीं हुआ।

फिर मैंने जेटी के साथ आने वाले सर्वलेट-एपीआई और सर्वलेट-एपीआई-2.5 फ़ोल्डरों को हटा दिया (लेकिन बाकी सब कुछ छोड़कर), मुझे यह काम करने के लिए मिला।

सभी क्लासपाथ के जादू को जय करते हैं।

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