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

Guang Zhe Wang updated GERONIMO-5479:
-------------------------------------

    Description: 
I create a simple JSF app to test this new feature. In the managed bean User 
class, I defined a method: 

public int calYear(int x) {
                return (age + x);
}

and in the page I call it with #{user.calYear(5)}, in both tomcat and jetty 
assemblies an error occurs:

java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long) which 
implies that the container recognizes 5 as Long.

The error stack:

javax.faces.FacesException: java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
        at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241)
        at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:191)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:532)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:456)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:230)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:966)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:391)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:902)
        at 
org.apache.geronimo.jetty8.handler.GeronimoWebAppContext.doScope(GeronimoWebAppContext.java:125)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
        at 
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
        at org.eclipse.jetty.server.Server.handle(Server.java:338)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:568)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1010)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:775)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:228)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:403)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:474)
        at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
        at 
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
        at java.lang.Class.getMethod(Unknown Source)
        at javax.el.BeanELResolver.invoke(BeanELResolver.java:394)
        at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:228)
        at org.apache.el.parser.AstValue.getValue(AstValue.java:158)
        at 
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
        at 
org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:84)
        at 
javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:243)
        at javax.faces.component.UIOutput.getValue(UIOutput.java:71)
        at 
org.apache.myfaces.shared_impl.renderkit.RendererUtils.getValue(RendererUtils.java:349)
        at 
org.apache.myfaces.shared_impl.renderkit.RendererUtils.getStringValue(RendererUtils.java:301)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderOutput(HtmlTextRendererBase.java:81)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.encodeEnd(HtmlTextRendererBase.java:68)
        at 
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:486)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:618)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
        at 
org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
        at 
org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
        at 
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
        ... 25 more


  was:
I create a simple JSF app to test this new feature. In the managed bean User 
class, I defined a method: 

public int calYear(int x) {
                return (age + x);
}

and in the page I call it with #{user.calYear(5)}, in both tomcat and 
assemblies an error occurs:

java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long) which 
implies that the container recognizes 5 as Long.

The error stack:

javax.faces.FacesException: java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
        at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241)
        at 
org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:191)
        at 
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:532)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:456)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:230)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:966)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:391)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:902)
        at 
org.apache.geronimo.jetty8.handler.GeronimoWebAppContext.doScope(GeronimoWebAppContext.java:125)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at 
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
        at 
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
        at org.eclipse.jetty.server.Server.handle(Server.java:338)
        at 
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:568)
        at 
org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1010)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:775)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:228)
        at 
org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:403)
        at 
org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:474)
        at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
        at 
org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodException: 
org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
        at java.lang.Class.getMethod(Unknown Source)
        at javax.el.BeanELResolver.invoke(BeanELResolver.java:394)
        at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:228)
        at org.apache.el.parser.AstValue.getValue(AstValue.java:158)
        at 
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
        at 
org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:84)
        at 
javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:243)
        at javax.faces.component.UIOutput.getValue(UIOutput.java:71)
        at 
org.apache.myfaces.shared_impl.renderkit.RendererUtils.getValue(RendererUtils.java:349)
        at 
org.apache.myfaces.shared_impl.renderkit.RendererUtils.getStringValue(RendererUtils.java:301)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderOutput(HtmlTextRendererBase.java:81)
        at 
org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.encodeEnd(HtmlTextRendererBase.java:68)
        at 
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:486)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:618)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
        at 
org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
        at 
org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
        at 
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
        ... 25 more



> EL 2.2 new feature: method invocation with parameters works incorrectly when 
> the parameter is Integer.
> ------------------------------------------------------------------------------------------------------
>
>                 Key: GERONIMO-5479
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-5479
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: javaee6
>    Affects Versions: 3.0
>            Reporter: Guang Zhe Wang
>             Fix For: 3.0
>
>
> I create a simple JSF app to test this new feature. In the managed bean User 
> class, I defined a method: 
> public int calYear(int x) {
>               return (age + x);
> }
> and in the page I call it with #{user.calYear(5)}, in both tomcat and jetty 
> assemblies an error occurs:
> java.lang.NoSuchMethodException: 
> org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long) which 
> implies that the container recognizes 5 as Long.
> The error stack:
> javax.faces.FacesException: java.lang.NoSuchMethodException: 
> org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
>       at 
> org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241)
>       at 
> org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156)
>       at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:222)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:191)
>       at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:532)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:456)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:230)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:966)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:391)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:902)
>       at 
> org.apache.geronimo.jetty8.handler.GeronimoWebAppContext.doScope(GeronimoWebAppContext.java:125)
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>       at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
>       at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
>       at org.eclipse.jetty.server.Server.handle(Server.java:338)
>       at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:568)
>       at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1010)
>       at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:775)
>       at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:228)
>       at 
> org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:403)
>       at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:474)
>       at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
>       at 
> org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
>       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
>       at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>       at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.NoSuchMethodException: 
> org.apache.geronimo.testsuite.el22.app.User.calYear(java.lang.Long)
>       at java.lang.Class.getMethod(Unknown Source)
>       at javax.el.BeanELResolver.invoke(BeanELResolver.java:394)
>       at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:228)
>       at org.apache.el.parser.AstValue.getValue(AstValue.java:158)
>       at 
> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
>       at 
> org.apache.myfaces.view.facelets.el.TagValueExpression.getValue(TagValueExpression.java:84)
>       at 
> javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:243)
>       at javax.faces.component.UIOutput.getValue(UIOutput.java:71)
>       at 
> org.apache.myfaces.shared_impl.renderkit.RendererUtils.getValue(RendererUtils.java:349)
>       at 
> org.apache.myfaces.shared_impl.renderkit.RendererUtils.getStringValue(RendererUtils.java:301)
>       at 
> org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.renderOutput(HtmlTextRendererBase.java:81)
>       at 
> org.apache.myfaces.shared_impl.renderkit.html.HtmlTextRendererBase.encodeEnd(HtmlTextRendererBase.java:68)
>       at 
> javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:486)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:618)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
>       at javax.faces.component.UIComponent.encodeAll(UIComponent.java:614)
>       at 
> org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1117)
>       at 
> org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:231)
>       at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:122)
>       at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:207)
>       ... 25 more

-- 
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