+ -
当前位置:首页 → 问答吧 → 请教! TOMCAT java.util.zip.ZipException: Too many open files问题

请教! TOMCAT java.util.zip.ZipException: Too many open files问题

时间:2008-10-22

来源:互联网

各位好!

小弟公司的TOMCAT服务器最近经常报错,希望各位不吝赐教,谢谢!


环境是linux FC6,TOMCAT5.5,JDK1.5

附:出错信息


Oct 22, 2008 6:10:32 PM org.apache.catalina.loader.WebappClassLoader openJARs
WARNING: Failed to open JAR
java.util.zip.ZipException: Too many open files
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:204)
        at java.util.jar.JarFile.<init>(JarFile.java:132)
        at java.util.jar.JarFile.<init>(JarFile.java:97)
        at org.apache.catalina.loader.WebappClassLoader.openJARs(WebappClassLoader.java:1541)
        at org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClassLoader.java:1760)
        at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1567)
        at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:850)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1299)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at org.apache.xerces.dom.DeferredDocumentImpl.getNodeObject(DeferredDocumentImpl.java:964)
        at org.apache.xerces.dom.DeferredDocumentImpl.synchronizeChildren(DeferredDocumentImpl.java:1565)
        at org.apache.xerces.dom.CoreDocumentImpl.getDocumentElement(CoreDocumentImpl.java:689)
        at org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument(ParserUtils.java:11
        at org.apache.jasper.compiler.JspConfig.processWebDotXml(JspConfig.java:70)
        at org.apache.jasper.compiler.JspConfig.init(JspConfig.java:18
        at org.apache.jasper.compiler.JspConfig.findJspProperty(JspConfig.java:240)
        at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:103)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
        at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:674)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:467)
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:400)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:303)
        at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:362)
        at org.apache.catalina.core.StandardHostValve.throwable(StandardHostValve.java:211)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:134)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:14
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:731)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)

作者: kplsq   发布时间: 2008-10-22

是不是ulimit对某个用户打开的文件个数有限制。
这个问题仿佛在”linux一句话上“见到过。 你下个看看了

作者: qingheliu   发布时间: 2008-10-23

ok 谢谢!我去试试

作者: kplsq   发布时间: 2008-10-23

我也遇见这个问题 ,   暂时也没解决~~

  不是最大连接数的问题,我的最大连接数,已经设置到 65535 了

作者: 也弹吉他   发布时间: 2010-03-12

the problem with java is difficult for a system administor to be solved.the principal reason lacks enough java knowledge so that i can not quickly solve it.

how to solve it

1\let correlative programme developer help you.

2\study how to monitor java status to find out where the question is.to do these.you must learn some professional java monitoring tools.to detailed information.please visist google.

hope it can help you.

作者: todayhero   发布时间: 2010-03-12

热门下载

更多