在本机修改并调试通过后,直接将class和JSP文件上传覆盖,程序总是报错。服务器上用的是Tomcat.
type Exception reportmessage Internal Server Errordescription The server encountered an internal error (Internal Server Error) that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
An error occurred between lines: 188 and 194 in the jsp file: /hxsubject/viewproduction.jspGenerated servlet error:
E:\Tomcat\work\localhost\test\hxsubject\viewproduction$jsp.java:235: Wrong number of arguments in method.
                 filepath = sm1.getUploadPath(pb.getType(),pb.getTrueid(),ui_flag,pb.getId()); 
                                             ^
1 error, 1 warning at org.apache.jasper.compiler.Compiler.compile(Compiler.java:285)
at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:552)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:177)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:189)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2343)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1012)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1107)
at java.lang.Thread.run(Thread.java:536)

解决方案 »

  1.   

    可以的啊,看看你本地的和服务器上的配置是否相同,还有了,传上去后,最好重起一下tomcat
      

  2.   

    之前没有负责这方面的维护工作,刚刚接手有点乱,昨天没办法,只能把本地的文件,全部上传了,至少是没问题了,今天另外建了个虚拟目录在测试,总是不成功。
    楼上所说的配置是conf目录中的文件?
      

  3.   

    看下IS服務器 是否指向C:\Tomcat 5.5\webapps 記得那里也是要配置的
      

  4.   

    可以,上传到同路径目录下就可以了,TOMCAT版本高的话不用重启就行
      

  5.   

    TOMCAT的软件开发和版本有关.
    可能是你的TOMCAT的版本和服务器的版本不一样导致的CLASS文件是拷贝了就可以用的.
    不需要重新编译的.
    拷贝文件后,建议重启TOMCAT
      

  6.   

    可以的 最好删除TOMCAT下的WORK那里面的一些缓存文件,然后重起TOMCAT
      

  7.   

    要注意两个机器上的 JRE 版本要一致,高版本编译出的 CLASS 放到低版本中运行会有问题。