小弟,在windows下开发jsp项目,使用的tomcat5.0 for win和jdk1.4.2 for win版本,运行正常,今天部署在linux下,使用的jdk1.4.2 for linux和tomcat5.0 for linux浏览静态页面无问题,一牵扯动态jsp就报如下错误:
百思不得其解,望高手解答,linux下的环境变量是在tomcat的startup.sh中设置的,应该没问题org.apache.jasper.JasperException: Unable to compile class for JSPGenerated servlet error:
/usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:7: package com.peony.manager does not exist
import com.peony.manager.QueryManager;
                         ^
Generated servlet error:
/usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:8: package com.peony.actionform does not exist
import com.peony.actionform.YzmBean;
                            ^
An error occurred at line: 93 in the jsp file: /index.jsp
Generated servlet error:
/usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:141: cannot resolve symbol
symbol  : class QueryManager 
location: class org.apache.jsp.index_jsp
   QueryManager q = new QueryManager(); 
        ^
An error occurred at line: 93 in the jsp file: /index.jsp
Generated servlet error:
/usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:141: cannot resolve symbol
symbol  : class QueryManager 
location: class org.apache.jsp.index_jsp
   QueryManager q = new QueryManager(); 
                             ^
An error occurred at line: 93 in the jsp file: /index.jsp
Generated servlet error:
/usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:142: cannot resolve symbol
symbol  : class YzmBean 
location: class org.apache.jsp.index_jsp
   YzmBean bean = q.getPicture(); 
        ^
5 errors org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
 org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
 org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
 org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
 org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
 org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
 org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802) 

解决方案 »

  1.   

    类没找到。你是不是没配置classPath
      

  2.   

    com.peony.manager does not exist 
    com.peony.actionform does not exist 
    这两个是找不到类,看你的服务器上是不是有
    com.peony.manager.QueryManager; 
     com.peony.actionform.YzmBean
    这两个类
    /work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:141
    第三个到tomcat这个目录下找看是什么错误,看错误应该是用了QueryManager 这个类但是并没有import到jsp里
    后面两个跟第三个应该是一样的
      

  3.   

    Generated servlet error: 
    /usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:7: package com.peony.manager does not exist 
    import com.peony.manager.QueryManager; com.peony.manager.QueryManager 这个类是否有,是否编译过该类,编译后的class文件的位置是否正确Generated servlet error: 
    /usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:8: package com.peony.actionform does not exist 
    import com.peony.actionform.YzmBean; 
                                ^ 
    同上面一样,看看An error occurred at line: 93 in the jsp file: /index.jsp 
    Generated servlet error: 
    /usr/local/jakarta-tomcat-5.0.28/work/Catalina/localhost/PostPJ/org/apache/jsp/index_jsp.java:141: cannot resolve symbol 
    symbol  : class QueryManager 
    location: class org.apache.jsp.index_jsp 
      QueryManager q = new QueryManager(); 
            ^ 
    QueryManager 类你是否import过
      

  4.   

    com.peony.manager 和 com.peony.actionform 下都存在相应的class文件,在win下就没问题,同时我也把tools.jar从jdk目录考到了jre下
      

  5.   

    看看你的windows下的package是大写还是小写,如果package是大写在linux下需要改成小写
      

  6.   

    <%@page import="com.peony.manager.QueryManager"%>
    <%@page import="com.peony.actionform.YzmBean"%>
    已经导入了
      

  7.   

    我说的package是指你把java文件编译成class文件后,class文件存在的文件夹
      

  8.   

    引入包的时候有问题,请检查。
    "com.peony.manager.QueryManager"
      

  9.   

    引入包绝对没有问题,因为在windows下这程序跑的很欢,大家不要想的问题太简单,谢谢,感谢大家的支持,人人有分,不够我再加
      

  10.   

    linux跟windows的classpath设置应该有所区别
      

  11.   

    没碰到过。不敢乱发表...学习...>_<
    顶一下~~~