(I've posted this to the CF8 beta list too)
I have a fairly normal RemoteFactoryBean configured in my ColdSpring bean
config:
<bean id="planManager"
class="com.halliwells.CFCs.t3ster.manager.PlanManager">
</bean>
<bean id="remotePlanService"
class="coldspring.aop.framework.RemoteFactoryBean">
<property name="target">
<ref bean="planManager" />
</property>
<property name="serviceName">
<value>RemotePlanService</value>
</property>
<property name="relativePath">
<value>/com/halliwells/CFCs/t3ster/service/</value>
</property>
<property name="beanFactoryName">
<value>beanFactory</value>
</property>
<property name="flashUtilityService">
<ref bean="flashUtilityService" />
</property>
<property name="remoteMethodNames">
<value>get*</value>
</property>
</bean>
After starting the service up and confirming it's running OK:
<cfset application.beanFactory =
createObject("component","coldspring.beans.DefaultXmlBeanFactory").init(structnew(),structNew())/>
<cfset
application.beanFactory.loadBeansFromXmlFile(expandPath('/beans.xml'),true)/>
<cfset fac=application.beanFactory.getBean("&remotePlanService")>
<cfoutput>isUp: #fac.isConstructed()#
bring up:#fac.createRemoteProxy()#
isUp: #fac.isConstructed()#</cfoutput>
I attempt a RemoteObject call from a Flex application to a method in
the 'com.halliwells.CFCs.t3ster.service.RemotePlanService' destination.
On CF7 all is well, and the data is returned OK.
On CF8 I get the following error (for the exact same CFML code). You'll need
to comment out the try/catch from the RemoteProxyBean's setUp() method to see
it.
"Could not find the ColdFusion Component or Interface
coldspring.beans.util.BeanFactoryUtils. 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 coldspring.beans.util.BeanFactoryUtils.
at
coldfusion.runtime.TemplateProxyFactory.getResolvedFile(TemplateProxyFactory.java:1142)
at
coldfusion.runtime.TemplateProxyFactory.getTemplateFileHelper(TemplateProxyFactory.java:1315)
at
coldfusion.runtime.TemplateProxyFactory.resolveName(TemplateProxyFactory.java:1258)
at
coldfusion.cfc.ComponentProxyFactory.getProxy(ComponentProxyFactory.java:28)
at coldfusion.runtime.ProxyFactory.getProxy(ProxyFactory.java:65)
at coldfusion.runtime.CFPage.createObjectProxy(CFPage.java:4674)
at coldfusion.runtime.CFPage.CreateObject(CFPage.java:4519)
at
cfRemotePlanService2ecfc1752517605$funcSETUP.runFunction(/home/chivertont/workspace/t3ster-server/src/com/halliwells/CFCs/t3ster/service/RemotePlanService.cfc:55)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418)
at
coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:360)
at
coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:324)
at
coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:56)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2461)
at
cfRemotePlanService2ecfc1752517605.runPage(/home/chivertont/workspace/t3ster-server/src/com/halliwells/CFCs/t3ster/service/RemotePlanService.cfc:45)
I've tried a few simple things, but can't trigger the bug with just CFML code,
I can createObject() the RemoteProxy fine, for instance.
It's like the /coldspring mapping isn't seen by remoting requests in CF8 or
something. Can anyone confirm this, firstly, and secondly offer any reason
why (looks like a bug to me) ?
I'm using the ColdSpring 1.0 release, which is the latest as far as I know.
--
Tom Chiverton
Helping to ambassadorially integrate fifth-generation e-commerce
on: http://thefalken.livejournal.com
****************************************************
This email is sent for and on behalf of Halliwells LLP.
Halliwells LLP is a limited liability partnership registered in England and
Wales under registered number OC307980 whose registered office address is at St
James's Court Brown Street Manchester M2 2JF. A list of members is available
for inspection at the registered office. Any reference to a partner in relation
to Halliwells LLP means a member of Halliwells LLP. Regulated by the Law
Society.
CONFIDENTIALITY
This email is intended only for the use of the addressee named above and may be
confidential or legally privileged. If you are not the addressee you must not
read it and must not use any information contained in nor copy it nor inform
any person other than Halliwells LLP or the addressee of its existence or
contents. If you have received this email in error please delete it and notify
Halliwells LLP IT Department on 0870 365 8008.
For more information about Halliwells LLP visit www.halliwells.com.