Hi Mark

The follow was in the CF error diagnostics:

Stack Trace: java.lang.StackOverflowError
Type: coldfusion.runtime.CfErrorWrapper
Root cause: java.lang.StackOverflowError

If I turn on Execution Times in CF admin the final section is as per
below. Perhaps the Transfer Java loader is involved (not the final
call to create() method in \transfer_v1-1\transfer\com\util\javaloader
\JavaLoader.cfc.

0 ms    0 ms    2       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Link.cfc | getColumn() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Link.cfc
0 ms    0 ms    2       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Link.cfc | getToObject() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Link.cfc
0 ms    0 ms    6       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Object.cfc | getClassName() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Object.cfc
0 ms    0 ms    2       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Object.cfc | getObjectName() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Object.cfc
0 ms    0 ms    31      CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Object.cfc | getPrimaryKey() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Object.cfc
0 ms    0 ms    5       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Object.cfc | getPropertyIterator
() ] from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Object.cfc
0 ms    0 ms    4       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ObjectManager.cfc | getObject
(Basket) ] from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ObjectManager.cfc
0 ms    0 ms    7       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ObjectManager.cfc | getObject
(User) ] from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ObjectManager.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ObjectManager.cfc |
getObjectLazyOneToMany(User, UserBaskets) ] from C:\Program Files
\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com\object
\ObjectManager.cfc
0 ms    0 ms    4       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ParentOneToMany.cfc | getLink() ]
from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\ParentOneToMany.cfc
0 ms    0 ms    15      CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\PrimaryKey.cfc | getColumn() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\PrimaryKey.cfc
0 ms    0 ms    8       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\PrimaryKey.cfc | getIsComposite() ]
from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\PrimaryKey.cfc
0 ms    0 ms    9       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\PrimaryKey.cfc | getName() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\PrimaryKey.cfc
0 ms    0 ms    16      CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\PrimaryKey.cfc | getType() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\PrimaryKey.cfc
0 ms    0 ms    9       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Property.cfc | getColumn() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Property.cfc
0 ms    0 ms    9       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Property.cfc | getName() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Property.cfc
0 ms    0 ms    9       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\object\Property.cfc | getType() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\object\Property.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\Datasource.cfc | getName() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\sql\Datasource.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\Datasource.cfc | getPassword() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\sql\Datasource.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\Datasource.cfc | getUsername() ] from
C:\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\sql\Datasource.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\QueryExecution.cfc | clean() ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\sql\QueryExecution.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\QueryExecution.cfc | setMemento
([complex value]) ] from C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\QueryExecution.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\QueryExecution.cfc | setParam
(argumentCollection = [complex value]) ] from C:\Program Files\Apache
Group\Apache2\htdocs\transfer_v1-1\transfer\com\sql\QueryExecution.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\collections\QueryCache.cfc | getQuery
(transfer.select.User.UserBaskets) ] from C:\Program Files\Apache Group
\Apache2\htdocs\transfer_v1-1\transfer\com\sql\collections
\QueryCache.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\collections\QueryCache.cfc | hasQuery
(transfer.select.User.UserBaskets) ] from C:\Program Files\Apache Group
\Apache2\htdocs\transfer_v1-1\transfer\com\sql\collections
\QueryCache.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\sql\collections\QueryExecutionPool.cfc |
getQueryExecution([complex value]) ] from C:\Program Files\Apache Group
\Apache2\htdocs\transfer_v1-1\transfer\com\sql\collections
\QueryExecutionPool.cfc
0 ms    0 ms    1       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\util\Utility.cfc | trimZero(1) ] from C:
\Program Files\Apache Group\Apache2\htdocs\transfer_v1-1\transfer\com
\util\Utility.cfc
0 ms    0 ms    3       CFC[ C:\Program Files\Apache Group\Apache2\htdocs
\transfer_v1-1\transfer\com\util\javaloader\JavaLoader.cfc | create
(com.compoundtheory.dynamic.Memento) ] from C:\Program Files\Apache
Group\Apache2\htdocs\transfer_v1-1\transfer\com\util\javaloader
\JavaLoader.cfc

Cheers
Matthew

On Jun 1, 10:56 am, Mark Mandel <[email protected]> wrote:
> You are right, doesn't look like it off at first glance.
>
> Did you get a Java stack trace?
>
> Mark
>
>
>
> On Mon, Jun 1, 2009 at 10:18 AM, Matthew <[email protected]> wrote:
>
> > Hi Mark
>
> > I assume you mean the generated SQL in the CF debug? If so please see
> > below (both queries return data in SQL client):
> > *** QUERY 1 ***
> > SELECT  testUser_1.firstName, testUser_1.userId, NULL as
> > transfer_parentKey, 1 as transfer_orderIndex,'User' as
> > transfer_className,'' as transfer_parentClassName,'' as
> > transfer_parentParentClassName,'' as
> > transfer_parentCompositeName,'false' as transfer_isArray,'' as
> > transfer_compositeName, 'false' as transfer_isProxied
> > FROM    testUser testUser_1
> > WHERE   testUser_1.userId = 1
> > AND     testUser_1.userId IS NOT NULL
> > ORDER BY transfer_orderIndex ASC
> > *** QUERY 2 ***
> > SELECT  testUser_1.firstName, NULL as deliveryName, NULL as
> > totalPrice, testUser_1.userId, NULL as orderId, NULL as
> > transfer_parentKey, 1 as transfer_orderIndex,'User' as
> > transfer_className,'' as transfer_parentClassName,'' as
> > transfer_parentParentClassName,'' as
> > transfer_parentCompositeName,'false' as transfer_isArray,'' as
> > transfer_compositeName, 'false' as transfer_isProxied
> > FROM    testUser testUser_1
> > WHERE   testUser_1.userId = 1
> > AND     testUser_1.userId IS NOT NULL
> > UNION ALL
> > SELECT  NULL as firstName, testOrder_2.deliveryName,
> > testOrder_2.totalPrice, testOrder_2.userId, testOrder_2.orderId, CAST
> > (testUser_1.userId as varchar(1000)) as transfer_parentKey, 2 as
> > transfer_orderIndex,'Basket' as transfer_className,'User' as
> > transfer_parentClassName,'' as transfer_parentParentClassName,'' as
> > transfer_parentCompositeName,'true' as transfer_isArray,'UserBaskets'
> > as transfer_compositeName, 'false' as transfer_isProxied
> > FROM    testUser testUser_1
> >                INNER JOIN testOrder testOrder_2 ON testUser_1.userId =
> > testOrder_2.userId
> > WHERE   testUser_1.userId = 1
> > AND     testOrder_2.orderId IS NOT NULL
> > UNION ALL
> > SELECT  testUser_3.firstName, NULL as deliveryName, NULL as
> > totalPrice, testUser_3.userId, NULL as orderId, CAST
> > (testOrder_2.orderId as varchar(1000)) as transfer_parentKey, 3 as
> > transfer_orderIndex,'User' as transfer_className,'Basket' as
> > transfer_parentClassName,'User' as
> > transfer_parentParentClassName,'UserBaskets' as
> > transfer_parentCompositeName,'false' as transfer_isArray,'OrderUser'
> > as transfer_compositeName, 'false' as transfer_isProxied
> > FROM    testUser testUser_1
> >                INNER JOIN testOrder testOrder_2 ON testUser_1.userId =
> > testOrder_2.userId
> >                INNER JOIN testUser testUser_3 ON testOrder_2.userId =
> > testUser_3.userId
> > WHERE   testUser_1.userId = 1
> > AND     testUser_3.userId IS NOT NULL
> > ORDER BY transfer_orderIndex ASC
>
> > I know "order" is a reserved wod but I don't think it's guilty. I've
> > changed Order to Basket and same error:
>
> > <object name="User" table="testUser">
> >        <id name="userId" type="numeric"></id>
> >        <property name="firstName" type="string" />
> >         <onetomany name="UserBaskets" lazy="true">
> >                <link to="Basket" column="userId" />
> >                 <collection type="array"></collection>
> >        </onetomany>
> > </object>
> > <object name="Basket" table="testOrder">
> >         <id name="orderId" type="numeric"></id>
> >        <property name="userId" type="numeric" />
> >        <property name="totalPrice" type="numeric" />
> >        <property name="deliveryName" type="string" />
> >        <manytoone name="OrderUser">
> >                <link to="User" column="userId" />
> >        </manytoone>
> > </object>
>
> > Cheers
> > Matthew
>
> > On Jun 1, 9:52 am, Mark Mandel <[email protected]> wrote:
> > > ..except for the fact that 'Order' is a reserved word in SQL, I bet you
> > that
> > > is what is causing the issue..
>
> > > What is the generated SQL?
>
> > > Mark
>
> > > On Mon, Jun 1, 2009 at 9:48 AM, Matthew <[email protected]>
> > wrote:
>
> > > > Hi Mark
>
> > > > Nope: the table isn't called Orders. I've started from scratch and
> > > > build 2 new tables testOrders/testUser just to issolate these objects
> > > > to rule out other relationships.
>
> > > > There's not much more in the error just "null null The error occurred
> > > > on line -1."
>
> > > > I think the problem is that CF is going into an infinite loop because
> > > > of recursive referencing (so perhaps to avoid crashing it just throws
> > > > a "null null").
>
> > > > To take 1 step back if you use the following XML I get this error "The
> > > > object 'Order' has a recursive link back to itself through composition
> > > > 'Orders'. You will need to set one of the elements in this chain to
> > > > lazy='true' for it to work.":
>
> > > > <object name="User" table="testUser">
> > > >         <id name="userId" type="numeric"></id>
> > > >        <property name="firstName" type="string" />
> > > >        <onetomany name="Orders">
> > > >                 <link to="Order" column="userId" />
> > > >                <collection type="array"></collection>
> > > >        </onetomany>
> > > > </object>
> > > > <object name="Order" table="testOrder">
> > > >        <id name="orderId" type="numeric"></id>
> > > >        <property name="userId" type="numeric" />
> > > >        <property name="totalPrice" type="numeric" />
> > > >        <property name="deliveryName" type="string" />
> > > >        <manytoone name="OrderUser">
> > > >                <link to="User" column="userId" />
> > > >        </manytoone>
> > > > </object>
>
> > > > When I add  lazy="true" to either the o2m or m2o the page loads fine.
> > > > I can in fact dump the none-lazy array but if I try to dump the lazy
> > > > array it throws the "null null" error - e.g. if I change the XML to
> > > > the following and try to call getOrdersArray():
>
> > > > <object name="User" table="testUser">
> > > >         <id name="userId" type="numeric"></id>
> > > >        <property name="firstName" type="string" />
> > > >        <onetomany name="Orders" lazy="true">
> > > >                <link to="Order" column="userId" />
> > > >                <collection type="array"></collection>
> > > >        </onetomany>
> > > > </object>
> > > > <object name="Order" table="testOrder">
> > > >        <id name="orderId" type="numeric"></id>
> > > >        <property name="userId" type="numeric" />
> > > >        <property name="totalPrice" type="numeric" />
> > > >        <property name="deliveryName" type="string" />
> > > >        <manytoone name="OrderUser">
> > > >                <link to="User" column="userId" />
> > > >        </manytoone>
> > > > </object>
>
> > > > Cheers
> > > > Matthew
>
> > > > On May 29, 4:17 pm, Mark Mandel <[email protected]> wrote:
> > > > > I don't suppose the table you are pointing at for 'Orders' name is
> > > > 'Order',
> > > > > or anything weird like that?
>
> > > > > Can we get the full error though?
>
> > > > > Mark
>
> > > > > On Fri, May 29, 2009 at 2:48 PM, Matthew <[email protected]
>
> > > > wrote:
>
> > > > > > Hi
>
> > > > > > I keep getting the follow error "null null" when I try to call
> > > > > > get*Array() on a onetomany which is setup to lazy load.
>
> > > > > > The documentation says that what I've done is fine (http://
> > > > > > docs.transfer-orm.com/wiki/Using_Lazy_Loading.cfm) so I can't work
> > out
> > > > > > what's wrong?
>
> > > > > > Here's my Transfer XML config:
>
> > > > > > <object name="User">
> > > > > >        <id name="userId" type="numeric"></id>
> > > > > >        <property name="firstName" type="string" />
> > > > > >        <onetomany name="Orders" lazy="true">
> > > > > >                <link to="Order" column="userId" />
> > > > > >                <collection type="array"></collection>
> > > > > >        </onetomany>
> > > > > > </object>
>
> > > > > > I'm trying to call user.getOrdersArray() but get the error. I can
> > call
> > > > > > user.getUserId() and user.getFirstName() no problem.
>
> > > > > > Setup: Transfer 1.1, CF 7
>
> > > > > > Cheers
> > > > > > Matthew
>
> > > > > --
> > > > > E: [email protected]
> > > > > W:www.compoundtheory.com
>
> > > --
> > > E: [email protected]
> > > W:www.compoundtheory.com
>
> --
> E: [email protected]
> W:www.compoundtheory.com
--~--~---------~--~----~------------~-------~--~----~
Before posting questions to the group please read:
http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer

You received this message because you are subscribed to the Google Groups 
"transfer-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/transfer-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to