Hi Tom, Since it apparently happens randomly, it seems it depends on the data that is being passed from Flex to CF and that can vary depending on user input or selection. So, it seems some combination of this data is not loved by the CFASSerializer in the AMF gateway. I think you will have to troubleshoot it with different data combinations and see what causes it to error.
Based on my experience with AMF, CF and flex, just can't think of anything else. Web Manager FlexDownloads.com --- In [email protected], Tom McNeer <tmcn...@...> wrote: > > Hi, > > I have a ColdFusion application that uses a Flex app as a front end. Until > recently, everything worked smoothly. But now, I am getting a stack of > NullPointerException errors that seem to come from the gateway's serializer. > > I am seeing this occur in both dev and production environments, and I have > determined that it happens with both ColdFusion 8 and ColdFusion 9. > > Since it's a recent occurrence, there must be some issue with my application > code, possibly in the objects coming from Flex. But the errors do not happen > consistently - meaning, the same method call with the same parameters may > succeed or fail with the same error. > > Unfortunately, the stack trace (this is from CF8) does not direct me to > anything in my code, or even to a specific method. > > Here's a sample of many, identical exceptions: > > =============================================== > "Error","jrpp-37","02/12/10","14:47:57",,"java.lang.NullPointerException" > java.lang.RuntimeException: java.lang.NullPointerException > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:341) > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:81) > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:140) > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:85) > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:512) > at > coldfusion.flash.messaging.io.amf.Translator.CFASSerializer.translate(CFASSerializer.java:494) > at > coldfusion.flash.filter.CFCInvokeFilter.invoke(CFCInvokeFilter.java:160) > at > coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:282) > at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) > at > coldfusion.flash.filter.CFCInvokePathFilter.invoke(CFCInvokePathFilter.java:70) > at > coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28) > at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) > at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) > at > coldfusion.flash.messaging.ColdFusionAdapter.invoke(ColdFusionAdapter.java:223) > at > flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:173) > at > flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1165) > at > flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:757) > at > flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:117) > at > flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158) > at > flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:48) > at > flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67) > at > flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:145) > at flex.messaging.endpoints.AMFEndpoint.service(AMFEndpoint.java:122) > at > flex.messaging.MessageBrokerServlet.service(MessageBrokerServlet.java:438) > at > coldfusion.flex.ColdFusionMessageBrokerServlet.service(ColdFusionMessageBrokerServlet.java:50) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) > at jrun.servlet.FilterChain.doFilter(FilterChain.java:86) > at > coldfusion.filter.FlashRequestControlFilter.doFilter(FlashRequestControlFilter.java:71) > at > coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) > at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) > at jrun.servlet.FilterChain.service(FilterChain.java:101) > at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) > at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) > at > jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286) > at > jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543) > at > jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203) > at > jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320) > at > jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428) > at > jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266) > at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66) > Caused by: java.lang.NullPointerException > ==================================================== > > Has anyone seen anything like this, or can anyone suggest a way to determine > the cause? > > I hate cross-posts, but I'm going to place this on both the CF-Talk and the > FlexCoders list, since it apparently deals with the interaction of the two. > > Thanks in advance for any insight. > > -- > Thanks, > > Tom > > Tom McNeer > MediumCool > http://www.mediumcool.com > 1735 Johnson Road NE > Atlanta, GA 30306 > 404.589.0560 >

