Hi,

I have a very strange problem here. And I don't know what is the cause of 
that problem (Tomcat ? Struts ? JBuilder ? something else ?).

Here's my problem: when I run a first time my project with Jbuilder 6 
(using Tomcat 4.0.1), I have practically no problem.
Then I stop the Tomcat server and try to run it again (without changing a 
thing !). And suddenly, the following exception is thrown:

>Apache Tomcat/4.0.1 - Error report<!--H1{font-family : 
>sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} 
>BODY{font-family : sans-serif,Arial,Tahoma;color : black;background-color 
>: white;} B{color : white;background-color : #0086b2;} HR{color : 
>#0086b2;} -->Apache Tomcat/4.0.1 - HTTP Status 500 - Internal Server 
>Errortype Exception reportmessage Internal Server Errordescription The 
>server encountered an internal error (Internal Server Error) that 
>prevented it from fulfilling this request.exception 
>javax.servlet.ServletException: duplicate class definition: 
>org/apache/jasper/runtime/HttpJspBase
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:484)
>  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:201)
>  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:2344)
>  at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
>  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.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:163)
>  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:1011)
>  at 
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1106)
>  at java.lang.Thread.run(Thread.java:536)
>root cause java.lang.LinkageError: duplicate class definition: 
>org/apache/jasper/runtime/HttpJspBase
>  at java.lang.ClassLoader.defineClass0(Native Method)
>  at java.lang.ClassLoader.defineClass(ClassLoader.java:509)
>  at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
>  at java.net.URLClassLoader.defineClass(URLClassLoader.java:246)
>  at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
>  at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
>  at java.security.AccessController.doPrivileged(Native Method)
>  at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
>  at 
> 
>org.apache.catalina.loader.StandardClassLoader.findClass(StandardClassLoader.java:671)
>  at 
> 
>org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:1090)
>  at 
> 
>org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:989)
>  at 
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1293)
>  at 
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1156)
>  at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:198)
>  at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132)
>  at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:322)
>  at java.lang.ClassLoader.defineClass0(Native Method)
>  at java.lang.ClassLoader.defineClass(ClassLoader.java:509)
>  at java.lang.ClassLoader.defineClass(ClassLoader.java:438)
>  at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:216)
>  at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132)
>  at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:575)
>  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:201)
>  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:2344)
>  at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
>  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.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:163)
>  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:1011)
>  at 
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1106)
>  at java.lang.Thread.run(Thread.java:536)

BUT, if I delete all the *.class generated by Jbuilder and then try to run 
again my project. It still runs fine.
So the problem seems to occur only the second times I try to run my project !
Very weird isn't it ???

So, here's my question, what could be the problem ?
Is it Jbuilder having trouble unloading my *.class ?
Is it Tomcat, which when it is stopped, doesn't unload my *.class correctly ?
Is it Struts, messing something with my *.class ? (I strongly doubt about 
that one, but I don't have a clue...)
Or finally is it something else ?

Thanx for having taken the time to read me ? And any suggestion would be 
appreciated as I don't have any clue why that exception is only thrown the 
second time I run my project :(

Friendly Regards,
Slimane

NB.: my config:
JBuilder 6.0
Tomcat 4.0.1
Struts nightly build of 28/02/2002

PS: as nobody answered my previous mail 
(http://www.mail-archive.com/struts-user@jakarta.apache.org/msg25574.html) 
I suppose there's no solution for complex link with Struts.


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to