Hi . *Alex* : 0.9.7-snapshot royale-compiler - you're right, this was correct, the error does not reproduce anymore (null0). *Greg*. I tried the library and it worked correctly, I would like to know the implementation of the ServiceLocator.as how it is done, I made my own and although it worked, I have problems when I add a jewel tag in the project, for example a <j: Button>
Is it possible or correct to have tag mx and jewel in the same project? *thanks to you .* El vie., 7 feb. 2020 a las 14:14, Alex Harui (<aha...@adobe.com>) escribió: > Make sure your app is using the updated compiler. I assume you are using > Maven to compile the app? Check the pom.xml to make sure it is referencing > the 0.9.7-SNAPSHOT and not just 0.9.7 or some other version. One trick is > to add some System.out.println to the file that was changed and see if it > shows up in the output. > > > > Regarding the tests, in the pom.xml for some of the projects like > compiler-jx, the maven-surefire-plugin and maven-failsafe-plugin dictate > which tests/files are run. > > > > HTH, > > -Alex > > > > *From: *De Carli Gustavo <gustavodeca...@gmail.com> > *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> > *Date: *Friday, February 7, 2020 at 3:15 AM > *To: *"users@royale.apache.org" <users@royale.apache.org> > *Subject: *Re: Cairngorm problem add remote object MXML. > > > > > Hi, yesterday I tried with the change of Alex, from the royale-compiler > without success, the "null0" continues. I don't know if I missed a step. > > I rebuilt with the royale-compiler project "mvn clean install" and tried > again the compilation of my project. > > On the other hand I am seeing to create a Test in the project, but I see > that they are not running the tests of the package "royale-compiler \ > compiler-jx \ src \ test \ java \ org \ apache \ royale \ compiler \ > internal \ codegen \ mxml \ ...", do you know why? > > > > Thanks. > > Gustavo. > > > > El vie., 7 feb. 2020 a las 4:21, Greg Dove (<greg.d...@gmail.com>) > escribió: > > > I'll try to get an minimal example working over my weekend sometime to > test what I have. I made a quick start on that, just to get something that > compiles. Once I see that it seems to be working I will release to git repo > for the port. > > If you do want to try a different swc from what you already have, you > could try one now from builds here I think: > > > > https://www.dropbox.com/sh/xk8aui9ghy30mid/AAAAx0LUpfjXEQWC221zAjTza?dl=0 > <https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.dropbox.com%2Fsh%2Fxk8aui9ghy30mid%2FAAAAx0LUpfjXEQWC221zAjTza%3Fdl%3D0&data=02%7C01%7Caharui%40adobe.com%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390899554&sdata=6YfYnU896lHruaduCxUnrCkndhecXz7JELyQBoJd%2FFU%3D&reserved=0> > > > > (I will remove that link in some days once the port is more thoroughly > tested and available to all) > > > > I was able to inspect and verify that the js build had a ServicesLocator > (as defined in that swc) mxml subclass which was populating correctly with > the recent compiler changes from Alex, but I am not yet able to test more > thoroughly. The view support probably won't work yet because there are no > 'added' and 'removed' events, but we will figure something out. > > > > > > > > > > On Fri, Feb 7, 2020 at 6:23 PM Greg Dove <greg.d...@gmail.com> wrote: > > > Alex, I tested this change today. There is more to it than that, it seems. > I will discuss details in dev list. > > > > > > On Fri, Feb 7, 2020 at 8:40 AM Alex Harui <aha...@adobe.com> wrote: > > royale-compiler > > > > *From: *De Carli Gustavo <gustavodeca...@gmail.com> > *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> > *Date: *Thursday, February 6, 2020 at 11:39 AM > *To: *"users@royale.apache.org" <users@royale.apache.org> > *Subject: *Re: Cairngorm problem add remote object MXML. > > > > Sorry Alex, what repository is that of the push ? > > > > El jue., 6 feb. 2020 a las 16:13, Alex Harui (<aha...@adobe.com>) > escribió: > > I just pushed a change to the compiler. It should now have valid output > for ServiceLocator. > > > > The compiler change was interesting in that I changed an else clause that > was put in to handle instances specified as children of top tags but was > doing the wrong thing. All of the compiler tests passed, but never hit > that code so none of our tests actually used that code, even though the > commit log implied it was for one of the tests. Either I made the earlier > change to propagate the fix for plain properties to instances or there is > some other scenario for instances as children (without a default property) > that I am not thinking of. > > > > -Alex > > > > *From: *De Carli Gustavo <gustavodeca...@gmail.com> > *Reply-To: *"users@royale.apache.org" <users@royale.apache.org> > *Date: *Thursday, February 6, 2020 at 6:03 AM > *To: *"users@royale.apache.org" <users@royale.apache.org> > *Subject: *Re: Cairngorm problem add remote object MXML. > > > > > 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 > <https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fsourceforge.net%2Fadobe%2Fcairngorm%2Fcode%2FHEAD%2Ftree%2Fcairngorm%2Ftrunk%2Fframeworks%2Fcairngorm%2FLicense.txt&data=02%7C01%7Caharui%40adobe.com%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390899554&sdata=bgcBkFJNdbJ3J%2BqiPmrcNDOPSDrM%2Bl45ekrJY%2BG%2Blm4%3D&reserved=0>) > - > 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%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390909515&sdata=Gc4%2FtARZq7gGGanmKlHKBRfGGAoA7BCvlhQYI5CcnMs%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%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390909515&sdata=Tk8Pj%2F2DIb2xkXZ0mVPc5n4ZB6k%2FzSR2QERtGHMtnRQ%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%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390919472&sdata=b28A5VvEoq7nU%2F4YvSXE6Lk2PTjKIDEehzOoNPSmj%2Fk%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%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390919472&sdata=fJXMZ6bipo5Lb9NGlxNZ5kCL89t5xVomfwABNLngzMs%3D&reserved=0> > > > > -- > > Shoichiro Takeshita > 武下 祥一郎 > > -- > > Shoichiro Takeshita > 武下 祥一郎 > > > > > -- > > 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%7C707a97326caa408ce15e08d7abbf0ebb%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637166709390929426&sdata=uj3muDWmQFOheOtB05JV2M%2FG3l5NuevazrXlP38S%2B1w%3D&reserved=0> > > > >