geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul McMahan (JIRA)" <j...@apache.org>
Subject [jira] Commented: (GERONIMO-3182) Damned servlet exception in Geronimo - bad stack trace.
Date Thu, 24 May 2007 16:00:36 GMT

    [ https://issues.apache.org/jira/browse/GERONIMO-3182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12498690
] 

Paul McMahan commented on GERONIMO-3182:
----------------------------------------

Thanks for the patch Alexander.  From a quick visual inspection it looks like the patch makes
geronimo's version of ServletException equivalent with tomcat's.  Right now I am looking into
replacing geronimo's 2.5 servlet spec with tomcat's 2.5 servlet spec altogether, which would
have the same effect as applying your patch.  I'll update this JIRA as details emerge.

> Damned servlet exception in Geronimo - bad stack trace.
> -------------------------------------------------------
>
>                 Key: GERONIMO-3182
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3182
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: web
>    Affects Versions: 2.0-M6
>            Reporter: Alexander Zynevich
>         Attachments: fix-for-GERONIMO-GERONIMO-3182.patch, geronimo-servlet_2.5_fix.zip,
ServletException.jad
>
>
> I trying to make JSF application working and get error messages like this in log:
> javax.servlet.ServletException: Cannot convert com.ibm.demo.managers.UserManagerImpl@1c0ab1a
of type class $Proxy34 to class com.ibm.demo.managers.UserManagerImpl for bean 'SignonBean'
check the configuration to make sure all properties correspond with get/set methods
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at com.ibm.democrm.common.AuthorizationFilter.doFilter(AuthorizationFilter.java:70)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
> 	at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:358)
> 	at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:543)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:238)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
> 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
> 	at java.lang.Thread.run(Thread.java:619)
> The problem is NOT this exception but in the way it presented.
> This exception is wrapping some runtime or app-specific exception into Servlet exception.
But geronimo is bundled with /org.apache.geronimo.specs/geronimo-servlet_2.5_spec// which
has servlet exception as:
> public class ServletException extends Exception
> {
>     public ServletException()
>     {
>     }
>     public ServletException(String message)
>     {
>         super(message);
>     }
>     public ServletException(String message, Throwable rootCause)
>     {
>         super(message);
>         this.rootCause = rootCause;
>     }
>     public ServletException(Throwable rootCause)
>     {
>         super(rootCause.getLocalizedMessage());
>         this.rootCause = rootCause;
>     }
>     public Throwable getRootCause()
>     {
>         return rootCause;
>     }
>     private Throwable rootCause;
> }
> which of course does not expose class name and stack trace of wrapped exception (I decompile
exactly from /org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.1-SNAPSHOT/)
> It makes stack trace absolutely unuseful!
> My expectation is that ServletException should be the same as the latest revision in
Tomcat project:
> http://svn.apache.org/viewvc?view=rev&revision=467995
> where the "rootCause" is hadled as "cause" in wrapping constructor of java.lang.Execption.
> I am going to substitute this class in jar manually, to bypass it.
> Of course I understand that this is because of Maven-build-ideology of Geronimo and real
*bug* is in /org.apache.geronimo.specs/geronimo-servlet_2.5_spec/1.1-SNAPSHOT/ artifact. On
the othet hand this is very anoying! Could somebody fix centrally? 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message