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

Alexander Zynevich updated GERONIMO-3182:
-----------------------------------------

    Attachment: geronimo-servlet_2.5_fix.zip

I appied this quick and dirty (zip-level) fix, and that is the difference:
18:12:09,468 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces 
Servlet threw exception
java.lang.IllegalArgumentException: Cannot convert [EMAIL PROTECTED] of type 
class $Proxy21 to class com.ibm.demo.managers.UserManagerImpl
        at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:374)
        at 
org.apache.el.ExpressionFactoryImpl.coerceToType(ExpressionFactoryImpl.java:46)
        at 
org.apache.myfaces.config.ManagedBeanBuilder.coerceToType(ManagedBeanBuilder.java:272)
        at 
org.apache.myfaces.config.ManagedBeanBuilder.initializeProperties(ManagedBeanBuilder.java:255)
        at 
org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:88)
        at 
org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:196)
        at 
org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:162)
        at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$301(FacesCompositeELResolver.java:46)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$4.invoke(FacesCompositeELResolver.java:108)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:104)
        at 
org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:61)
        at 
org.springframework.web.jsf.DelegatingVariableResolver.resolveVariable(DelegatingVariableResolver.java:108)
        at 
org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:93)
        at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.access$301(FacesCompositeELResolver.java:46)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver$4.invoke(FacesCompositeELResolver.java:108)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.invoke(FacesCompositeELResolver.java:148)
        at 
org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:104)
        at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:45)
        at org.apache.el.parser.AstValue.getValue(AstValue.java:86)
        at 
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
        at 
org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
        at javax.faces.component.UIOutput.getValue(UIOutput.java:68)
        at 
org.apache.myfaces.shared_impl.renderkit.RendererUtils.getStringValue(RendererUtils.java:224)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderInput(HtmlTextRendererBase.java:139)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.encodeEnd(HtmlTextRendererBase.java:54)
        at 
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:250)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:247)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:247)
        at 
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:308)
        at 
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        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)

> 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: 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 [EMAIL PROTECTED] 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.

Reply via email to