Have you run a filesystem checker on the disk lately? I would expect an error like that to come from the underlying OS. A cheap test would be to rename the file (struts_dojo.js.bad) and put a new one in with it's original name.
--David Mitch Claborn wrote: > tomcat 6.0.20 > Java(TM) SE Runtime Environment (build 1.6.0_16-b01) > linux Debian lenny > > Getting the error below when serving a static file. It is always the > same file (/struts/dojo/struts_dojo.js). (Yes, I know that struts > normally serves that, but I had to patch one of the struts files, so > tomcat is serving it instead.) The file is quite large, around 540KB. > Any thoughts or ideas? > > > java.io.IOException: Bad file descriptor > at java.io.FileInputStream.readBytes(Native Method) > at java.io.FileInputStream.read(Unknown Source) > at java.io.BufferedInputStream.read1(Unknown Source) > at java.io.BufferedInputStream.read(Unknown Source) > at java.io.FilterInputStream.read(Unknown Source) > at > org.apache.catalina.servlets.DefaultServlet.copyRange(DefaultServlet.java:2009) > at > org.apache.catalina.servlets.DefaultServlet.copy(DefaultServlet.java:1755) > at > org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:844) > at > org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:332) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:73) > at > com.mm.server.framework.struts.FilterWrapper.doFilter(FilterWrapper.java:49) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > com.mm.server.framework.lib.stats.StatsFilter.doFilterInternal(StatsFilter.java:72) > at > com.mm.server.framework.lib.stats.StatsFilter.doFilter(StatsFilter.java:51) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:347) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:361) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown > Source) > at java.lang.Thread.run(Unknown Source) > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org