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 flexcoders@yahoogroups.com, Tom McNeer 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: