I will try to look at this in the next few hours.

On Mon, May 18, 2020 at 6:18 PM Alex Harui <[email protected]> wrote:

> Unfortunately, we could just have a bug in the Binding code.  My first
> thought when looking at the stack dump was “I wonder if we tested binding
> to a static const in a base class?”.  I’m hoping that folks who’ve spent
> more time debugging the binding code will step in and follow up with you.
>
>
>
> -Alex
>
>
>
> *From: *Nicolas Aguttes <[email protected]>
> *Reply-To: *"[email protected]" <[email protected]>
> *Date: *Sunday, May 17, 2020 at 10:49 PM
> *To: *"[email protected]" <[email protected]>
> *Subject: *Re: Binding question/issue
>
>
>
> Hello in my different tries I put [Bindable] in front of my constant
>
>
>
> [Bindable]
>
> public
>
> static
>
> const MAX_CHARS_NOM:int =
>
> 50;
>
>
>
>
>
> And the error stack disappears when I remove the [Bindable] but it doesn't
> solve my issue as the <j:MaxNumberCharacters maxlength="{MAX_CHARS_NOM}" />
> still shows an undefined value
>
>
>
> Nicolas
>
>
>
> Le lun. 18 mai 2020 à 07:32, Alex Harui <[email protected]> a écrit :
>
> Interesting.  I wonder if @Greg Dove <[email protected]> has time to
> look at this.  He’s been through more of these scenarios than I have.
>
>
>
> -Alex
>
>
>
> *From: *Nicolas Aguttes <[email protected]>
> *Reply-To: *"[email protected]" <[email protected]>
> *Date: *Sunday, May 17, 2020 at 10:24 PM
> *To: *"[email protected]" <[email protected]>
> *Subject: *Re: Binding question/issue
>
>
>
> Hello Alex,
>
>
>
> this is the {MAX_CHARS_NOM} in my TextInput which is undefined and yes
> there is an error
>
>
>
>
>
> TypeError: this.dispatcher is undefinedSimpleBinding.js:228:3
>
>     set__strand
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/binding/SimpleBinding.js
> :228
>
>     addBead
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/ElementWrapper.js
> :120
>
>     addBead
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/HTMLElementWrapper.js
> :50
>
>     addBead
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/UIBase.js
> :378
>
>     prepareCreatedBinding
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/binding/DataBindingBase.js
> :79
>
>     initBindingsHandler
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/binding/ViewDataBinding.js
> :82
>
>     <anonyme> self-hosted:844
>
>     fireListeners
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/events/EventDispatcher.js
> :117
>
>     dispatchEventInternal_
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/library/closure/goog/events/eventtarget.js
> :382
>
>     dispatchEvent
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/events/EventDispatcher.js
> :80
>
>     dispatchEvent
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/ElementWrapper.js
> :243
>
>     addedToParent
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/View.js
> :70
>
>     addElement
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/UIBase.js
> :405
>
>     addElement
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/GroupBase.js
> :165
>
>     initializeStrandBasedObject
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :241
>
>     generateMXMLArray
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :127
>
>     generateMXMLInstances
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :271
>
>     addedToParent
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/View.js
> :69
>
>     addElement
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/UIBase.js
> :405
>
>     addElement
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/core/GroupBase.js
> :165
>
>     initializeStrandBasedObject
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :241
>
>     generateMXMLArray
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :127
>
>     generateMXMLInstances
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/utils/MXMLDataInterpreter.js
> :271
>
>     addedToParent
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/View.js
> :69
>
>     addElement
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/Application.js
> :144
>
>     initialize
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/Application.js
> :295
>
>     start
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/org/apache/royale/jewel/Application.js
> :264
>
>     <anonyme>
> file:///Users/nicolasA/Documents/dev/ApacheRoyale/TestBinding/bin/js-debug/TestBinding.html
> :155
>
>
>
> Le lun. 18 mai 2020 à 07:17, Alex Harui <[email protected]> a écrit :
>
> What value is undefined?  Is there a call stack or error message?
>
>
>
> -Alex
>
>
>
> *From: *Nicolas Aguttes <[email protected]>
> *Reply-To: *"[email protected]" <[email protected]>
> *Date: *Sunday, May 17, 2020 at 10:09 PM
> *To: *"[email protected]" <[email protected]>
> *Subject: *Re: Binding question/issue
>
>
>
> Hello Alex,
>
> Thanks for your reply, I tried what you suggested and added addBead(new
> ContainerDataBinding()) to the constructor, I also tried to add to the
> Ecran1.mxml the
> <j:beads>
> <js:ContainerDataBinding/>
> </j:beads>
>
> And read the different example provided Carlos and tried to mimic them,but
> I still get an undefined
> value when I execute the application.
>
>
>
> Le dim. 17 mai 2020 à 08:19, Alex Harui <[email protected]> a écrit :
>
> Hi Nicolas,
>
>
>
> Looks like you are using the Jewel component set, so you may need to add
> ContainerDataBinding to the screens.  Different MXML files can have
> different binding implementation for performance reasons and there may not
> be one specified by default for PAYG reasons.
>
>
>
> You can do that by adding the ContainerDataBinding bead to the MXML files
> for screens where you have binding expressions in the same way you added
> ApplicationDataBinding to the main app, or if Ecran1Class is only used as
> the top tag in an MXML file, then it should be safe to just add the
> ContainerDataBinding bead in the Ecran1Class constructor.
>
>
>
> public function Ecran1Class()
> {
> super();
>
> addBead(new ContainerDataBinding());
> }
> }
>
>
>
> HTH,
>
> -Alex
>
>
>
> *From: *Nicolas Aguttes <[email protected]>
> *Reply-To: *"[email protected]" <[email protected]>
> *Date: *Saturday, May 16, 2020 at 10:31 PM
> *To: *"[email protected]" <[email protected]>
> *Subject: *Binding question/issue
>
>
>
> Good morning all.
> I am new to Apache Royale and I don't know how to make binding work
> I have my main program which call some screens (ecrans.*)
> each screen has its applicationScript where I define some constant that I
> would link to bind to the view, it compiles, but the binding doesn't work
> and shows undefine value.
> I tried with differetn combination of
>  <j:beads>
>         <js:nnnnDataBinding/>
>     </j:beads>
> but without success.
>
> Can someone tell we what I am doing wrong?
> Thanks
> Nicolas
>
> Here is a non working extract of my code
> ----- Main ----
> <?xml version="1.0" encoding="utf-8"?>
> <j:Application
> xmlns:fx="http://ns.adobe.com/mxml/2009
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955808572&sdata=c921nVJQ7u3iaEa9dd90PlvLZFPBQv5yuQ%2FsHE4SYOM%3D&reserved=0>"
>
> xmlns:ecrans="ecrans.*"
> xmlns:j="library://ns.apache.org/royale/jewel
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fjewel&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955818567&sdata=kMfzaPRmkwDtNnwBpfkXRbYJFIdjUFe2SG9WsC3rWTs%3D&reserved=0>
> "
> xmlns:js="library://ns.apache.org/royale/basic
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fbasic&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955818567&sdata=l2WhZz75FeapqIJ21QkCZCo7qeDq8q7%2FnDUWNkJicjo%3D&reserved=0>
> "
> xmlns:html="library://ns.apache.org/royale/html
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fhtml&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955828561&sdata=FSxFBfXTWw%2F1z637bU%2BzSJIzneEhBQV%2FlLHgIwBVWfo%3D&reserved=0>
> "
> width="100%"
> height="100%">
>    <j:beads>
>         <js:ApplicationDataBinding/>
>     </j:beads>
> <j:initialView>
>    <j:View id="vuePrincipale" width="100%" height="100%">
> <j:View id="EcranBox" width="100%" height="100%">
> <ecrans:Ecran1 id="Ecran1" />
>     </j:View>
>
> </j:View>
> </j:initialView>
> </j:Application>
>
> ----- Scren 1 .mxml  ------
> <?xml version="1.0" encoding="utf-8"?>
> <ecrans:Ecran1Class
> xmlns:fx="http://ns.adobe.com/mxml/2009
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955828561&sdata=jkvBTJc0hr87M0L2ZeMBr6xjzMIk7t6YfB6ll9rJt0A%3D&reserved=0>
> "
> xmlns:ecrans = "ecrans.*"
> xmlns:j="library://ns.apache.org/royale/jewel
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fjewel&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955838559&sdata=WYYtseVJsjkkAQhKMTfSfst2GfjW5AYODm9Ko6oUJSU%3D&reserved=0>
> "
> xmlns:html="library://ns.apache.org/royale/html
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fhtml&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955838559&sdata=4gMaR%2Fl2n5Bhiuqgvkdzzvuc7Rbn3r1nNFEiv3P2YbU%3D&reserved=0>
> "
> xmlns:js="library://ns.apache.org/royale/basic
> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fbasic&data=02%7C01%7Caharui%40adobe.com%7C05689a9f276e48c7bb8a08d7faef49a5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637253777955848550&sdata=X9uLXFm4Bgb0%2BBi6hT9pCPR2Aa2xQoGz3Rd1p71%2B%2FLU%3D&reserved=0>
> "
>     >
> <j:Form width="100%" height="100%" id="searchForm"  >
>
> <j:FormItem  id="labelNom"  label="nom :" width="100%" >
> <j:TextInput id="nom" >
> <j:beads>
> <j:MaxNumberCharacters maxlength="{MAX_CHARS_NOM}" />
> </j:beads>
> </j:TextInput>
> </j:FormItem>
> </j:Form>
> </ecrans:Ecran1Class>
>
>
> ----- screen 1 .as  --------
> package ecrans
> {
> import org.apache.royale.jewel.View;
>
> public class Ecran1Class extends View
> {
> // Proprietes
> [Bindable] public static const MAX_CHARS_NOM:int = 50;
>
> // Constructeur
> public function Ecran1Class()
> {
> super();
> }
> }
>
>

Reply via email to