Exactly, cairmgorm, as Carlos says, is not the best option, but we save a lot of time in migrations where they use it and leave more time for other questions.
i will continue to test how to fill that array today. Thank you very much for everyone in this collaboration. Gustavo. El jue., 6 feb. 2020 a las 8:39, Carlos Rovira (<carlosrov...@apache.org>) escribió: > Thanks Greg, for the sponsor credits, and thanks Takeshita for the words :) > > I know Cairngorm could be good for people wanting to migrate with the less > effort possible. Anyway, I recommend, if possible to try to switch to Crux. > We already did that several years ago in Flex, since all DI, IOC stuff, > make us be more efficient and increase options. For people creating new > apps, for me there's no doubt, for people migrating, should contemplate the > Crux option if they continue evolving the app with new features... > > just my 2 :) > > Carlos > > > > El jue., 6 feb. 2020 a las 5:28, Takeshita Shoichiro (<jl03...@gmail.com>) > escribió: > >> Greg, thanks for your clarification. Anyway, it is a great work. >> Carlos, thanks all the times.^_^ >> >> 2020年2月6日(木) 13:22 Greg Dove <greg.d...@gmail.com>: >> >>> >>> Hi Takeshita, >>> >>> Yes I think a few people have asked for Cairngorm or expressed interest >>> in it. Given the choice, I personally think Crux will be a more >>> modern/better option, but like I said, more people are asking for Cairngorm >>> now, so probably it makes sense to port that too. >>> >>> I'm also pleased to hear that you are using Crux, I hope it's working >>> well for you. Please report any issues if you see them. >>> >>> One small thing: I definitely understand that you were referring to the >>> work I did on porting it to Royale, but just for the sake of anyone else >>> who reads this: it's definitely not 'my Crux framework'. The code is ported >>> from Swiz, and credit for the awesome features it has rests with the >>> original authors of Swiz (I was in contact with the original developer >>> during my efforts to port it to Royale). >>> Also, just so people are aware, Carlos sponsored the majority of my work >>> on porting that, so you really have Carlos to thank for that. >>> >>> cheers, >>> Greg >>> >>> On Thu, Feb 6, 2020 at 5:04 PM Takeshita Shoichiro <jl03...@gmail.com> >>> wrote: >>> >>>> Greg, >>>> >>>> Thanks for your work. We already have your Crux framework replacing >>>> Cairngorm, it is great if Cairngorm works with Royale. It will save a >>>> plenty of time of emulation work. >>>> >>>> 2020年2月6日(木) 12:33 Greg Dove <greg.d...@gmail.com>: >>>> >>>>> >>>>> There does not appear to be a default property, like an array to put >>>>> the 'children' in. I think it just creates the children as instances and >>>>> makes sure they have id properties on the mxml-generated subclass that the >>>>> instances are assigned to. >>>>> >>>>> The services are then identified and categorised by iterating the >>>>> accessors of the ServiceLocator subclass via reflection and checking their >>>>> types and then registering them. >>>>> Although it is and mxml instance of ServiceLocator, it is also an >>>>> enforced singleton which is accessed elsewhere from code. At least that is >>>>> how it appears to be set up to me. >>>>> >>>>> I already took a look at the code and have made (not many) local >>>>> changes and have the Cairngorm swc compiling via maven for both js and >>>>> swf. >>>>> I have not tested it. Things like weak event listeners are gone. >>>>> The main issue I think will be the Event.ADDED and Event.REMOVED for >>>>> ViewHelper automated register/unregister. Maybe we can have a >>>>> CaingormViewBase class with support for these, or perhaps we can use the >>>>> ADDED/REMOVED_FROM_STAGE emulation support that Crux uses, and that might >>>>> be all that is needed, but it may not always work the same. >>>>> >>>>> I'll try to tidy it up and share it tomorrow. The licence is BSD and >>>>> is permissive ( >>>>> https://sourceforge.net/adobe/cairngorm/code/HEAD/tree/cairngorm/trunk/frameworks/cairngorm/License.txt) >>>>> - >>>>> It seems to be to be similar to others like MIT etc, but I don't know >>>>> specifically what the rules are for Apache with that licence (in terms of >>>>> possibility to include in Royale itself). >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> On Thu, Feb 6, 2020 at 3:40 PM De Carli Gustavo < >>>>> gustavodeca...@gmail.com> wrote: >>>>> >>>>>> Alex : >>>>>> >>>>>> In flex use the swc. I am seeing the same thing that you are >>>>>> commenting, I do not understand where it assigns the remote objects to >>>>>> the >>>>>> ServiceLocator. This would have to be added to the "services" attribute >>>>>> of >>>>>> the RemoteObjects class. I will try to assign by code without using the >>>>>> mxml to see if it does not generate the error "null0". >>>>>> >>>>>> El mié., 5 feb. 2020 a las 23:15, Alex Harui (<aha...@adobe.com>) >>>>>> escribió: >>>>>> >>>>>>> I grabbed ServiceLocator.as and was able to produce the null0 >>>>>>> problem, but the cause is that ServiceLocator does not have a default >>>>>>> property. Did your MXML work in Flex? What ServiceLocator property >>>>>>> would >>>>>>> be assigned the mx:RemoteObject? >>>>>>> >>>>>>> >>>>>>> >>>>>>> -Alex >>>>>>> >>>>>>> >>>>>>> >>>>>>> *From: *De Carli Gustavo <gustavodeca...@gmail.com> >>>>>>> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Date: *Wednesday, February 5, 2020 at 12:00 PM >>>>>>> *To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Subject: *Re: Cairngorm problem add remote object MXML. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> I download https://sourceforge.net/adobe/cairngorm/code/ >>>>>>> <https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsourceforge.net%2Fadobe%2Fcairngorm%2Fcode%2F&data=02%7C01%7Caharui%40adobe.com%7Ce69b06cf11f748f1c34408d7aa7601ec%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637165296132948281&sdata=jHABq2xbIpH9Q6aiYAWl1u23LkdalccZkE7uIbyJy3E%3D&reserved=0>, >>>>>>> and change. >>>>>>> >>>>>>> >>>>>>> >>>>>>> import flash.utils.describeType; >>>>>>> >>>>>>> --> import org.apache.royale.reflection.describeType; >>>>>>> >>>>>>> import flash.utils.Dictionary; >>>>>>> >>>>>>> --> import org.apache.royale.utils.ObjectMap; >>>>>>> >>>>>>> >>>>>>> >>>>>>> And this method >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> /** >>>>>>> >>>>>>> >>>>>>> >>>>>>> * Return all the accessors on this object. >>>>>>> >>>>>>> >>>>>>> >>>>>>> * @param serviceLocator the IServiceLocator instance. >>>>>>> >>>>>>> >>>>>>> >>>>>>> * @return this object's accessors. >>>>>>> >>>>>>> >>>>>>> >>>>>>> */ >>>>>>> >>>>>>> >>>>>>> >>>>>>> protected >>>>>>> >>>>>>> function getAccessors( >>>>>>> >>>>>>> serviceLocator : IServiceLocator ) : >>>>>>> >>>>>>> XMLList >>>>>>> >>>>>>> >>>>>>> >>>>>>> { >>>>>>> >>>>>>> >>>>>>> >>>>>>> /* >>>>>>> >>>>>>> >>>>>>> >>>>>>> var description : XML = describeType( serviceLocator ); >>>>>>> >>>>>>> >>>>>>> >>>>>>> var accessors : XMLList = description.accessor.( @access == >>>>>>> "readwrite" ).@name; >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> return accessors; >>>>>>> >>>>>>> >>>>>>> >>>>>>> */ >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> return describeType( serviceLocator).accessors(@access == >>>>>>> >>>>>>> "readwrite" ).@name; >>>>>>> >>>>>>> >>>>>>> >>>>>>> } >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El mié., 5 feb. 2020 a las 16:04, Alex Harui (<aha...@adobe.com>) >>>>>>> escribió: >>>>>>> >>>>>>> Carlos, What Flash APIs is Cairngorm dependent on? >>>>>>> >>>>>>> >>>>>>> >>>>>>> -Alex >>>>>>> >>>>>>> >>>>>>> >>>>>>> *From: *Carlos Rovira <carlosrov...@apache.org> >>>>>>> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Date: *Wednesday, February 5, 2020 at 10:05 AM >>>>>>> *To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Subject: *Re: Cairngorm problem add remote object MXML. >>>>>>> >>>>>>> >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> >>>>>>> >>>>>>> Cairngorm depends on Flash APIs, so make a Royale migration could be >>>>>>> not easy, or requires some expertise. >>>>>>> >>>>>>> You can use Crux instead that has support for Cairngorm style >>>>>>> Commands. Crux is the same as Swiz Framework for Flex but rewritten to >>>>>>> work >>>>>>> in Royale, and supports much more like dependency injection, Inversion >>>>>>> of >>>>>>> control, event handling, ... >>>>>>> >>>>>>> You have 3 examples in the examples/crux folder you can check. >>>>>>> >>>>>>> I recommend you Crux over Cairngorm since Swiz was born to >>>>>>> substitute Cairngorm >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El mié., 5 feb. 2020 a las 18:24, De Carli Gustavo (< >>>>>>> gustavodeca...@gmail.com>) escribió: >>>>>>> >>>>>>> Alex >>>>>>> >>>>>>> >>>>>>> >>>>>>> <version>0.9.7-SNAPSHOT</version> >>>>>>> >>>>>>> >>>>>>> >>>>>>> Thank >>>>>>> >>>>>>> >>>>>>> >>>>>>> El mié., 5 feb. 2020 a las 14:02, Alex Harui (<aha...@adobe.com>) >>>>>>> escribió: >>>>>>> >>>>>>> What version of the compiler are you using? >>>>>>> >>>>>>> >>>>>>> >>>>>>> What does the ServiceLocator source look like? It might be an issue >>>>>>> with defaultProperties for non-DOM objects. >>>>>>> >>>>>>> >>>>>>> >>>>>>> -Alex >>>>>>> >>>>>>> >>>>>>> >>>>>>> *From: *De Carli Gustavo <gustavodeca...@gmail.com> >>>>>>> *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Date: *Wednesday, February 5, 2020 at 7:35 AM >>>>>>> *To: *"users@royale.apache.org" <users@royale.apache.org> >>>>>>> *Subject: *Cairngorm problem add remote object MXML. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> I am trying to transcribe gairngorm, at runtime it gives me an error >>>>>>> in the construction of the ServiceLocator, I understand that it is an >>>>>>> error >>>>>>> of the MXMLDataInterpreter. Anyone have any idea of the problem. >>>>>>> >>>>>>> Thank >>>>>>> >>>>>>> Gustavo. >>>>>>> >>>>>>> >>>>>>> >>>>>>> *1. CODE * >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> <?xml version="1.0" encoding="utf-8"?> >>>>>>> >>>>>>> >>>>>>> >>>>>>> <cairngorm:ServiceLocator >>>>>>> >>>>>>> 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%7Ce69b06cf11f748f1c34408d7aa7601ec%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637165296132958276&sdata=D2z6jFGBTx4%2BBwOqQ4XwVSKQ0UcBb6eKavH2T0YYOA4%3D&reserved=0> >>>>>>> " >>>>>>> >>>>>>> >>>>>>> >>>>>>> xmlns:mx="library://ns.apache.org/royale/mx >>>>>>> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.apache.org%2Froyale%2Fmx&data=02%7C01%7Caharui%40adobe.com%7Ce69b06cf11f748f1c34408d7aa7601ec%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637165296132968272&sdata=RXTRBxfU2GmONGZEMCb%2B4pdF1BIv20ZcCXskhvQ7XPw%3D&reserved=0> >>>>>>> " >>>>>>> >>>>>>> >>>>>>> >>>>>>> xmlns:cairngorm="com.adobe.cairngorm.business.*"> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> <mx:RemoteObject >>>>>>> >>>>>>> id="srvSeguridades" >>>>>>> >>>>>>> >>>>>>> >>>>>>> destination="seguridades" >>>>>>> >>>>>>> >>>>>>> >>>>>>> result="event.token.resultHandler(event)" >>>>>>> >>>>>>> >>>>>>> >>>>>>> fault="event.token.faultHandler(event)" >>>>>>> >>>>>>> >>>>>>> >>>>>>> endpoint="http://localhost:8080/messagebroker/amf"/> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> </cairngorm:ServiceLocator> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *2. LINE OF ERROR (RED)* >>>>>>> >>>>>>> / >>>>>>> >>>>>>> >>>>>>> >>>>>>> ** >>>>>>> * @constructor >>>>>>> * @extends {com.adobe.cairngorm.business.ServiceLocator} >>>>>>> */ >>>>>>> services.Servicio = function() { >>>>>>> services.Servicio.base(this, 'constructor'); >>>>>>> >>>>>>> /** >>>>>>> * @private >>>>>>> * @type {mx.rpc.remoting.mxml.RemoteObject} >>>>>>> */ >>>>>>> this.srvSeguridades_; >>>>>>> >>>>>>> /** >>>>>>> * @private >>>>>>> * @type {Array} >>>>>>> */ >>>>>>> this.mxmldd; >>>>>>> >>>>>>> /** >>>>>>> * @private >>>>>>> * @type {Array} >>>>>>> */ >>>>>>> this.mxmldp; >>>>>>> >>>>>>> this.generateMXMLAttributes >>>>>>> ([1, >>>>>>> mx.rpc.remoting.mxml.RemoteObject, >>>>>>> 3, >>>>>>> 'id', >>>>>>> true, >>>>>>> 'srvSeguridades', >>>>>>> 'destination', >>>>>>> true, >>>>>>> 'seguridades', >>>>>>> 'endpoint', >>>>>>> true, >>>>>>> 'http://localhost:8080/messagebroker/amf', >>>>>>> 0, >>>>>>> 2, >>>>>>> 'result', >>>>>>> this.$EH0, >>>>>>> 'fault', >>>>>>> this.$EH1, >>>>>>> null0, <- ERROR >>>>>>> 0 >>>>>>> ]); >>>>>>> >>>>>>> }; >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> 3. Trace console log >>>>>>> >>>>>>> >>>>>>> >>>>>>> Servicio.js:61 Uncaught ReferenceError: null0 is not defined >>>>>>> at new services.Servicio (Servicio.js:61) >>>>>>> at >>>>>>> Function.org.apache.royale.utils.MXMLDataInterpreter.generateMXMLArray >>>>>>> (MXMLDataInterpreter.js:126) >>>>>>> at >>>>>>> Function.org.apache.royale.utils.MXMLDataInterpreter.generateMXMLInstances >>>>>>> (MXMLDataInterpreter.js:271) >>>>>>> at main.Main.mx.core.UIComponent.createChildren >>>>>>> (UIComponent.js:923) >>>>>>> at main.Main.mx.core.Container.createChildren (Container.js:136) >>>>>>> at main.Main.mx.core.Application.createChildren >>>>>>> (Application.js:122) >>>>>>> at main.Main.mx.core.UIComponent.initialize (UIComponent.js:871) >>>>>>> at main.Main.mx.core.UIComponent.addedToParent >>>>>>> (UIComponent.js:417) >>>>>>> at main.Main.mx.core.Container.addedToParent (Container.js:123) >>>>>>> at >>>>>>> Main_mx_managers_SystemManager.org.apache.royale.core.UIBase.addElement >>>>>>> (UIBase.js:402) >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> Carlos Rovira >>>>>>> >>>>>>> http://about.me/carlosrovira >>>>>>> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira&data=02%7C01%7Caharui%40adobe.com%7Ce69b06cf11f748f1c34408d7aa7601ec%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637165296132968272&sdata=XhkJr%2Bar3%2Fpt4hFsMBYUB3AWiWMEkiQjdBSpNhRDP4o%3D&reserved=0> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>> Shoichiro Takeshita >>>> 武下 祥一郎 >>>> >>> -- >> Shoichiro Takeshita >> 武下 祥一郎 >> > > > -- > Carlos Rovira > http://about.me/carlosrovira > >