[ http://issues.apache.org/jira/browse/ADFFACES-158?page=comments#action_12431840 ] Leif Johansson commented on ADFFACES-158: -----------------------------------------
A couple of notable things: - the DEMO and my application differ in one important respect: The demo ties a textfield to a Long and my application ties a select-field to a Long - the output above from the DEMO application shows that the conversion succeeds from a string to a Long. In my application (the first output) no conversion is done. - in both cases the updateModel throws an exception - A ClassCastException in the DEMO case and an argument type missmatch in my case (when no conversion is done for some reason). > Converter bug (Trinidad DEMO) > ----------------------------- > > Key: ADFFACES-158 > URL: http://issues.apache.org/jira/browse/ADFFACES-158 > Project: MyFaces ADF-Faces > Issue Type: Bug > Environment: Trinidad snapshot build of the DEMO application > Reporter: Leif Johansson > Priority: Critical > > The following exception is recorded when a bean property of type > java.lang.Long is bound to a > selectbox. It looks like the String value isn't parsed into the proper value > type. The bean property > is organizationId is properly declared as a Long in > SAMLEntitiesSelectOrganizationFormImpl. > 07:24:48,536 DEBUG [PropertyResolverImpl] Exception while setting property; > base : > se.su.it.saml.registry.web.entity.list.SAMLEntitiesSelectOrganizationFormImpl, > property : organizationId > javax.faces.el.EvaluationException: Bean: > se.su.it.saml.registry.web.entity.list.SAMLEntitiesSelectOrganizationFormImpl, > property: organizationId, newValue: 1,newValue class: java.lang.String > method parameter class: java.lang.Long > at > org.apache.myfaces.el.PropertyResolverImpl.setProperty(PropertyResolverImpl.java:411) > at > org.apache.myfaces.el.PropertyResolverImpl.setValue(PropertyResolverImpl.java:173) > at > com.sun.facelets.el.LegacyELContext$LegacyELResolver.setValue(LegacyELContext.java:201) > at com.sun.el.parser.AstValue.setValue(AstValue.java:134) > at > com.sun.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:255) > at > com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:93) > at > com.sun.facelets.el.LegacyValueBinding.setValue(LegacyValueBinding.java:68) > at > org.apache.myfaces.trinidad.component.UIXEditableValue.updateModel(UIXEditableValue.java:276) > at > org.apache.myfaces.trinidad.component.UIXEditableValue.processUpdates(UIXEditableValue.java:237) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:961) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:949) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:755) > at javax.faces.component.UIForm.processUpdates(UIForm.java:87) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:961) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:949) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:755) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:961) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:949) > at > org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:755) > at > javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:645) > at > javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:157) > at > org.apache.myfaces.lifecycle.LifecycleImpl.updateModelValues(LifecycleImpl.java:301) > at > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:80) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > se.su.it.saml.registry.web.entity.list.SAMLEntitiesPopulator.doFilter(SAMLEntitiesPopulator.java:47) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:327) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:291) > at > org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:262) > at > org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:90) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) > at > org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:407) > at > org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) > at java.lang.Thread.run(Thread.java:595) > Caused by: java.lang.IllegalArgumentException: argument type mismatch > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at > org.apache.myfaces.el.PropertyResolverImpl.setProperty(PropertyResolverImpl.java:406) > ... 55 more -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
