A good way now with CF8 is to enable break on exception with a debug
session and the debugger will stop in the exact place and give access to
almost any scope.
This has allowed me to debug easely coldspring related issues without
having to use try/catch or comment part of my code.
João Fernandes
Brian Kotek wrote:
No that's definitely a mistake (but since the example store doesn't
actually use the DAO, the error never comes into play). I have no idea
why that is even in there. I must have been toying with the idea of
creating some CRUD for a product.
Regarding the ColdSpring error, I would start by commenting out parts
of the XML to see if you can narrow down which bean is causing the
error. If you are brave, you can also go into the ColdSpring factory
itself and wrap that code in a try/catch block, and output the value
of the bean that is throwing the error.
On 9/4/07, *David Phipps* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
Hi,
Further to my previous email, I am still struggling with this
error even
after rolling back to a previous version of the config file.
Brian K, I noticed that in your presentation sample code you had a
coldspring config file which had the following bean declaration:
<bean id="productDAO" factory-bean="reactorFactory"
factory-method="createGateway">
Should the factory-method be createGateway or createDAO? My problems
seemed to start when I changed it to createDAO. I also added the
protxutils bean at the same time and even when I remove these I still
get the error.
My current config file is below (apologies for the length):
coldspring.xml.cfm:
<?xml version="1.0" encoding="UTF-8"?>
<beans>
<!-- Setup Reactor Configuration -->
<bean id="reactorConfiguration" class="
reactor.config.Config">
<constructor-arg name="pathToConfigXml">
<value>/store/config/reactor.xml.cfm</value>
</constructor-arg>
<property name="project">
<value>store</value>
</property>
<property name="dsn">
<value>store</value>
</property>
<property name="type">
<value>mysql</value>
</property>
<property name="mapping">
<value>/store/com</value>
</property>
<property name="mode">
<value>development</value>
</property>
</bean>
<!-- Setup Reactor -->
<bean id="reactorFactory" class="reactor.ReactorFactory">
<constructor-arg name="configuration">
<ref bean="reactorConfiguration" />
</constructor-arg>
</bean>
<!-- Setup Protx Utils -->
<bean id="protxutils" class=" store.com.protxutils" />
<!-- Setup Cart Factory -->
<bean id="CartFactory" class="store.com.CartFactory" />
<!-- Setup Session Facade -->
<bean id="SessionFacade" class="store.com.SessionFacade">
<property name="cartFactory">
<ref bean="cartFactory" />
</property>
</bean>
<!-- Setup Category related components -->
<bean id="CategoryService" class="store.com.CategoryService">
<property name="reactorFactory">
<ref bean="reactorFactory" />
</property>
<property name="categoryGateway">
<ref bean="categoryGateway" />
</property>
<property name="categoryDAO">
<ref bean="categoryDAO" />
</property>
<property name="sessionFacade">
<ref bean="sessionFacade" />
</property>
</bean>
<bean id="categoryGateway" factory-bean="reactorFactory"
factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>category</value>
</constructor-arg>
</bean>
<bean id="categoryDAO" factory-bean="reactorFactory"
factory-method="createDAO">
<constructor-arg name="objectAlias">
<value>category</value>
</constructor-arg>
</bean>
<!-- Setup Product-related components -->
<bean id="ProductService" class=" store.com.ProductService">
<property name="reactorFactory">
<ref bean="reactorFactory" />
</property>
<property name="productGateway">
<ref bean="productGateway" />
</property>
<property name="productDAO">
<ref bean="productDAO" />
</property>
<property name="sessionFacade">
<ref bean="sessionFacade" />
</property>
<property name="categoryService">
<ref bean="categoryService" />
</property>
</bean>
<bean id="productGateway" factory-bean="reactorFactory"
factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>product</value>
</constructor-arg>
</bean>
<bean id="productDAO" factory-bean="reactorFactory"
factory-method="createDAO">
<constructor-arg name="objectAlias">
<value>product</value>
</constructor-arg>
</bean>
<!-- Setup Cart-related components -->
<bean id="CartService" class=" store.com.CartService">
<property name="sessionFacade">
<ref bean="sessionFacade" />
</property>
<property name="productService">
<ref bean="productService" />
</property>
</bean>
<bean id="CustomerService" class="store.com.CustomerService ">
<property name="reactorFactory">
<ref bean="reactorFactory" />
</property>
<property name="customerGateway">
<ref bean="customerGateway" />
</property>
<property name="customerDAO">
<ref bean="customerDAO" />
</property>
<property name="sessionFacade">
<ref bean="sessionFacade" />
</property>
</bean>
<bean name="customerGateway" factory-bean="reactorFactory"
factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>customer</value>
</constructor-arg>
</bean>
<bean id="customerDAO" factory-bean="reactorFactory"
factory-method="createDAO">
<constructor-arg name="objectAlias">
<value>customer</value>
</constructor-arg>
</bean>
<bean id="AddressService" class="store.com.AddressService">
<property name="reactorFactory">
<ref bean="reactorFactory" />
</property>
<property name="CustomerService">
<ref bean="CustomerService" />
</property>
<property name="addressbookGateway">
<ref bean="addressbookGateway" />
</property>
<property name="addressbookDAO">
<ref bean="addressbookDAO" />
</property>
<property name="countryGateway">
<ref bean="countryGateway" />
</property>
<property name="countryDAO">
<ref bean="countryDAO" />
</property>
<property name="sessionFacade">
<ref bean="sessionFacade" />
</property>
</bean>
<bean id="addressbookGateway" factory-bean="reactorFactory"
factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>addressbook</value>
</constructor-arg>
</bean>
<bean id="addressbookDAO" factory-bean="reactorFactory"
factory-method="createDAO">
<constructor-arg name="objectAlias">
<value>addressbook</value>
</constructor-arg>
</bean>
<bean id="countryGateway" factory-bean="reactorFactory"
factory-method="createGateway">
<constructor-arg name="objectAlias">
<value>country</value>
</constructor-arg>
</bean>
<bean id="countryDAO" factory-bean="reactorFactory"
factory-method="createDAO">
<constructor-arg name="objectAlias">
<value>country</value>
</constructor-arg>
</bean>
</beans>
If anyone can spot any obvious mistakes, please let me know. I have
trawled the archives but cannot find anything on this particular
error.
Cheers,
Dave
David Phipps wrote:
> Hi,
>
> This is my first outing with ColdSpring and so far it is working
really
> well with Reactor and FB5.1. Until I made some changes last
night and
> today I am getting the following error:
>
> Element ID is undefined in BeanAttributes
>
> The error occurred in
>
/Applications/ColdFusion8/wwwroot/coldspring/beans/DefaultXmlBeanFactory.cfc:
> line 202
>
> 202 : <cfset createBeanDefinition(beanAttributes.id,
> 203 : "",
> 204 : beanChildren,
>
> I have checked the coldspring.xml file and I can't see anything
obvious,
> like typos etc.
>
> Has anyone seen this before? Can you tell me where I have gone
wrong?
>
> As far as I can tell this error is occurring very early during
> application startup. I don't think it actually gets as far as
the first
> fuseaction.
>
> Many thanks,
>
> Dave
--
_______________________________________________________________________
David Phipps, Director
[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>
Chapel Studios / London
T +44 (0)20 7100 6980 F +44 (0)20 7100 6981 M +44 (0)7765 240899
New Broad Street House, 35 New Broad Street, London, EC2M 1NH, UK
Visit our website: http://www.chapel-studios.co.uk
_______________________________________________________________________
Chapel Studios is a limited company registered in England. The
information in this email is confidential, intended solely
for the
addressee, and may be legally privileged. If you are not the
addressee
or authorized to receive this for the addressee, you must not
use,
copy,
disclose or take any action based upon this message or any
information
herein. If you have received this message in error, please
advise
the sender immediately by reply e-mail.