2012-07-04 18 views
5

में java.lang.NoClassDefFoundError जब मैं अपने appication सब कुछ चल रहा हूँ पल के लिए ठीक है। तब सांत्वना ग्रहण जब तक मैं सर्वर प्रदर्शन रोक:अपवाद गतिशील वेब अनुप्रयोग, ग्रहण, JSF

SEVERE: Servlet.service() for servlet [Faces Servlet] in context with path [/ChatAzure] threw exception [javax/servlet/jsp/jstl/core/Config] with root cause 
java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config 
    at com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:345) 
    at com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:154) 
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:100) 
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) 
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) 
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987) 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
    at java.lang.Thread.run(Thread.java:662) 

मैं का उपयोग करें: ग्रहण, jsf2-1-7, JSTL-1.2.jar, बिलाव v0.7। मुझे नहीं पता कि क्या गलत है, मुझे मदद चाहिए।

उत्तर

9

उल्लेख वर्ग JSTL का हिस्सा है। यह आमतौर पर पहले से ही एक पूर्ण जावा ईई कंटेनर द्वारा प्रदान किया जाता है, लेकिन टॉमकैट में जेएसपी/सर्वलेट कंटेनर के रूप में नहीं है। आपको वेब एप्लिकेशन के साथ स्वयं जेएसटीएल की आपूर्ति करने की आवश्यकता होगी। अंततः इसे वेबपैप के रनटाइम क्लासपाथ में रखा जाना है।

आप सही ढंग से jstl-1.2.jar उल्लेख किया (मुझे लगता है कि इसमें केवल एक ही आप our JSTL wiki page में मिल सकता है के रूप में है), लेकिन इस समस्या को इंगित करता है कि यह जाहिरा तौर पर सही जगह पर नहीं दिया गया है। आपको इसे वेब प्रोजेक्ट के /WEB-INF/lib फ़ोल्डर में रखने की आवश्यकता है। यह फ़ोल्डर वेबएप के डिफ़ॉल्ट रनटाइम क्लासपाथ द्वारा कवर किया गया है। कुछ और करने की जरूरत नहीं है। यदि आप कभी भी इस परियोजना के पथ बिल्ड में fiddled है इसे हल करने की कोशिश में गुण, आप उन सभी प्रयास पूर्ववत चाहिए।


असंबंधित ठोस समस्या को: क्यों तुम अब भी विरासत JSP उपयोग कर रहे हैं? यह पदावनत और JSF 2.0 के बाद से Facelets (XHTML) द्वारा सफल हो गया है। सुनिश्चित करें कि आप जेएसएफ सीखने के दौरान जेएसएफ 2.x संसाधनों को अद्यतित कर रहे हैं और JSF 1.x वाले नहीं हैं।

+0

महान, आपको बहुत बहुत धन्यवाद! :) – user1494328

+0

आपका स्वागत है। – BalusC

+0

आप 1.2.1 के साथ जाना है, तो सुनिश्चित करें कि आप दोनों .JARs डाउनलोड करने और उन्हें – th3byrdm4n

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