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
武下 祥一郎

Reply via email to