2011-01-04 16 views
13

को टॉमकैट पर युद्ध फ़ाइल तैनात करने में परेशानी हो रही है।तैनाती में परेशानी। टोमकैट

मैंने अपनी विंडोज मशीन पर नेटबीन में एक वेबपैप लिखा है। यह सब ठीक चलाता है। मैं जो करना चाहता हूं वह मेरे लिनक्स कंप्यूटर पर एप्लिकेशन को तैनात करना है जो मेरे सर्वर के रूप में कार्य कर रहा है। एक बार एप्लिकेशन बनने के बाद, मैं अपनी प्रोजेक्ट निर्देशिका में डिस्ट फ़ोल्डर से युद्ध फ़ाइल को एक पेंड्रिव पर कॉपी करता हूं। मैं फिर इसे अपने लिनक्स कंप्यूटर के डेस्कटॉप पर कॉपी करता हूं।

मैं फिर टोमकैट शुरू करता हूं और एप्लिकेशन मैनेजर का उपयोग करके मैं तैनात करने के लिए युद्ध फ़ाइल ब्राउज़ करता हूं, फिर तैनाती पर क्लिक करता हूं। मुझे ब्राउजर के शीर्ष पर 'ओके' कहने वाला एक संदेश मिलता है।

4/01/2011 5:09:07 PM org.apache.catalina.startup.HostConfig deployWAR 
INFO: Deploying web application archive Kingdoms.war 
4/01/2011 5:09:07 PM org.apache.catalina.startup.ContextConfig init 
SEVERE: Exception fixing docBase for context [/Kingdoms] 
java.util.zip.ZipException: invalid CEN header (bad signature) 
    at java.util.zip.ZipFile.open(Native Method) 
    at java.util.zip.ZipFile.<init>(ZipFile.java:114) 
    at java.util.jar.JarFile.<init>(JarFile.java:135) 
    at java.util.jar.JarFile.<init>(JarFile.java:72) 
    at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:72) 
    at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:48) 
    at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:70) 
    at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:104) 
    at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:71) 
    at org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:111) 
    at org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:706) 
    at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:829) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:334) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89) 
    at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:328) 
    at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:308) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:131) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:570) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:891) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:491) 
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1322) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) 
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) 
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) 
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1467) 
    at org.apache.catalina.manager.HTMLManagerServlet.upload(HTMLManagerServlet.java:332) 
    at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:209) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:186) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:244) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:561) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:558) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:237) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281) 
    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) 
4/01/2011 5:09:07 PM org.apache.catalina.core.StandardContext resourcesStart 
SEVERE: Error starting static Resources 
java.lang.IllegalArgumentException: Invalid or unreadable WAR file : invalid CEN header (bad signature) 
    at org.apache.naming.resources.WARDirContext.setDocBase(WARDirContext.java:142) 
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4657) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4815) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:812) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:787) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:570) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:891) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:491) 
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1322) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) 
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) 
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) 
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1467) 
    at org.apache.catalina.manager.HTMLManagerServlet.upload(HTMLManagerServlet.java:332) 
    at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:209) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:186) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:244) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:561) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:558) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:237) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281) 
    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) 
4/01/2011 5:09:07 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error in resourceStart() 
4/01/2011 5:09:07 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error getConfigured 
4/01/2011 5:09:07 PM org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/Kingdoms] startup failed due to previous errors 

भी मैं अब मेरे ऐप अनुप्रयोगों की सूची में देख सकते हैं,: अभी तक अगर मैं टर्मिनल विंडो में मेरी बिल्ला उत्पादन को देखो मैं निम्न त्रुटि है। मैं ऐप के लिए कमांड में शुरू क्लिक करता हूं लेकिन स्क्रीन के शीर्ष पर एक संदेश प्राप्त करता हूं, 'असफल - संदर्भ पथ/साम्राज्यों पर आवेदन शुरू नहीं किया जा सका'

मैं क्या गलत कर रहा हूं? इसे कैसे ठीक करें?

+0

मेरे मामले में मैं एक फ़ाइल निकालने के लिए 'jar xvf' कर रहा था, इसे अपडेट करें, फिर WAR अपडेट करें। लेकिन मैं इसे ऊपर दिए गए फ़ोल्डर से कर रहा था जैसा कि https://issues.apache.org/jira/browse/MTOMCAT-104 में वर्णित है - एक बार जब मैंने अपनी कार्यशील निर्देशिका को बदल दिया है जहां WAR स्थित है, तो मैंने इस मुद्दे को हल किया। – Philippe

उत्तर

12

युद्ध संग्रह दूषित या अमान्य है के तहत भ्रष्ट जार फ़ाइलों।

जाँच लें कि युद्ध पीढ़ी प्रक्रिया में नाकाम रहने नहीं है और है कि युद्ध फ़ाइल अपनी कलम को नकल करने से पहले एक मान्य ज़िप फ़ाइल है ड्राइव आदि

अगर आप खिड़कियों पर कर रहे हैं जब आप इस फ़ाइल को बदल कर क्या कर सकते हैं .zip के लिए एक्सटेंशन और एक ज़िप प्रोग्राम जैसे Winzip या Winrar के साथ खोलना।

यदि आप किसी अन्य ऑपरेटिंग सिस्टम पर हैं तो आपको शायद एक्सटेंशन को बदलने की आवश्यकता नहीं है।

यदि युद्ध एक वैध ज़िप है तो संभवतः यह आपकी स्थानांतरण प्रक्रिया के परिणामस्वरूप दूषित हो रहा है यानी आपके पेन ड्राइव पर या उससे आगे बढ़ रहा है।

+0

मुझे lib फ़ोल्डर में एक फ़ाइल मिली जो कि परेशान नहीं होगी। मुझे लगता है कि पेंड्रिव को युद्ध फाइल पसंद नहीं है, एक और कोशिश की और यह काम किया। यादृच्छिक। धन्यवाद – David

+0

आप उत्तर में से एक को स्वीकार कर सकते हैं क्योंकि वे दोनों सही हैं। – pstanton

+0

ग्रहण के साथ इस में दौड़ें, परियोजना को दोबारा बनाने का एकमात्र उपाय था, हालांकि सभी परियोजना फाइलें सही और कई साफ/निर्माण पास होने लगती हैं। –

10

यह निम्न कारणों में से किसी एक के कारण हो सकता है।

  • भ्रष्ट युद्ध फ़ाइल
  • वेब-INF/lib फ़ोल्डर
+0

मुझे lib फ़ोल्डर में एक फ़ाइल मिली जो कि परेशान नहीं होगी। मुझे लगता है कि पेंड्रिव को युद्ध फाइल पसंद नहीं है, एक और कोशिश की और यह काम किया। यादृच्छिक। धन्यवाद – David

10

यह निम्न कर सकता एक फ़ाइल सुरक्षा मुद्दा है, जो आप की तरह कुछ जारी करके ठीक कर सकते हैं हो सकता है: chmod 755 webapp.war

यह मेरे लिए हुआ है कि मेरे SFTP एक 700 का तबादला फाइल पर सिर्फ तमाचा होगा, जिससे कि त्रुटि।

2

एक ही त्रुटि है -, सब ठीक युद्ध के साथ पुन: प्रारंभ बिलाव संकल्प समस्या इसलिए मुझे लगता है कि यह है क्योंकि बिलाव शुरू युद्ध की तैनाती से पहले यह पूरी तरह से

+1

आह जो बहुत समझ में आता है। अगर फ़ाइल बड़ी थी और आप इसे सीधे टोमकैट कंटेनर पर कॉपी कर रहे थे। मुझे लगता है कि मेरी समस्या की व्याख्या होगी। वाह यह उम्र पहले था हाहा था – David

1

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

0

भी संभवतः solr.xml में गलत प्रविष्टि के कारण यह इंगित करना चाहिए कि .war फ़ाइल कहां स्थित है।

0

इसके अलावा, आप तैनात किया है .war फ़ाइल की फाइल अनुमति के लिए बाहर देखो। मेरे लिए यही कारण था।

0

मेरे मामले में यह मेनिफेस्ट फ़ाइल थी।

Class-Path: 

एक सफेद जगह के बाद होना चाहिए।

0

जांच करने वाली पहली बात यह है कि यदि आपकी डिस्क पर खाली स्थान है। यदि आपका विभाजन 100% भरा है, तो .WAR फ़ाइल निकालना असंभव होगा।

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