I created a bug for this

http://www.openlaszlo.org/jira/browse/LPP-6668


What is really weird is that I put some tracing in, and the bug is
happening on the failing datapointer
because when it sets is xpath to "ds1:/persons", the name
canvas.datasets['ds1'] is unbound,
(but canvas['ds1'] is bound!). How can that be? Why is the other
dataset, ds2, behaving properly?
Who is responsible for setting canvas.datasets[DSETNAME] ? Why would
it be getting set
in one case but not the other?



On Tue, Jul 15, 2008 at 8:44 PM, Henry Minsky <[EMAIL PROTECTED]> wrote:
> I've isolated the issue with multiple tests failing down to this test
> case. There are two
> datasets and a datapointer for each one. In the "good" case, the order
> in the app is
> dataset, datapointer, dataset, datapointer.
>
> Both datapointers' ondata events fire.
>
>
> GOOD:
>
> <canvas width="100%" height="600" debug="true">
>     <dataset name="ds1"
>             src="http:namespace.xml" request="true" type="http"
>             ondata="Debug.write('[1] dataset ds1 got ondata')"/>
>    <datapointer xpath="ds1:/persons" name="pointer_ds1"
> ondata="Debug.write('pointer_ds1 ondata received')"/>
>
>    <dataset name="ds2"
>             src="http:namespace.xml"  request="true" type="http"
>             ondata="Debug.write('[2] dataset ds2 got ondata')"/>
>
>    <datapointer xpath="ds2:/persons" name="pointer_ds2"
> ondata="Debug.write('pointer_ds2 ondata received')"/>
> </canvas>
>
>
> However, if the two datasets come first, and then the two datapointes,
> the first datapointer never seems
> to run its ondata handler.  So what would the order of these objects
> have to do with it? argh. The debug trace
> shows that both datasets fire their ondata events. So is there some
> sort of race condition where the
> datapointer misses it's event? How do I tell? I guess putting a trace
> onto the event sender code, to see
> if the datapointer is actually registered for the event or not when it is 
> sent.
>
> This bug does not occur in swf8 or dhtml
>
>
>
> BAD:
> <canvas width="100%" height="600" debug="true">
>
>    <dataset name="ds1"
>             src="http:namespace.xml" request="true" type="http"
>             ondata="Debug.write('[1] dataset ds1 got ondata')"/>
>    <dataset name="ds2"
>             src="http:namespace.xml"  request="true" type="http"
>             ondata="Debug.write('[2] dataset ds2 got ondata')"/>
>
>    <datapointer xpath="ds1:/persons" name="pointer_ds1"
> ondata="Debug.write('pointer_ds1 ondata received')"/>
>    <datapointer xpath="ds2:/persons" name="pointer_ds2"
> ondata="Debug.write('pointer_ds2 ondata received')"/>
> </canvas>
>
>
> --
> Henry Minsky
> Software Architect
> [EMAIL PROTECTED]
>



-- 
Henry Minsky
Software Architect
[EMAIL PROTECTED]

Reply via email to