Status/Resolution/Reason: Closed/Fixed/
Reporter/Name(from Bugbase): Jared Rypka-Hauer / Jared Rypka-Hauer (Jared Rypka-Hauer)
Created: 04/30/2009
Components: Flex/Flash, Flex remoting
Versions: 9.0
Failure Type: Unspecified
Found In Build/Fixed In Build: 0000 / 232233
Priority/Frequency: Major / Unknown
Locale/System: English / Platforms All
Vote Count: 3
Problem:
I just got nailed by this issue again... after struggling with a Flex app that couldn't find a CFC literally for several hours, I was checking over some settings file and remembered the <use-mappings> setting in remoting-config.xml.
At the very least create a new error message that takes note of the fact that this is a function of the remoting gateway and that it needs to be fixed thru the remoting-config.xml file. The error message that it can't find a CFC is just plain wrong from every perspective except a call thru the remoting gateway. I've been doing Flex off and on for years, and I KNEW about this and it still took me 3 hours to figure out what was going on. The stack trace below proves that the server _knows_ that this request has come thru the RemotingService and supplying an actually USEFUL error message should therefore be possible.
I tell ya, guys... first of all this really, really, really needs to be defaulted to TRUE! Most people using Flex are going to be using mappings anyway, why this is defaulted to false is totally beyond me.
Secondly, this has _got_ to become a toggle in the Flash/Flex remoting and integration settings page of the administrator. This issue nails just about everyone who's ever used Flex and CF remoting and it is truly embarrassing to have to tell people to edit this arcane config file to switch a very common setting on the server.
PLEEEEEAAASSSSSEEEEEE fix this. It shouldn't take more than a few minutes anyway??
Relevant section of remoting-config.xml is here:
<access>
<!-- Use the ColdFusion mappings to find CFCs, by default only CFC files under your webroot can be found. -->
<use-mappings>true</use-mappings>
<!-- allow "public and remote" or just "remote" methods to be invoked -->
<method-access-level>remote</method-access-level>
</access>
Method:
Result:
"Error","jrpp-80","04/30/09","13:35:57",,"Could not find the ColdFusion Component or Interface ModelGlue.gesture.remoting.AbstractRemotingService. Ensure that the name is correct and that the component or interface exists."
coldfusion.runtime.CfJspPage$NoSuchTemplateException: Could not find the ColdFusion Component or Interface ModelGlue.gesture.remoting.AbstractRemotingService.
at coldfusion.runtime.TemplateProxyFactory.getResolvedFile(TemplateProxyFactory.java:1173)
at coldfusion.runtime.TemplateProxyFactory.resolveSuperPath(TemplateProxyFactory.java:611)
at coldfusion.runtime.TemplateProxyFactory.resolveComponentHelper(TemplateProxyFactory.java:332)
at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:211)
at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:157)
at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:147)
at coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:131)
at coldfusion.runtime.TemplateProxyFactory.resolveFile(TemplateProxyFactory.java:90)
at coldfusion.runtime.TemplateProxyFactory.resolveFile(TemplateProxyFactory.java:81)
at coldfusion.flash.filter.CFCInvokeFilter.invoke(CFCInvokeFilter.java:104)
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:273)
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$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
----------------------------- Additional Watson Details -----------------------------
Watson Bug ID: 3038399
External Customer Info:
External Company:
External Customer Name: Jared Rypka-Hauer
External Customer Email: 08C411A143BC38A7992016B6
External Test Config: 04/30/2009
Attachments:
Comments: