I posted this yesterday on the Reactor list, but have had no responses. And since I'm using ColdSpring along with Reactor and Model-Glue, I thought perhaps someone on this list might be able to help. I can't tell whether the issue involves Reactor, CS or just me.
Here's the original post:
I am receiving the error in the subject line: "property requested does not exist for bean: reactorFactory," in my sample application. I've tried to trace it back through the various components (this is MG/CS/Reactor), and I can't really find what's failing -- especially since Reactor seems to work properly, even after the error is displayed.
According to debugging output, the error is coming when objectFactory.cfc is attempting to generate or return the database-specific components. The requested property is "objectFactory."
On my Dev server, the exception, while reported, is ignored and everything seems to run fine -- components are autowired, Reactor returns the correct data. On another server, the exception turns into a Null Pointer exception and stops everything.
The error occurs on every request to the application (all settings are for "development").
My MG config includes:
<setting name="beanMappings" value="/lpsdocs/config/beans
/lpsdocs.xml" />
<setting name="beanFactoryLoader" value="ModelGlue.Core.ColdSpringLoader" />
<setting name="autowireControllers" value="true" />
The CS config file is:
<beans>
<bean id="reactorFactory" class="reactor.reactorFactory">
<constructor-arg name="configuration">
<value>/lpsdocs/config/Reactor.xml</value>
</constructor-arg>
</bean>
<bean id="CategoryGateway" factory-bean="reactorFactory" factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>Category</value>
</constructor-arg>
</bean>
<bean id="DocumentGateway" factory-bean="reactorFactory" factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>Document</value>
</constructor-arg>
</bean>
<bean id="documentController" class=" lpsdocs.controller.documentController">
<!-- <constructor-arg name="utils">
<ref bean="utils" />
</constructor-arg>-->
</bean>
<bean id="utils" class="lpsdocs.model.utils">
</bean>
</beans>
And the Reactor config is:
<reactor>
<config>
<project value="LPSDocs" />
<dsn value="lpwebdocs" />
<type value="mssql" />
<mapping value="/lpsDocs/model/LPDocsReactorData" />
<mode value="development" />
</config>
<objects>
<object name="tblLPWebDocs_Documents" alias="Document" >
<field name="document_i_id" alias="documentID" />
<field name="document_v_title" alias="title" />
<field name="document_v_description" alias="description" />
<field name="document_i_category_id" alias="categoryID" />
<field name="document_v_link" alias="link" />
<field name="document_i_sortNo" alias="sort" />
<field name="document_b_isExternal" alias="isExternal" />
<field name="document_b_isPublic" alias="isPublic" />
<field name="document_b_isVideo" alias="isVideo" />
<field name="document_d_changedate" alias="changeDate" />
<field name="document_i_changeuser_id" alias="changeUserID" />
<field name="document_d_displaydate" alias="displayDate" />
<field name="document_v_filename" alias="fileName" />
<field name="document_b_inactive" alias="inactive" />
<hasOne name="Category">
<relate from="categoryID" to="categoryID" />
</hasOne>
</object>
<object name="tblLPWebDocs_Categories" alias="Category" >
<field name="category_i_id" alias="CategoryID" />
<field name="category_parent_i_id" alias="ParentID" />
<field name="category_v_desc" alias="catDescription" />
<field name="category_d_changedate" alias="catChangeDate" />
<field name="category_i_changeuser_id" alias="catChangeUserID" />
<field name="category_i_sortNo" alias="catSort" />
<hasMany name="Document">
<relate from="categoryID" to="categoryID" />
</hasMany>
</object>
</objects>
</reactor>
Has anyone seen a similar problem, or do you see an error in my setup? Thanks for any suggestions.
<setting name="beanFactoryLoader" value="ModelGlue.Core.ColdSpringLoader" />
<setting name="autowireControllers" value="true" />
The CS config file is:
<beans>
<bean id="reactorFactory" class="reactor.reactorFactory">
<constructor-arg name="configuration">
<value>/lpsdocs/config/Reactor.xml</value>
</constructor-arg>
</bean>
<bean id="CategoryGateway" factory-bean="reactorFactory" factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>Category</value>
</constructor-arg>
</bean>
<bean id="DocumentGateway" factory-bean="reactorFactory" factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>Document</value>
</constructor-arg>
</bean>
<bean id="documentController" class=" lpsdocs.controller.documentController">
<!-- <constructor-arg name="utils">
<ref bean="utils" />
</constructor-arg>-->
</bean>
<bean id="utils" class="lpsdocs.model.utils">
</bean>
</beans>
And the Reactor config is:
<reactor>
<config>
<project value="LPSDocs" />
<dsn value="lpwebdocs" />
<type value="mssql" />
<mapping value="/lpsDocs/model/LPDocsReactorData" />
<mode value="development" />
</config>
<objects>
<object name="tblLPWebDocs_Documents" alias="Document" >
<field name="document_i_id" alias="documentID" />
<field name="document_v_title" alias="title" />
<field name="document_v_description" alias="description" />
<field name="document_i_category_id" alias="categoryID" />
<field name="document_v_link" alias="link" />
<field name="document_i_sortNo" alias="sort" />
<field name="document_b_isExternal" alias="isExternal" />
<field name="document_b_isPublic" alias="isPublic" />
<field name="document_b_isVideo" alias="isVideo" />
<field name="document_d_changedate" alias="changeDate" />
<field name="document_i_changeuser_id" alias="changeUserID" />
<field name="document_d_displaydate" alias="displayDate" />
<field name="document_v_filename" alias="fileName" />
<field name="document_b_inactive" alias="inactive" />
<hasOne name="Category">
<relate from="categoryID" to="categoryID" />
</hasOne>
</object>
<object name="tblLPWebDocs_Categories" alias="Category" >
<field name="category_i_id" alias="CategoryID" />
<field name="category_parent_i_id" alias="ParentID" />
<field name="category_v_desc" alias="catDescription" />
<field name="category_d_changedate" alias="catChangeDate" />
<field name="category_i_changeuser_id" alias="catChangeUserID" />
<field name="category_i_sortNo" alias="catSort" />
<hasMany name="Document">
<relate from="categoryID" to="categoryID" />
</hasMany>
</object>
</objects>
</reactor>
Has anyone seen a similar problem, or do you see an error in my setup? Thanks for any suggestions.
--
Thanks,
Tom
Tom McNeer
MediumCool
http://www.mediumcool.com
530 Means St NW, Suite 110
Atlanta, GA 30318
404.589.0560
