首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • jboss运行困扰了一个多月的问题:java.io.IOException:Bad file descriptor
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2008-04-23 17:01:33 楼主
    网站运行一段时间就出现这样的问题:网站就不能访问,但jboss并没有down掉。就算可以访问出来很慢
    代码都有log跟踪,但查不到这个错误,只有在jboss log里面才看看。

     
    16:25:08,811 ERROR [[default]] Servlet.service() for servlet default threw exception
    java.io.IOException: Bad file descriptor
            at java.io.FileInputStream.readBytes(Native Method)
            at java.io.FileInputStream.read(FileInputStream.java:194)
            at java.io.BufferedInputStream.read1(BufferedInputStream.java:254)
            at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
            at java.io.FilterInputStream.read(FilterInputStream.java:90)
            at org.apache.catalina.servlets.DefaultServlet.copyRange(DefaultServlet.java:2046)
            at org.apache.catalina.servlets.DefaultServlet.copy(DefaultServlet.java:1788)
            at org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:854)
            at org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:325)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
            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:230)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
            at java.lang.Thread.run(Thread.java:595)

      希望遇到这个问题的高手们,提供解决方法,万分感谢。
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • JBossWeek
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-24 09:16:181楼 得分:0
    可能是jvm的一个bug,如果用的是jdk5.0请升级到update14及以上版本,如果是jdk6.0,请升级到update4及以上版本
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-24 15:11:212楼 得分:0
      我把jdk5.0升级到jdk5.0_15版本。jboss升级到4.2.2.GA但同样是报这样的错误,为了这个错误,我把代码整理了两遍,都加上自已写的log,但自已写的log都没有找到这个错误。如果是代码出错,至少会指出在那里的代码引出。这些问题只有的jboss的server.log才看到。
      请问有什么办法跟踪这些错误吗?
      除了这些还会有那些地方引发这样的错误?
      项目的包和jboss的包会不会冲突引出这样的错误?如果会?会是那些包呢?
     
     
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-24 15:13:573楼 得分:0

    这个错误和上面那个是经常同时出现的,,好朋友来的。

    那位朋友可以帮助下吖,提供写解决方法,这些问题已经搞了一个多月了,试了很多办法了。

    15:06:49,362 ERROR [[default]] Servlet.service() for servlet default threw exception
    java.lang.ArrayIndexOutOfBoundsException
            at java.lang.System.arraycopy(Native Method)
            at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:332)
            at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:381)
            at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:370)
            at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89)
            at org.apache.catalina.servlets.DefaultServlet.copyRange(DefaultServlet.java:2048)
            at org.apache.catalina.servlets.DefaultServlet.copy(DefaultServlet.java:1788)
            at org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:854)
            at org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:325)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
            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:230)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
            at java.lang.Thread.run(Thread.java:595)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnhawkwing
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-24 16:02:494楼 得分:0
    "回帖是一种美德!传说每天回帖即可获得   10   分可用分! "


    传说这个问题比较不容易遇到,遇到也不容易解决,顶起!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-25 10:07:395楼 得分:0
    没人知道怎样解决吗?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-25 10:12:056楼 得分:0
    在外网服务器上,我开18080端口测试一个早上,能点的都点了,都没有报这样的错。改为80端口一会儿就报这样错误了

    这说明是什么呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • liu_xiaohua
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-25 12:09:567楼 得分:0
    好见过。。顶一下。。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-28 10:24:358楼 得分:0
    怎么csdn都没有高手上了?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • JBossWeek
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-28 10:59:169楼 得分:0
    8080端口没问题,换成80端口就出问题,应该不是JBoss应用服务器的配置问题,建议lz检查一下防火墙等网络设备对80端口的设置,检测80端口在一段时间内的可连接性
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-29 09:55:1910楼 得分:0
    请问怎样修改linux下的端口,,我想把80端口改为18080,是在etc下的httpd.conf吗?修改了报群错误,不知道怎样改呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • JBossWeek
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-29 23:05:1011楼 得分:0
    lz的部署架构如何?是apache + jboss,apache做负载均衡吗?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • machele
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-04-30 02:49:3712楼 得分:0
    Java code
    import java.io.*; public class Test2{ public static void main(String[] args){ FileOutputStream fos = null ; try{ fos = new FileOutputStream("F:\\java_ex\\abc.txt"); }catch(FileNotFoundException fnf){ fnf.printStackTrace(); } for(int i='A';i<'Z';i++){ try{ fos.write(i); fos.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }

    类似的错误:
    F:\java_ex>javac Test2.java

    F:\java_ex>java Test2
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)
    java.io.IOException: Bad file descriptor
            at java.io.FileOutputStream.write(Native Method)
            at Test2.main(Test2.java:13)

    F:\java_ex>
    期待高手解决。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-03 22:51:2013楼 得分:0
    lz的部署架构如何是:jboos4.2.2GA+jdk5_15+oracle9i.  apache有装但没有启动.  因为本人对容器(jboss,apache)还没精通,所以很多细节设置还不太熟.
    如果是防火墙限制有关系,会保这样的吗?
    网站我已经把自已写的写log记录的去掉了,除非袮容器写server.log出错,但这个可能性很少.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • teammai
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-03 22:56:3514楼 得分:0
    引用 12 楼 machele 的回复:
    Java codeimport java.io.*;
    public class  Test2{   
        public static void main(String[] args){
            FileOutputStream fos = null ;
            try{
                fos = new FileOutputStream("F:\\java_ex\\abc.txt");
            }catch(FileNotFoundException fnf){
                fnf.printStackTrace();
            }
            for(int i='A';i <'Z';i++){
                try{
                    fos.write(i);
          …


    系new FileOutputStream("F:\\java_ex\\abc.txt")这里加多个参数,好像是ture试试看,

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnhawkwing
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-04 10:40:3715楼 得分:0
    [Quote=引用   12   楼   machele   的回复:]
    for(int   i= 'A ';i < 'Z ';i++){
                            try{
                                    fos.write(i);
                                    fos.close();
                            }catch(IOException   ioe){
                                    ioe.printStackTrace();
                            }
                    }

                …
    [/Quote]

    循环里面不能够把fos.close();
    应该把这句放在循环之后。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • JBossWeek
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-06 09:13:2116楼 得分:0
    jboss缺省端口可是8080啊,如果要修改端口,直接修改jboss下的server.xml中的端口配置就可以了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chenciitc
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-05-09 13:59:0717楼 得分:0
    高薪招聘高校计算机专业兼职教师
    北京思源培训中心(http://www.ciitc.com)专业做软件开发技术的培训;由于课程培训需要,长年高薪诚聘兼职讲师,欢迎计算机及相关专业的高校老师、研究生、博士生应聘   
    基本要求如下:
    l    本科以上学历,计算机或相关专业毕业。
    2    具有实际相关工作经验,从事过软件开发或系统管理工作。
    3    语言表达清楚、流畅、逻辑思维清晰,英语听说良好。
    4    诲人不倦,有高度的责任感、敬业精神和团队意识。
    5    注重仪表,具有随机应变的能力。
    6    具有一定的教学经验,从事过教学/培训业务者优先考虑。

    精通应聘职位的某一部分课程内容,如下述编程语言或系统的一种或几种:
    1.    编程语言:C++, VC++,VB.NET,C#, PowerBuilder, Delphi, Java,
      Matlab , C++Builder
    2.    数据库系统:SQL Server2000, SQL Server2005, Oracle,DB2,MySql
    3.    网站编程:Marcomedia, HTML, Altova XML Suite,ASP, JSP, J2EE, J2SE,
        PHP,ASP.NET,VB.NET, ColdFusion,ajax
    4.    操作系统:Unix, Linux,Linux环境下嵌入式开发技术,Sun Solaris,IBM AIX
    5.      办公软件:OFFICE(EXCEL、WORD、POWERPOINT)
    6.      多媒体制作:Authorware7.0  , Director MX 2004
    7.      图形动画类:Photoshop, Illustrator, CorelDRAW, FreeHand,
    Flash ActionScript高级编程,3DMAX,AutoCAD2007 ,Maya
    具有下述任何一种或几种国际IT认证证书者优先考虑:
    1.    微软认证证书MCP / MCSA / MCSE / MCDBA / MCSD
    2.    SUN Java认证证书
    3.    Oracle认证证书
    4.    Macromedia认证证书
    5.    Linux认证证书
    6.    CIW (Certified Internet Webmaster) Associate/Professional/Master认证证书

    有意者请把简历发到如下地址:abc@ciitc.com  QQ:174629429  MSN:bjcosun@hotmail.com
    http://www.ciitc.com
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • paomadeng
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-17 11:17:5818楼 得分:0
    应该是Cookie内容过长的问题, 是否Cookie时间过长, 导致内容超过了 8192 (Tomcat Connector里面的配置)
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved