简体   繁体   中英

javax.servlet.ServletException: Servlet.destroy() for servlet jsp threw exception

From time to time i get this error on Eclipse:

Grave: Servlet jsp threw unload() exception
javax.servlet.ServletException: Servlet.destroy() for servlet jsp threw exception
    at org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1486)
    at org.apache.catalina.core.StandardWrapper.stopInternal(StandardWrapper.java:1823)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5463)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
    at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3913)
    at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:426)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1345)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchFieldError: deferredExpression
    at org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:178)
    at org.apache.jasper.runtime.TagHandlerPool.release(TagHandlerPool.java:165)
    at org.apache.jsp.Include.Apertura_jsp._jspDestroy(Apertura_jsp.java:45)
    at org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:60)
    at org.apache.jasper.servlet.JspServletWrapper.destroy(JspServletWrapper.java:478)
    at org.apache.jasper.compiler.JspRuntimeContext.destroy(JspRuntimeContext.java:317)
    at org.apache.jasper.servlet.JspServlet.destroy(JspServlet.java:354)
    at org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1465)
    ... 12 more

It happens after Ecplise print this on the console window

ago 12, 2014 11:14:40 PM org.apache.catalina.core.StandardContext reload
Informazioni: Reloading Context with name [/Jeans2] has started
ago 12, 2014 11:14:40 PM org.apache.catalina.core.ApplicationContext log

I think it means Eclipse is trying to compile my classe etc. Anyway, my project stopped working after eclipse do it, and i get that error

I found some similar posts, but i didnt find a solution that suits my problem. According to other posts solutions, i did this stuff:

1) I have no jstl jar file in the WEB-INF/lib folder

2) I have no duplicated jar files in my java build path

Does anybody had my same problem?

I found this: The main reason for this error to be thrown at run-time is "that you may have accidentally (indeed purposefully) deleted a field(public or protected) from the class, or interface and recompiled the edited class or interface alone."

Maybe if eclipse stopped re-compiling every 2 minutes my project i wouldn't get this error, right?? I mean, actually i dont have any error in my application, is it right?

This seems to be a problem generated by Eclipse Build Automatically option. Just turn it off by going to Project / Build Automatically and select it to uncheck it. After this, you will have to compile your project manually by right clicking on it and select Build Project option.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM