我有一个jsp页面原来大概是6000++行代码,由于要增加一个功能。修改过后代码增加到7700+行。现在编译通不过,提示Unable to compile class for JSP。
    中间有13个表格分别存放每个生产线上每个站点的生产状况。设备异常则亮红灯,维修亮黄灯,正常亮绿灯。所有代码重复的很多。造成了页面需要很多的代码。
    13个表格任意删掉一个,页面都可以编译通过,所以应该不是有语法错误。
    请各位高手指点。

解决方案 »

  1.   

    Unable to compile class for JSP后面应该还有些异常信息吧,这个才最关键
      

  2.   

    下面的报错信息。
    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSP: 
    Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:299)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.5.23 logs.
      

  3.   

    可能要看完整的stacktrace,这里找不到有用的信息
    The full stack trace of the root cause is available in the Apache Tomcat/5.5.23 logs
      

  4.   

    呵呵,我以前也遇到过jsp太长,导致无法编译。。
      

  5.   

    你可以把整个页面分成几个jsp嘛,一个jsp对应着一个action,然后由一个总的jsp页面分别调用这几个action;不过,jsp这么大,速度肯定比较慢;
      

  6.   

    貌似错误500信息,感觉是运行错误。简单举例:结果集rs.close()后,后面还继续调用rs.getString("**"),这种情况就会报类似错误。
      

  7.   

    不是简单的可以拆开的,表格中每个闪灯的地方都会有一个数组元素来记录这个站点是否异常。页面的最下面遍历这个数组中的值,显示异常的信息。但是不得不拆开。而且还得是静态include,<jsp:include page="">的这种形式。最后感谢大家积极的帮助。
      

  8.   

    编译通不过时,可以考虑用两个jsp来进行组合,或者尽量把逻辑放到后来来失败!
      

  9.   

    不至于那么小吧,JRE 中有个类拥有 30000 多行、2200 多 kB 的源代码。
      

  10.   

    目前为止还没写过超过1500行的jsp,lz威武,膜拜
      

  11.   

    没写过那么长的
    如果真的是你说的那个问题
    可以把一些方法抽象成类,再看看相同的功能看看可不可以用更好的方法实现
    再有就是拆成几个JSP
    哪个多行,维护好麻烦啊
      

  12.   

    jsp 编译成 。class文件  调整一下jvm的堆栈大小 看看能不能编译通过 。只是猜测
    我没有试验 
      

  13.   

    一个JSP  600行代码  你都写了些什么啊  神奇
      

  14.   

    牛人啊
    干嘛要把Java代码写到JSP中呢?
    一般我们写的JSP代码是不会有Java代码的。只有标签。
      

  15.   

    把它拆分成几个jsp 用<%@include %>导入试一下。如果还是不行,那应该就是代码的问题咯。
      

  16.   

    这个jsp太猛了~~~,拆分然后include一下试试
      

  17.   

    。具体是因为JAVA脚本多还是因为页面的HTML代码多通不过?