Perhaps the key is the method name: 'get canvas.gLoginProcess', which is how 
the compiler labels the (automatically generated) reference method of a handler.

The outline of the code that appears to trigger this is:

<class name="WebtopDataSet" extends="dataset">

    <handler name="oninited" reference="canvas.gLoginProcess" 
method="_initialize" />

    <method name="_initialize" args="ignore" />

</class>

This is going to create a method on the class that has a free reference for 
canvas.  What I don't understand is why it thinks it does not know the full 
class hierarchy and just treat it as a free reference?

On 2011-03-14, at 16:50, Donald Anderson wrote:

> Tucker,
> 
> I'm having a hard time reproducing this from your Webtop run (you sent me 
> lots of output, but I'm focusing on these errors):
> 
> On Mar 9, 2011, at 2:20 PM, P T Withington wrote:
> 
>> with(this) added in get canvas.gLoginProcess: unknown parts of class 
>> hierarchy: [$lzc$class_WebtopDataSet->LzDataset] and unaccounted refs: 
>> [canvas]
>> with(this) added in get canvas.gLoginProcess: unknown parts of class 
>> hierarchy: [$lzc$class_WebtopDataSet->LzDataset] and unaccounted refs: 
>> [canvas]
> 
> Here's what I'm using as a test case:
> 
>  <class name="extdataset" extends="dataset">
>    <method name="test1"><![CDATA[
>        var ds = canvas.datasets.empty;
>        var x = false;
>        if (x) {
>           ds = classroot;    // should be this.classroot
>        }
>        return "success";
>    ]]></method>
>  </class>
> 
> To try to force the error, I removed "canvas" as a known global (which I had 
> added, per your suggestion).  But it seems that my extdataset class is 
> finding the hierarchy complete, so the 'this.' replacement is being done.
> 
> Any suggestions on how to trigger what you're seeing?
> 
> - Don
> 
> 
> --
> 
> Don Anderson
> Java/C/C++, Berkeley DB, systems consultant
> 
> voice: 617-306-2057
> email: [email protected]
> www: http://www.ddanderson.com
> blog: http://libdb.wordpress.com
> 
> 
> 
> 
> 


Reply via email to