创建的jsp项目,在tomcat打开的时候显示以下错误。初来乍到,请好心专业人士指点。。
严重: The web application [/firstweb] created a ThreadLocal with key of type [com.sun.faces.util.Util$1] (value [com.sun.faces.util.Util$1@130be8c]) and a value of type [java.util.HashMap] (value [{com.sun.faces.patternCache={ = }}]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
另外,我创建的访问数据库的类,在测试中运转正常,但在servlet中调用类方法会出现以下错误,查了好多方法,始终搞不明白,一并请教。(看到之前有位朋友也遇到这个问题,有人说是jar导入tomcat下的lib文件夹,所以我也把jar包导入了webinfo下面的lib,但仍然搞不定。)信息: Reloading Context with name [/firstweb] is completed
java.io.FileNotFoundException: peizhi.properties (系统找不到指定的文件。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at com.yb.web.Wow.<clinit>(Wow.java:71)
at com.yb.controller.Myserv.doGet(Myserv.java:28)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)

解决方案 »

  1.   

    从信息看,是找不到peizhi.properties这个文件,而不是无法调用类文件!
      

  2.   

    1 你的一个内部类中使用了线程,它还调用了一个非线程安全的类
    2 你在普通项目中默认根路径和Web项目下的默认根路径不一样,你又没写好相对路径,当然报错。
      

  3.   

    谢谢各位的指点,在下实在是生手。路径调整了以后,原来的问题确实得到了修正。
    但是又出现了一个新的问题:在servlet中存入的对象,通过setredirect可以发送至jsp页面,但是发送信息不完整,于是用setattribute来发送,但是在jsp页面中取值为空。
    servlet页面的相关代码:
    String pin=Wow.chaxun;

    //response.sendRedirect("MyJsp1.jsp?pins="+pin);
    //pw.print(pin);
    request.setAttribute("pin",pin);
    request.getRequestDispatcher("MyJsp1.jsp").forward(request,response);
    jsp页面的相关代码:
    <%
        String pin =(String)request.getAttribute("pins");
    %>
    <body>
       <%=pin[0]%>
    </body>  
      

  4.   

    哦,更正一下,上面那个代码,最下面的那一句为
    <body>
      <%=pin%>//此处没有加下标,是我编辑的时候弄错了。
    </body> 
    请各位指点。
      

  5.   


    你上面用的是 request.setAttribute("pin",pin);参数是pin,取值的时候却是pins.
    正确的是:String pin =(String)request.getAttribute("pin");
      

  6.   

    谢谢,这个是我手误,没编好,我更正了之后,出现如下信息:
    严重: Servlet.service() for servlet [Myserv] in context with path [/firstweb] threw exception [An exception occurred processing JSP page /MyJsp1.jsp at line 2522: 
    23:   </head>
    24:   <%
    25:     String pin =(String)request.getAttribute("pin");
    26:     %>
    27:   <body>
    28:    <%=pin%>
    Stacktrace:] with root cause
    java.lang.ClassCastException: [Ljava.lang.String; cannot be cast to java.lang.String
    at org.apache.jsp.MyJsp1_jsp._jspService(MyJsp1_jsp.java:93)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:690)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:477)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
    at com.yb.controller.Myserv.doGet(Myserv.java:35)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:619)