Re: IDE to upgrade an AIR project
One thing no other IDE has developed, which is why we still use Flashbuilder 4.6, is a GUI development environment similar to design mode of Flash/Flexbuilder. Yes FlashBuilder has lots of bugs that drive us crazy, but the ability to design screens with more or less pixel perfection is very useful in the applications we develop. If/when someone develops a product with design mode and more stability we will probably switch. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "jan.weber" Sent: 6/14/21 4:23 AM To: users@flex.apache.org Subject: Re: IDE to upgrade an AIR project Our team is using IntelliJ for AIR/Flex development since 4 years now and we are really happy with it. Its fast, reliable and offers a bunch of useful features. Haven't worked with Moonshine or VSCode yet but heard they are also quite good. I would think the bigger and more complex your project is, the more would IntelliJ be the right choice. - Jan F. Weber, AIR/Flex Developer @ SeMSy 5 Front-End Team, Dallmeier electronic (www.dallmeier.com) -- Sent from: http://apache-flex-users.246.n4.nabble.com/
LocalConnection in AIR 32.
Does anyone know if there are any tricks to having two AIR applications (captive runtime) on the same computer talk to each other via LocalConnection? Receiver; private var _lcReceiveConnection:LocalConnection = new LocalConnection(); public function startLocalReceiveListener():void { _lcReceiveConnection.allowInsecureDomain("*"); _lcReceiveConnection.allowDomain("*"); _lcReceiveConnection.addEventListener(StatusEvent.STATUS,receiveLocalStatus); _lcReceiveConnection.client = this; try { Alert.show("_lcReceiveConnection connecting-" + _strApplicationID,"Listening"); _lcReceiveConnection.connect("TestSend"); //_lcReceiveConnection.connect(_strApplicationID); } catch(err:Error) { Alert.show("err.message" + err.message,"startLocalReceiveListener"); } } private function receiveLocalStatus(event:StatusEvent):void { Alert.show(event.level,"receiveLocalStatus"); } public function receiveLocalMessage(strMessage:String):void { Alert.show(strMessage,"receiveLocalMessage"); } Sender; private function getNextApplication(strApplcationID:String):void { txtOutput.text += "Checking If " + strApplcationID + " is open."; _strCurrentApplcationID = strApplcationID; _lcSendConnection.allowInsecureDomain("*"); _lcSendConnection.allowDomain("*"); _lcSendConnection.addEventListener(StatusEvent.STATUS, sendLocalStatus); trace("Sending to:" + strApplcationID); _lcSendConnection.send("TestSend","receiveLocalMessage","Are you there?"); // _lcSendConnection.send(strApplcationID,"receiveLocalMessage","Are you there?"); } private function sendLocalStatus(event:StatusEvent):void { _lcSendConnection.removeEventListener(StatusEvent.STATUS, sendLocalStatus); txtOutput.text += "Message to " + _strCurrentApplcationID + " reports " + event.level; Sender status event.level is always "error." and the message never gets to the Receiver. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
How can I execute the result method of a responder object?
We are creating an extension for the NetConnection object. When we get an error we will retry "n" times. After "n" times we want to call the responder result method returning an error. The responder object contains two properties, both functions, however we cannot seem to see how to access those functions. Is it possible to execute the "result" function of Responder object? An example might be; _rspResponder:Responder = new Responder(someFunction); // lots of code... _rspResponder.result("Error: Connection timeout failure.\n A network connection error occurred, if need Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Future of Flex
Carlos: Royale will have its place. However one thing which Royale and other similar technologies will never fully implement is a 100% coherent runtime environment. There will always be sacrifices to the needs of Javascript/HTML. As long as there are multiple browser DOMs there will always be the potential for incompatibility. AIR and other similar technologies will have a place for people/applications which want/need a development platform where they can be certain of the user interaction layer. The reason I chose Flex for development is simple, I was tired of the limitations of HTML and I was even more frustrated with the differences between browsers DOMs. When I found that I could develop in one environment and run everywhere, I was hooked. In my limited experience with Royale,some of the same bugaboos of browser differences were still there. I am sure Royale will improve and become virtually seamless. However from all my decades of IT development it is difficult to build a reliable system when the foundation (DOMs) is inconsistent. I believe there is a place for Flex/AIR moving forward. There is also a place for Royale, and I will convert one Flex application to Royale, as it definitively needs to run from a web browser. My major integrated PC applications have been converted to AIR, and are in various stages of testing & deployment. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 9/11/20 4:23 AM To: users@flex.apache.org Subject: Re: Future of Flex Hi All just reposting here, since I saw Erik started this thread. Hope this helps: As a long time Flex/Flash advocate I must say that runtime fate is set for a long time, so in that front we can't do much more and go with the flow like it happened with VHS/Beta, PC/Amiga, and many more... BUT, I think we can preserve what for me is of huge value: the Flex programming model with AS3/MXML, View States, Binding, AMF (RPC), and much more... through Apache Royale. For me having that productivity is priceless. Also mixing with the good stuff in the modern development world means to boost what we already had. For example, I think CSS implementation in browsers is far better than the subset we had in Flash Player (and Flex), so that joins the Royale programming model through normal CSS... or through SASS :). I think Flex/AIR will still be there for as long as people will use it, maybe unfortunately few people now. For many others it's normal that they must go with the rest of the world. For many of them, like you, maybe is late since you'll go React (that's normal since companies tend to go to the mainstream tech for security), but just say that in 2020, I think Apache Royale and Jewel set has reach a very good state and it's a pleasure to work with it, as it was Flex. So maybe giving a try in the current state would surprise you, and will make your migration easier than going React. I'll be presenting at ApacheCon at the end of this month (31th) a talk that showcases the TodoMVC example here [1] and here [2]. Hope that helps others to notice how far we reach, and that Royale is now a real option for all. Talks are here [3], and the TodoMVC talk is "Starting from a blank file" HTH Carlos [1] demo: https://royale.apache.org/todomvc-jewel/ [2] code: https://github.com/apache/royale-asjs/blob/develop/examples/crux/todomvc-jewel-crux/readme.md [3] https://www.apachecon.com/acah2020/tracks/royale.html El vie., 11 sept. 2020 a las 8:47, Scott Matheson () escribió: > Eric > I have been in the business since 1982 seen a lot, I remember when > our first IBM PC B/W screen with 64k memory, single floppy dive arrived > and we just looked at it and said what are we to do with that > > I started developing on PL1, is GO not copy, that a different thread > > I have been developing in Flex since 2010, and really enjoyed the > experience, I 100% agree with every thing you said > > Unfortunately Royal was too late for us, and we made the switch to React > last year, we found electron for mobile was sufficient for our dneeds, we > could still create a AIR app from out flex source code if we had, but why > have 2 code bases if you do not need too > > The new React application is designed to look identical to the Flex app, > and it does, an end user would be hard pressed see the difference > > I hate the React JS CSS design approach, but sometimes you just have to > dig deep > > The world is not logical place > > > Sent from my iPhone > > > On 11 Sep 2020, at 03:55, Erik Thomas wrote: > > > > Hey all: > > > > If you are a Flex devotee, like me, a longtime admirer of the beauty in > Flex that introduced a declarative + procedural model that preceded > Microsoft's C sharp and WPF models that essentially stole the idea from > Flex for a structural MVC where the view and controller were
Property axis is not set for this AxisRenderer
I am attempting to migrate a dashboard type MXML from Flex/Flash 3.5 to Flex 4.16, AIR 32.0. I have a module which compiles OK but gets a runtime error of "Property axis is not set for this AxisRenderer" It appears to happening during creation, as a breakpoint in module creationComplete handler does not get tripped. The stack trace never references any lines in my code. There are 3 charts with a fair amount of related AS3 code for each chart, so commenting out the various charts to see which one is causing the issue is difficult. What should I be looking for to help debug this? Needless to say it runs fine in the Flex/Flash system. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: AIR Versions
I had missed the flex button, and was using the compiler button. Once I chose the right button things worked much better. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/25/20 6:24 PM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: AIR Versions Did you download the AIR SDK for Flex users or the main one from the “Download Now” button? You need the one for Flex users and even then, I don’t know if this suggestion will work with recent AIR SDKs. HTH, -Alex From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Thursday, June 25, 2020 at 3:03 PM To: Alex Harui , "users@flex.apache.org" Subject: Re: AIR Versions I am running FlashBuilder 4.6. I created a folder C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.6\sdks\4.16.1 I copied in the 4.16 Flex SDK I then copied the AIR compiler v32 on top of that (overwriting files as needed). This is what I found as the proper way to do the upgrade from - " target="_blank">https://www.andygup.net/how-to-upgrade-your-air-sdk-in-flashbuilder-4-6/<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.andygup.net%2Fhow-to-upgrade-your-air-sdk-in-flashbuilder-4-6%2F=02%7C01%7Caharui%40adobe.com%7C9a0f6d04716a4bd121a408d81953a800%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287194388375687=Pq%2BuBXJHKK88%2BWKSNUXCb2sooBJiO2uoMTj04w4qeGo%3D=0> Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/25/20 5:58 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: AIR Versions Depending on how you upgraded, you could have overwritten the default Flex configs with the default AIR configs and that could cause these symptoms. Flex has an air-config.xml with different library-path than standard AIR SDK. IMO, re-installing with the right AIR version has been used more than other options. IIRC, there is a script to use to upgrade as well. HTH, -Alex On 6/25/20, 2:52 PM, "Paul Stearns" wrote: The actual error I am getting is; Could not resolve to a component implementation. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paul Stearns" Sent: 6/25/20 5:50 PM To: , Subject: Re: AIR Versions Paulus: Here is my application tag; https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691093154=Bf9FWbbfxZQNEmOX%2BAroUCCz5xC4bVadTwiqtwbq1UY%3D=0; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ext="Classes.panel.*" creationComplete="initApp();" xmlns:utils="Classes.Components.utils.*" pageTitle="ACETAS" xmlns:vti="Classes.Input.*" modalTransparency=".2" modalTransparencyBlur="2" width="1280" height="720" scriptTimeLimit="60"> Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/25/20 5:48 PM To: users@flex.apache.org Subject: Re: AIR Versions Hi Paul, MX components should normally not be a problem. Are you sure you have the mx namespace defined? Like this e.g. in a spark VGroup that uses mx components (the xmlns:mx part): https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691093154=Bf9FWbbfxZQNEmOX%2BAroUCCz5xC4bVadTwiqtwbq1UY%3D=0; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" Cheers Paulus -- Sent from: " target="_blank">https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-flex-users.246.n4.nabble.com%2F=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691103148=GuB%2FHKuLBHlLPA6KLE6YqL%2FaMS4odhvLhRl8tN%2FpSPg%3D=0<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-flex-users.246.n4.nabble.com%2F=02%7C01%7Caharui%40adobe.com%7C9a0f6d04716a4bd121a408d81953a800%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287194388375687=fE%2Fm3Jp9eAgJ9aHQrYd61gn45Jh7%2BBfti5xDYTrCeV0%3D=0>
Re: AIR Versions
I am running FlashBuilder 4.6. I created a folder C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.6\sdks\4.16.1 I copied in the 4.16 Flex SDK I then copied the AIR compiler v32 on top of that (overwriting files as needed). This is what I found as the proper way to do the upgrade from - https://www.andygup.net/how-to-upgrade-your-air-sdk-in-flashbuilder-4-6/ Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/25/20 5:58 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: AIR Versions Depending on how you upgraded, you could have overwritten the default Flex configs with the default AIR configs and that could cause these symptoms. Flex has an air-config.xml with different library-path than standard AIR SDK. IMO, re-installing with the right AIR version has been used more than other options. IIRC, there is a script to use to upgrade as well. HTH, -Alex On 6/25/20, 2:52 PM, "Paul Stearns" wrote: The actual error I am getting is; Could not resolve to a component implementation. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 -------- From: "Paul Stearns" Sent: 6/25/20 5:50 PM To: , Subject: Re: AIR Versions Paulus: Here is my application tag; https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691093154=Bf9FWbbfxZQNEmOX%2BAroUCCz5xC4bVadTwiqtwbq1UY%3D=0; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ext="Classes.panel.*" creationComplete="initApp();" xmlns:utils="Classes.Components.utils.*" pageTitle="ACETAS" xmlns:vti="Classes.Input.*" modalTransparency=".2" modalTransparencyBlur="2" width="1280" height="720" scriptTimeLimit="60"> Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/25/20 5:48 PM To: users@flex.apache.org Subject: Re: AIR Versions Hi Paul, MX components should normally not be a problem. Are you sure you have the mx namespace defined? Like this e.g. in a spark VGroup that uses mx components (the xmlns:mx part): https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fns.adobe.com%2Fmxml%2F2009=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691093154=Bf9FWbbfxZQNEmOX%2BAroUCCz5xC4bVadTwiqtwbq1UY%3D=0; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" Cheers Paulus -- Sent from: https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-flex-users.246.n4.nabble.com%2F=02%7C01%7Caharui%40adobe.com%7C6620518e86704f4c3a8208d819521917%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637287187691103148=GuB%2FHKuLBHlLPA6KLE6YqL%2FaMS4odhvLhRl8tN%2FpSPg%3D=0
Re: AIR Versions
The actual error I am getting is; Could not resolve to a component implementation. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paul Stearns" Sent: 6/25/20 5:50 PM To: , Subject: Re: AIR Versions Paulus: Here is my application tag; http://ns.adobe.com/mxml/2009; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ext="Classes.panel.*" creationComplete="initApp();" xmlns:utils="Classes.Components.utils.*" pageTitle="ACETAS" xmlns:vti="Classes.Input.*" modalTransparency=".2" modalTransparencyBlur="2" width="1280" height="720" scriptTimeLimit="60"> Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/25/20 5:48 PM To: users@flex.apache.org Subject: Re: AIR Versions Hi Paul, MX components should normally not be a problem. Are you sure you have the mx namespace defined? Like this e.g. in a spark VGroup that uses mx components (the xmlns:mx part): http://ns.adobe.com/mxml/2009; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: AIR Versions
Paulus: Here is my application tag; http://ns.adobe.com/mxml/2009; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ext="Classes.panel.*" creationComplete="initApp();" xmlns:utils="Classes.Components.utils.*" pageTitle="ACETAS" xmlns:vti="Classes.Input.*" modalTransparency=".2" modalTransparencyBlur="2" width="1280" height="720" scriptTimeLimit="60"> Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/25/20 5:48 PM To: users@flex.apache.org Subject: Re: AIR Versions Hi Paul, MX components should normally not be a problem. Are you sure you have the mx namespace defined? Like this e.g. in a spark VGroup that uses mx components (the xmlns:mx part): http://ns.adobe.com/mxml/2009; xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
AIR Versions
I took an application developed and running in Flex 3.6 and migrated it to AIR using Flashbuilder 4.6. It was surprisingly easy. I had a minor issue and thought I would upgrade the AIR compiler to v32. This caused many MX components to not be found. For example; mx:Button mx:Canvas mx:HBox and the list goes on. The choices as I see them are; Rewriting everything to use Spark components, or Finding an additional MX library which integrates with the current version of AIR, or Going to an older version AIR. I don’t think I want to rewrite using Spark, as there is a lot of code which relies on the missing mx components. Just testing would be a chore. Is there an mx library available which will integrate with AIR 32 or higher? What is the newest version of AIR where all of the mx components I know & love are supported? Where/how can I get it? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
RE: Create "web page" on the fly in AIR
Thanks. I decided on a different approach, unless something better comes along, I create a public application variable tempReports followed by 2 random digits. I use that to build a folder in the applicationStorageDirectory area. All reports get written there and I launch the default application with file.openWithDefaultApplication(). When the application is closed I delete the folder & contents. When the application is launched I delete all tempReports(nn) folders. To clean up in case something got left behind. I also added logic to add versions to the file names in the tempReports folder if the file already exists [myReport.pdf, myReport(1).pdf, myReport(2).pdf]. If you are wondering about the reason for the numbers at the end of the tempReports folder, it is my intention to allow multiple copies of the program to run simultaneously, which is how some users currently use the Flash applications. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "IDYLOG - Nicolas Granon" Sent: 6/23/20 10:27 AM To: , Subject: RE: Create "web page" on the fly in AIR Hi Paul, For your information, we did run into the same exact problem when migrating our apps from FlashPlayer to AIR runtime (we generate reports in HTML or PDF format on the server and display them in a separate browser tab). We have tried the 'inner' AIR browser solution but : - it is quite complicated to setup, due to the security model (trusted domain vs untrusted domain) especially if your have dynamic data flowing to and from the remote http server (report parameters, error codes etc.). But it can be managed. - but what we did discover (after having done the hard work, of course) is that CSS support of the embedded AIR browser is very poor (which was a real problem since we have a number of html reports and printouts) and not very consistent between MacOS and Windows. In the end, it was not a viable solution. (also, we found performances to be so-so compared with recent browsers). In the end, we have chosen the 'http/get' way (much simpler), with a simple (but effective) encrypting of the url parameters. It is a bit ugly (but users don't seem to mind) and your are of course limited by the maximum length of url parameters (which is *not* so tiny, in fact, in modern browsers). The server sends a session key in the early stages of the application and uses it for decoding url parameters. Maybe there are other and smarter ways (sockets ?)... Hope this helps! Regards Nicolas Granon IDYLOG Digital Engineering 13 Bd Princesse Charlotte Monaco ngra...@idylog.com 06.22.52.69.77 -Message d'origine- De : Paul Stearns Envoyé : mardi 23 juin 2020 15:12 À : users@flex.apache.org; users@flex.apache.org Objet : Re: Create "web page" on the fly in AIR Paulus: I do not quite understand the approach outlined. I will restate what I currently do in Flash; My Flash application, in many places, will create an HTTP/POST request which is sent to a web service. This web service takes the request and all of the POSTed arguments, runs a report generator and spits back a PDF "file" using the proper mime type. I do this from Flash using navigateToURL(urlRequest,"_blank") which causes the browser to pop up a new window/tab that receives the mime type PDF and launches the pdf viewer. I need to convert this into AIR, but navigateToURL will convert POST requests to GET which the report generator ignores. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/23/20 8:26 AM To: users@flex.apache.org Subject: Re: Create "web page" on the fly in AIR Hi Paul, What if you create a local web server in AIR that when requested from the browser (HTTP GET) performs a HTTP POST from your application to your server and streams the response back to the browser? Doesn't that solve the problem? Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Create "web page" on the fly in AIR
Paulus: I do not quite understand the approach outlined. I will restate what I currently do in Flash; My Flash application, in many places, will create an HTTP/POST request which is sent to a web service. This web service takes the request and all of the POSTed arguments, runs a report generator and spits back a PDF "file" using the proper mime type. I do this from Flash using navigateToURL(urlRequest,"_blank") which causes the browser to pop up a new window/tab that receives the mime type PDF and launches the pdf viewer. I need to convert this into AIR, but navigateToURL will convert POST requests to GET which the report generator ignores. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/23/20 8:26 AM To: users@flex.apache.org Subject: Re: Create "web page" on the fly in AIR Hi Paul, What if you create a local web server in AIR that when requested from the browser (HTTP GET) performs a HTTP POST from your application to your server and streams the response back to the browser? Doesn't that solve the problem? Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Create "web page" on the fly in AIR
Paulus: Seems like a good tool. I wanted to keep my question short, but I should have mentioned what my final end goal is to send an embedded mime type of a PDF file. What I need this for mainly is to display reports PDF which are created on the fly from a application which only accepts "POST" requests. My app sends a HTTP/POST to a web service, it responds with a "file" with a mime type of PDF. I would like to redirect the data stream to something which can display the PDF without writing it to disk first. The current Flash applications just requests/redirects the resultant data stream to a new window/tab using navigateToURL(urlRequest,"_blank"). Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/23/20 3:58 AM To: users@flex.apache.org Subject: Re: Create "web page" on the fly in AIR Hi Paul, You can create a local web server to your AIR app and redirect the user to this local URL/port. This way you can stream anything you want to the browser from your own local AIR web server. Here's an example: https://github.com/leopoldodonnell/airhttp Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Create "web page" on the fly in AIR
Is there any methods where I can receive a stream of data from an HTTP request into a variable in AIR, then send the data to the default browser without first writing the file to disk? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: migrating to AIR when using url "POST" request
Alex: The answer was actually much simpler than I was trying to make it. Here is a code snippet which will run the default application for a particular file; var strFilePath:String = _objDownloadFile.nativePath; var file:File = File.applicationDirectory.resolvePath(strFilePath); file.openWithDefaultApplication() Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/20/20 2:53 AM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: migrating to AIR when using url "POST" request This article implies that you can use “start” on windows. https://stackoverflow.com/questions/3729187/how-to-open-file-with-default-application-in-cmd. I think you can use “open” in OSX. There might be some simpler way that I don’t know. -Alex From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Friday, June 19, 2020 at 5:35 AM To: Alex Harui , "users@flex.apache.org" Subject: Re: migrating to AIR when using url "POST" request Alex: Not really. I do not control the computers the app is installed on. If I could run an associated application that would work. In other words the equivalent of double clicking the file at the OS level. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/19/20 12:57 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: migrating to AIR when using url "POST" request Paul, NativeProcess should let you launch the actual application if you know the path to the application. Would that work for you? -Alex On 6/18/20, 5:40 AM, "Paul Stearns" wrote: Alex: My goal is to receive the file on the client and open Excel. For the moment i did; // navigateToURL(u, "_blank"); var objDownloadFile:FileReference = new FileReference; objDownloadFile.download(u,strFileName + ".xlsx"); which will allow the user to download the file. It would be nice to give them the option to open it from the application. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/18/20 12:04 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: migrating to AIR when using url "POST" request At a higher-level, what is the user goal? Can you open Excel itself or does it have to be a browser window? -Alex On 6/17/20, 10:53 AM, "Paul Stearns" wrote: In many places in our applications we use the navigateToURL method to load another browser window with Excel Spreadsheets and other items we generate from code on our website. We invariably use "POST" instead of "GET" for various reasons, some of which cannot be converted to "GET." Where can I find information on how to convert; var u:URLRequest = new URLRequest(_RootDomain + urlExcelExport); u.data = variables; u.method = "POST"; navigateToURL(u, "_blank"); to something which will work from AIR? Perhaps URLloader? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Multiple AIR executables in the same folder
Alex: I want to completely shut down the initial process Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/19/20 12:59 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Multiple AIR executables in the same folder Are you trying to create a separate process for security or memory reasons? Otherwise, just load the SWF in another NativeWindow. HTH, -Alex On 6/18/20, 8:12 AM, "Paul Stearns" wrote: I have an acceptable (mostly) work around. If I move the second application into a subfolder of the first I can easily run the second application. This however requires that I carry an extra ~36 MB of AIR executables with it. Is there any way to tell a captive runtime executable where the AIR modules can be found? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 -------- From: "Paul Stearns" Sent: 6/18/20 8:32 AM To: "users@flex.apache.org" Subject: Multiple AIR executables in the same folder I would like to have multiple AIR executables (captive runtime) in the same folder. It appears that a captive runtime runs a standard executable which looks for a file .META-INF\AIR\application.xml which defines the actual swf file to run. Will the executable accept as a parameter, the name of the "application.xml" file to use? If so I could have two different files. What I am trying to accomplish is to have one AIR application call another. and packaging them into the same folder would make my life easier. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: migrating to AIR when using url "POST" request
Alex: Not really. I do not control the computers the app is installed on. If I could run an associated application that would work. In other words the equivalent of double clicking the file at the OS level. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/19/20 12:57 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: migrating to AIR when using url "POST" request Paul, NativeProcess should let you launch the actual application if you know the path to the application. Would that work for you? -Alex On 6/18/20, 5:40 AM, "Paul Stearns" wrote: Alex: My goal is to receive the file on the client and open Excel. For the moment i did; // navigateToURL(u, "_blank"); var objDownloadFile:FileReference = new FileReference; objDownloadFile.download(u,strFileName + ".xlsx"); which will allow the user to download the file. It would be nice to give them the option to open it from the application. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/18/20 12:04 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: migrating to AIR when using url "POST" request At a higher-level, what is the user goal? Can you open Excel itself or does it have to be a browser window? -Alex On 6/17/20, 10:53 AM, "Paul Stearns" wrote: In many places in our applications we use the navigateToURL method to load another browser window with Excel Spreadsheets and other items we generate from code on our website. We invariably use "POST" instead of "GET" for various reasons, some of which cannot be converted to "GET." Where can I find information on how to convert; var u:URLRequest = new URLRequest(_RootDomain + urlExcelExport); u.data = variables; u.method = "POST"; navigateToURL(u, "_blank"); to something which will work from AIR? Perhaps URLloader? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Multiple AIR executables in the same folder
I have an acceptable (mostly) work around. If I move the second application into a subfolder of the first I can easily run the second application. This however requires that I carry an extra ~36 MB of AIR executables with it. Is there any way to tell a captive runtime executable where the AIR modules can be found? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paul Stearns" Sent: 6/18/20 8:32 AM To: "users@flex.apache.org" Subject: Multiple AIR executables in the same folder I would like to have multiple AIR executables (captive runtime) in the same folder. It appears that a captive runtime runs a standard executable which looks for a file .META-INF\AIR\application.xml which defines the actual swf file to run. Will the executable accept as a parameter, the name of the "application.xml" file to use? If so I could have two different files. What I am trying to accomplish is to have one AIR application call another. and packaging them into the same folder would make my life easier. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: migrating to AIR when using url "POST" request
Alex: My goal is to receive the file on the client and open Excel. For the moment i did; //navigateToURL(u, "_blank"); var objDownloadFile:FileReference = new FileReference; objDownloadFile.download(u,strFileName + ".xlsx"); which will allow the user to download the file. It would be nice to give them the option to open it from the application. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/18/20 12:04 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: migrating to AIR when using url "POST" request At a higher-level, what is the user goal? Can you open Excel itself or does it have to be a browser window? -Alex On 6/17/20, 10:53 AM, "Paul Stearns" wrote: In many places in our applications we use the navigateToURL method to load another browser window with Excel Spreadsheets and other items we generate from code on our website. We invariably use "POST" instead of "GET" for various reasons, some of which cannot be converted to "GET." Where can I find information on how to convert; var u:URLRequest = new URLRequest(_RootDomain + urlExcelExport); u.data = variables; u.method = "POST"; navigateToURL(u, "_blank"); to something which will work from AIR? Perhaps URLloader? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Multiple AIR executables in the same folder
I would like to have multiple AIR executables (captive runtime) in the same folder. It appears that a captive runtime runs a standard executable which looks for a file .META-INF\AIR\application.xml which defines the actual swf file to run. Will the executable accept as a parameter, the name of the "application.xml" file to use? If so I could have two different files. What I am trying to accomplish is to have one AIR application call another. and packaging them into the same folder would make my life easier. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
migrating to AIR when using url "POST" request
In many places in our applications we use the navigateToURL method to load another browser window with Excel Spreadsheets and other items we generate from code on our website. We invariably use "POST" instead of "GET" for various reasons, some of which cannot be converted to "GET." Where can I find information on how to convert; var u:URLRequest = new URLRequest(_RootDomain + urlExcelExport); u.data = variables; u.method = "POST"; navigateToURL(u, "_blank"); to something which will work from AIR? Perhaps URLloader? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Using NSIS MUI to build an installation executable for AIR applications.
I have been successful in creating an NSIS configuration file for building an AIR installation package. It uses the "Modern User Interface (MUI)." If anyone is interested, I would be happy to share this. Sending it via email to this mailing list does not seem practical. Is there a repository of useful hacks I can upload to? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Internet explorer View Downloads when running captive AIR
When I run my air module either in debug mode or a captive AIR runtime version it loads my application, but always loads "View Downloads - Internet Explorer." How can I preclude this from happening? How can I make sure it doesn't happen on computers I deploy to? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Adobe Air launcher
Is there a way of stopping execution of application "A" and transferring control to application "B" in AIR? Or will I need to create an OS command procedure? My thought is to write an application whose only purpose is to verify that my "real" application is up to date, download any SWF files which are out of date, and then start the real application.It appears I can create an "Application Domain" and load things into it, but for my purposes, if I could stop execution of one application and start execution of a second, that would be best. If this can be done in AIR, rather than OS command procedures, then I won't need to deal with Command procedures for Windows, Mac & Linux. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Deploying AIR applications
Alex: Should I use a captive runtime, how do I go about creating an installer. Flash Builder creates a folder with many files and sub folders. I need to create installers for Windows, Mac & Linux. My applications are "MX" meant to be run on a desktop. so I do not need to create mobile installers. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/15/20 1:10 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Deploying AIR applications Hi Paul, Are you sure you don't want to use captive runtime? There was a recent discussion about replacing the badge installer here https://lists.apache.org/thread.html/r2976f88c9bec26c58d889be9d71367834f43cc318467cf16c0930209%40%3Cusers.flex.apache.org%3E HTH, -Alex On 6/14/20, 5:28 AM, "Paul Stearns" wrote: After many dead ends due to Adobe archiving their content, it appears what I need is something equivalent to creating an Adobe Badge. From the limited information I found I think the badge uses Flash player, which will not work in the near future. So I am back where I started. What are people doing to create a Adobe Badge equivalent? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 ---- From: "Paul Stearns" Sent: 6/13/20 4:53 PM To: "users@flex.apache.org" Subject: Deploying AIR applications Where can I find information on how to make an AIR application deployable? I would prefer an option which would check if an acceptable version of AIR is already installed, and install AIR if not. The end goal would be to create an item on a web site where the user clicks, if the app is already installed it starts the app, if not it allows the user to download everything needed to install the app. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Deploying AIR applications
Alex: Actually I am not sure. The perceived advantage of a captive runtime is it is a single download/install. This would make it easier for the user to install and may allow the application to be installed with less hassle from IT departments. The perceived advantage of a full AIR install is we would not be responsible for installing security updates etc. Either way it is done, we would really like it to be launchable from a website. Do you see any other considerations I should pay attention to? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/15/20 1:10 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Deploying AIR applications Hi Paul, Are you sure you don't want to use captive runtime? There was a recent discussion about replacing the badge installer here https://lists.apache.org/thread.html/r2976f88c9bec26c58d889be9d71367834f43cc318467cf16c0930209%40%3Cusers.flex.apache.org%3E HTH, -Alex On 6/14/20, 5:28 AM, "Paul Stearns" wrote: After many dead ends due to Adobe archiving their content, it appears what I need is something equivalent to creating an Adobe Badge. From the limited information I found I think the badge uses Flash player, which will not work in the near future. So I am back where I started. What are people doing to create a Adobe Badge equivalent? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 -------- From: "Paul Stearns" Sent: 6/13/20 4:53 PM To: "users@flex.apache.org" Subject: Deploying AIR applications Where can I find information on how to make an AIR application deployable? I would prefer an option which would check if an acceptable version of AIR is already installed, and install AIR if not. The end goal would be to create an item on a web site where the user clicks, if the app is already installed it starts the app, if not it allows the user to download everything needed to install the app. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Deploying AIR applications
After many dead ends due to Adobe archiving their content, it appears what I need is something equivalent to creating an Adobe Badge. From the limited information I found I think the badge uses Flash player, which will not work in the near future. So I am back where I started. What are people doing to create a Adobe Badge equivalent? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paul Stearns" Sent: 6/13/20 4:53 PM To: "users@flex.apache.org" Subject: Deploying AIR applications Where can I find information on how to make an AIR application deployable? I would prefer an option which would check if an acceptable version of AIR is already installed, and install AIR if not. The end goal would be to create an item on a web site where the user clicks, if the app is already installed it starts the app, if not it allows the user to download everything needed to install the app. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Deploying AIR applications
Where can I find information on how to make an AIR application deployable? I would prefer an option which would check if an acceptable version of AIR is already installed, and install AIR if not. The end goal would be to create an item on a web site where the user clicks, if the app is already installed it starts the app, if not it allows the user to download everything needed to install the app. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Flex to Adobe AIR migration
Alex: No, I have not considered loading & running directly. It is an interesting thought however. My approach is to load the file to the client computer as needed, then executing the local swf file.. My problem is I need a solution which will work today. Converting to Royale, Haxe or something else which would require significant effort will come later. I was counting on people being able to maintain older browser/flash when Adobe stopped supporting new Flash patches. Unfortunately this is not a viable strategy. Once I have a methodology where my customers will be able to run after 12/2020, then I can focus on a long term solution. I really like the concept of Ruffle, where we could maintain our codebase and run in am emulator. I switched to Flex many years ago because as a long time software developer, developing ASP at the time, I felt the vagaries of the various browser DOMs to be incompatible with serious software development. While the various JS frameworks which have been developed over the intervening years have created a layer of abstraction between the application developer and the browser DOM, the problem still exists. So I will continue to search (possibly in vain) for a "thin client" deployment methodology which supports a single DOM. Should I not succeed in finding this, I will find the best HTML5/JS framework available and slog my way through the learning curve, hoping that whoever maintains the framework is staying on top of the latest stupidity features of the available browsers. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/12/20 12:29 PM To: "users@flex.apache.org" , "pa...@compuace.com" , DarrenEvans Subject: Re: Flex to Adobe AIR migration @pa...@compuace.com Do you know for a fact that you can't loadBytes your SWF from the network and get it to run properly? @DarrenEvans I'm interested in more details on your solution as well. If it still involves a Flash Player to run a SWF, the ability to get a free Flash Player on a new computer after 2020 is not guaranteed. Royale/FlexJS is certainly not a zero-effort migration, but should be less effort than a full port to an all-JS solution. What was supposed to happen is that everyone pitched in with bug fixes and collectively made migration easier for everyone else. There is no big money driving development of Royale or Flex. It was supposed to become a community effort where each team migrating their Flex app had at least one person get to know the Royale framework well enough to fix bugs in it. Royale still can become a larger community effort, IMO, but requires more of you to get involved and become framework developers. Being able to fix your own bugs in software you depend on is your best defense against an uncertain future. That's why Flex and Royale are open source at Apache. So that no corporation that owns the code. Thanks, -Alex On 6/12/20, 5:36 AM, "Paul Stearns" wrote: Darren: Would you be willing to share the "Adobe Air SWF Launcher?" If not we would be very interested in as much detail as you would be willing to share, so that we could replicate it. What I am in the middle of writing is a main application shell which checks the date of the local SWF, the corresponding SWF hosted on a web site, and if the local one is older download the one from the web site. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: DarrenEvans Sent: 6/12/20 7:14 AM To: users@flex.apache.org Subject: Re: Flex to Adobe AIR migration Hi Sam, We were in exactly the same situation. I'm not sure how big your application is but ours was absolutely huge; many millions of lines of Flex/AS code. We looked at Apache Royale / FlexJS when it was in its infancy and we simply could not justify the time and effort it would take to port it to that. The component selection simply was not there, the IDE support was minimal and it was an absolute pain to get the smallest of bits to compile and display anything plus all the MXML needed rewriting. We wanted a quick solution that could use the existing code base, as-is, while we rewrote the product using React/HTML/D3/SVG. First step was creating a direct Adobe Air compilation of the original codebase. We also used IntelliJ IDE and I never had a problem with it requiring the FlashPlayer. Other than working through some base component issues and some other bugs that surfaced, it wasn't too bad. We ended up extending that and going for a solution that loaded the original SWF file and essentially hosted it in via what we termed the "Adobe Air SWF Launcher" (almost a surrogate FlashPlayer). Th
Re: Flex to Adobe AIR migration
Darren: Would you be willing to share the "Adobe Air SWF Launcher?" If not we would be very interested in as much detail as you would be willing to share, so that we could replicate it. What I am in the middle of writing is a main application shell which checks the date of the local SWF, the corresponding SWF hosted on a web site, and if the local one is older download the one from the web site. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: DarrenEvans Sent: 6/12/20 7:14 AM To: users@flex.apache.org Subject: Re: Flex to Adobe AIR migration Hi Sam, We were in exactly the same situation. I'm not sure how big your application is but ours was absolutely huge; many millions of lines of Flex/AS code. We looked at Apache Royale / FlexJS when it was in its infancy and we simply could not justify the time and effort it would take to port it to that. The component selection simply was not there, the IDE support was minimal and it was an absolute pain to get the smallest of bits to compile and display anything plus all the MXML needed rewriting. We wanted a quick solution that could use the existing code base, as-is, while we rewrote the product using React/HTML/D3/SVG. First step was creating a direct Adobe Air compilation of the original codebase. We also used IntelliJ IDE and I never had a problem with it requiring the FlashPlayer. Other than working through some base component issues and some other bugs that surfaced, it wasn't too bad. We ended up extending that and going for a solution that loaded the original SWF file and essentially hosted it in via what we termed the "Adobe Air SWF Launcher" (almost a surrogate FlashPlayer). This way we didn't need our customers to reinstall the Application if there were bugs or tweaks, we could simply host a new SWF which would be consumed by our launcher. Cheers, Dal Sam wrote > Hi, I have a requirement to convert Apache flex web based application to > Adobe air, currently application runs on any browser with support of adobe > flash player, since Adobe flash is no longer going to be supported after > 2020, we are trying to figure out the different options. one best option > suggested was Adobe AIR, > > I have used Intellij IDE to create Adobe AIR web sample project with > Adobe > AIR and flex SDK, but when i try to run the application, it prompts to > enable flash player. Are there any suggestions to how to create adobe air > web based project, so that it would not ask for flash player. Appreciate > even a small help, Thankyou! > > > > -- > Sent from: http://apache-flex-users.246.n4.nabble.com/ -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Keeping user applications up to date in AIR.
I was thinking of the following approach to keep things up to date. The applications all talk to the application server (middle tier) for DB inquiries and the like. For the "Main" application use the "Adobe AIR Update Framework."Since all other modules are loaded from a single place in the Main application, before I load a module I would;Check the date on the local swf file.Check the date on the swf file on the application server.If the date on the local file is less than (maybe not equal) the date on the application server, download the swf file. If possible set the date of the file downloaded = the file date on the application server.Run the swf file (module loader). Before I head down this path, are there any technical reasons why this would not work? Things like the AIR application can't load swf files into the application folder, or building the AIR app signs each swf file in such a way that they can't be loaded manually would be show stoppers for this approach. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 ---- From: "Paul Stearns" Sent: 6/9/20 5:51 PM To: "users@flex.apache.org" Subject: Keeping user applications up to date in AIR. If we deploy applications using AIR we will need to deploy updates. At present in the Flash/HTML environment that is easy (except for caching) you put the SWF file in the production folder of the website and the next time a user needs the module the get the new one. Our systems consist of one Main.swf file and many modules (independent .swf files) which are mostly independent of one another. We would like to have a mechanism which would identify new .swf files which need to be loaded to client computer whenever the .swf file is needed. Perhaps if a swf file has been verified for the current session, and the current day it would not be checked against the master. Will "Adobe AIR Update Framework" do this (or help) for our applications? If so, where can we get a good introduction tutorial/documentation? If not where can we find something which will help accomplish what we are looking to do? Another alternative is to check if there are updates when the application is loaded, but if a change is made to an obscure module which is seldom used by few people, we would not want to load it during startup which could/would cause the application to load slowly. We prefer JIT deployment. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Keeping user applications up to date in AIR.
Paulus: The way our application works is everything is controlled from Flex. When you run a report generally there is a criteria panel in flex which uses navigateToURL(url,"_blank"); to run a middle tier program that produces a PDF file. Is there a way to communicate between the application running in the HTML control and the AIR application containing it? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/10/20 10:33 AM To: users@flex.apache.org Subject: Re: Keeping user applications up to date in AIR. Hi Paul, In our application there is no need for uploading / downloading files or printing reports, but one shortcut I can think of for the printing part is redirect users to the default browser and start the printing from there (if this can be done from a HTML page in your application). At the same time, since the wrapper AIR application is a Flex application, you can do stuff around your swf application like uploading / downloading and printing. You just have to do that in Flex / AIR, not in your swf. Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Keeping user applications up to date in AIR.
Paulus: I did what you said, and it works great. Thank you very much for pointing this out. Our applications interact with the web browser to allow things like uploading/downloading files, printing reports, etc. Were you able to come up with a solution for those interactions? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paul Stearns" Sent: 6/10/20 9:37 AM To: Subject: Re: Keeping user applications up to date in AIR. Paulus: This sounds interesting. Are you saying you continue to develop your Flex app as a web based application, but effectively use AIR as the web browser? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/10/20 5:07 AM To: users@flex.apache.org Subject: Re: Keeping user applications up to date in AIR. Hi Paul, We actually had the exact same setup in that we had an swf application we needed to continue using after browsers stopped supporting flash. What we did for the time being (but works very well): create an AIR application that uses the flex HTML control to load your swfs like you did in the browser. Create a WindowedApplication (Flex) with just one control in it: On the creationComplete // Load your web application htmlControl.location = "https://app...;; In the end we did add the AIR updating functionality, but only for updating the AIR app (which rarely happens). The swfs are loaded / reloaded like the were in the browser. Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Keeping user applications up to date in AIR.
Paulus: This sounds interesting. Are you saying you continue to develop your Flex app as a web based application, but effectively use AIR as the web browser? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Paulus de B." Sent: 6/10/20 5:07 AM To: users@flex.apache.org Subject: Re: Keeping user applications up to date in AIR. Hi Paul, We actually had the exact same setup in that we had an swf application we needed to continue using after browsers stopped supporting flash. What we did for the time being (but works very well): create an AIR application that uses the flex HTML control to load your swfs like you did in the browser. Create a WindowedApplication (Flex) with just one control in it: On the creationComplete // Load your web application htmlControl.location = "https://app...;; In the end we did add the AIR updating functionality, but only for updating the AIR app (which rarely happens). The swfs are loaded / reloaded like the were in the browser. Cheers Paulus -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: CSS embedded images in AIR
Alex: I fiddled with the CSS files changing Application to mx|WindowedApplication (and other mx components) and added the namespaces; @namespace mx "library://ns.adobe.com/flex/mx"; @namespace s "library://ns.adobe.com/flex/spark"; This combined with making sure the theme is set to Halo seemed to have resolved the issue. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 6/9/20 12:36 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: CSS embedded images in AIR Can you make a really small test case (maybe just an Application tag and the CSS and whatever code required to display the embedded image). Then if it works in 3.6 but doesn't work in 4.6, open a bug with the source, the image, and both the Flex 3.6 SWF and the Flex 4.6 SWF. Thanks, -Alex On 6/9/20, 7:21 AM, "Paul Stearns" wrote: I have a CSS file which is converted to a SWF file. When using SDK 3.6 and compiling for Flash it works fine. When Using SDK 4.6 and compiling for AIR, the image does not display. Since I am changing 2 things at once I am not sure where to look. Are there differences between 3.6 & 4.6 or Flash & AIR which might cause this? The CSS file is below, the problem line is; backgroundImage: Embed(source="assets/ocean.jpg"); Application { backgroundColor: #1c526d; backgroundGradientColors: #146a94, #81cff6; backgroundGradientAlphas: 0.29, 0.54; borderColor: #6E; borderThickness: 2; cornerRadius: 5; color: #6E; borderStyle: outset; disabledColor: #6E; backgroundImage: Embed(source="assets/ocean.jpg"); } Button { disabledColor: #b7babc; } Panel { backgroundColor: #C4EBFE; backgroundAlpha: 1; borderAlpha: 0.9; titleStyleName: panelTitle; statusStyleName: windowStatus; } .separator { color: #6E; borderColor: #6E; borderStyle: none; backgroundColor: #C4EBFE; } .panelTitle { color: #00; fontFamily: Verdana; fontWeight: bold; backgroundAlpha: 0.6; } .windowStatus { color: #00; fontFamily: Verdana; fontWeight: normal; backgroundAlpha: 0.6; } .headerLabel { color: #66ff66; fontFamily: Arial; fontWeight: bold; } Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Keeping user applications up to date in AIR.
If we deploy applications using AIR we will need to deploy updates. At present in the Flash/HTML environment that is easy (except for caching) you put the SWF file in the production folder of the website and the next time a user needs the module the get the new one. Our systems consist of one Main.swf file and many modules (independent .swf files) which are mostly independent of one another. We would like to have a mechanism which would identify new .swf files which need to be loaded to client computer whenever the .swf file is needed. Perhaps if a swf file has been verified for the current session, and the current day it would not be checked against the master. Will "Adobe AIR Update Framework" do this (or help) for our applications? If so, where can we get a good introduction tutorial/documentation? If not where can we find something which will help accomplish what we are looking to do? Another alternative is to check if there are updates when the application is loaded, but if a change is made to an obscure module which is seldom used by few people, we would not want to load it during startup which could/would cause the application to load slowly. We prefer JIT deployment. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
CSS embedded images in AIR
I have a CSS file which is converted to a SWF file. When using SDK 3.6 and compiling for Flash it works fine. When Using SDK 4.6 and compiling for AIR, the image does not display. Since I am changing 2 things at once I am not sure where to look. Are there differences between 3.6 & 4.6 or Flash & AIR which might cause this? The CSS file is below, the problem line is; backgroundImage: Embed(source="assets/ocean.jpg"); Application {backgroundColor: #1c526d; backgroundGradientColors: #146a94, #81cff6; backgroundGradientAlphas: 0.29, 0.54; borderColor: #6E; borderThickness: 2; cornerRadius: 5; color: #6E; borderStyle: outset; disabledColor: #6E; backgroundImage: Embed(source="assets/ocean.jpg"); } Button {disabledColor: #b7babc; } Panel { backgroundColor: #C4EBFE; backgroundAlpha: 1; borderAlpha: 0.9; titleStyleName: panelTitle; statusStyleName: windowStatus; } .separator { color: #6E; borderColor: #6E; borderStyle: none; backgroundColor: #C4EBFE; } .panelTitle { color: #00;fontFamily: Verdana;fontWeight: bold; backgroundAlpha: 0.6; } .windowStatus {color: #00;fontFamily: Verdana;fontWeight: normal;backgroundAlpha: 0.6; } .headerLabel { color: #66ff66; fontFamily: Arial; fontWeight: bold; } Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Tip/Solution after December/2020
There is https://www.leaningtech.com/pages/cheerpx.html which promises a solution. I have contacted them, but, they say they won't be able to confirm whether it will work with our application nor will they confirm what the cost will be until the August-September time frame. This of course cuts things way to close if it doesn't work or is too expensive. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Michael Astudillo Sent: 6/3/20 8:55 AM To: users@flex.apache.org Subject: Re: Tip/Solution after December/2020 Hello Carlos, do you have people specialized in migrations of this type who can offer their services? El El dom, 12 de abr. de 2020 a la(s) 11:31, Carlos Rovira < carlosrov...@apache.org> escribió: > Another option is to try Apache Royale... > > http://royale.apache.org/ > > El sáb., 11 abr. 2020 a las 19:43, Angelo Anolin ( >) > escribió: > > > Freezing Chrome only works if you are the systems administrator who can > > allow such updates to happen to your client machines. Evergreen browsers > > always require to be updated constantly. > > > > I think the best alternative is to have a plan to migrate this app NOW or > > port it to Adobe AIR which should still work past the end of life of > Flash > > in browsers. > > > > On Sat, Apr 11, 2020 at 8:07 AM Diogo Vieira > > wrote: > > > > > Hello people! > > > > > > I wonder if you can give me a tip or alternative to solve my problem. > > > > > > I have an application running in production and I won't have time to > > > migrate it until December 2020. > > > > > > So, the first solution I thought of was trying to freeze a version of > > > chrome. Can you tell me if this works? > > > > > > Is there any better alternative? > > > > > > I need my application to continue running for a few more months after > the > > > end of the flash in browsers. > > > > > > Att, > > > Diogo Vieira > > > > > -- > > Sent from Mobile Device > > > > > -- > Carlos Rovira > http://about.me/carlosrovira > -- Saludos Cordiales Michael Astudillo CEO http://www.acatha.com PBX: 59372 818447 NOTA SOBRE CONFIDENCIALIDAD: La información contenida en este e-mail es confidencial y sólo puede ser utilizada por la persona natural o jurídica, a la cual está dirigido. En el evento, que el receptor no sea la persona autorizada cualquier retención, difusión, distribución o copia de éste mensaje está prohibida y será sancionada por la ley". CONFIDENTIALITY NOTE: The information contained in this e-mail is confidential and is intended only for the use of the address(es) named above. If you are not the intended recipient of this electronic transmission, you are hereby notified that any dissemination or copying of this transmission is strictly prohibited and will be sanctioned by law".
Re: Flex Articles archived
Maybe they were monitoring this forum, because I got an email about 2 minutes before your response, apologizing for not getting back to me. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 5/14/20 12:27 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Flex Articles archived I think they are just swamped. How long has it been since you wrote them? I know my productivity has been compromised with my kids out of school. -Alex On 5/14/20, 8:52 AM, "Paul Stearns" wrote: Alex: Speaking of "asking Harman" I have tried to contact them on a few occasions with very limited success. What is the best way to contact them? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 5/14/20 11:49 AM To: "users@flex.apache.org" Subject: Re: Flex Articles archived I have not looked to see what is being archived. Apache Flex has many pieces of Flex articles from the ADC in the flex-externals repo. You might also ask if Harman is planning to take over hosting that content. -Alex On 5/14/20, 8:09 AM, "leokan23" wrote: So adobe is archiving all Flex and AIR articles, guides, etc in their site. They are taking them offline and making them available only as .zip with PDF screenshots. Maybe we should keep a copy and add them in the official apache flex site for future reference? -- Sent from: https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-flex-users.246.n4.nabble.com%2F=02%7C01%7Caharui%40adobe.com%7C33c51307db5f4637c48d08d7f81ebd79%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C637250683224799918=ra8Wcinp07TsaFHHfhfaUmVS8JXiY1ec49BJHttR1b0%3D=0
Re: Flex Articles archived
Alex: Speaking of "asking Harman" I have tried to contact them on a few occasions with very limited success. What is the best way to contact them? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 5/14/20 11:49 AM To: "users@flex.apache.org" Subject: Re: Flex Articles archived I have not looked to see what is being archived. Apache Flex has many pieces of Flex articles from the ADC in the flex-externals repo. You might also ask if Harman is planning to take over hosting that content. -Alex On 5/14/20, 8:09 AM, "leokan23" wrote: So adobe is archiving all Flex and AIR articles, guides, etc in their site. They are taking them offline and making them available only as .zip with PDF screenshots. Maybe we should keep a copy and add them in the official apache flex site for future reference? -- Sent from: https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-flex-users.246.n4.nabble.com%2F=02%7C01%7Caharui%40adobe.com%7C8625dbcc1e764cca69cc08d7f818d9b5%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637250657925546374=EWf8ma15hrX55npQ%2B5Qjb3GtQcnTDO2uZF1GIdKnp2A%3D=0
Re: GUI IDE need.
Alex: Having not written a GUI IDE, I am a Monday morning quarterback in this regard, but it seems to me; If Royale's intention is to start as its base most/all of Flex's language then FB would be conceptually a great place to start. However this would only be true were one to use Eclipse as the underlying architecture for the IDE. Obviously all of the compiling/transpiling & connections to the browser would need to be rewritten. But the GUI and the intellisense stuff would all be done. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 2:00 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: GUI IDE need. FB DV is Flash Builder Design View. I don't think there is much FB code that is useful to the current teams building a Royale IDE. I don't know what the future of FB is, but I don't think there will be future releases. But some of the principles behind FB's DV, could be applied to live-editing in Royale and I think it would be better than having it in an IDE. Of course, I could be wrong... -Alex On 3/11/20, 10:04 AM, "Paul Stearns" wrote: Alex: Not to sound too ignorant, what is "FB DV?" What is Adobe doing with FlashBuilder? If they are deprecating Flash, what use do they have for FlashBuilder? That might be a good code base for a Royale GUI IDE. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 11:56 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: GUI IDE need. I hear what you are saying, but I am hopeful that we can build that into your app sort of like an automated testing plugin. Royale will eventually need to support other automated testing libraries and other code that "disappears at production". One of the reasons for having "beads" underneath the components is so that we can more easily add/remove helpful pieces of code to enhance productivity. IIRC, the FB DV was essentially running your app loaded into a DV Flex app. I am hopeful that Royale is set up so that you can essentially plug in DV functionality into your app (instead of wrapping it, which caused occasional issues in FB). -Alex On 3/11/20, 8:48 AM, "Paul Stearns" wrote: I think we will have to disagree on this. Three things (that I can think of quickly), which would be difficult without a GUI; I use quite regularly the alignment capabilities of the IDE, where I select multiple items and align right, left, bottom, middle , top & center. If I have 20 fields on a form I want to align I can't do it visually using the immediate display technique. Additionally when I am initially designing my form, the code may not be complete enough to be displayed in a browser. I will also often grab multiple items and move them around the screen, with their relative positions intact. Selecting multiple items and then modifying multiple properties for the selected items. Doing all of this manually is a waste of valuable developers time, and a step back into the dark ages. Yes having something that displays your changes in near real-time is better than nothing, but hardly a replacement for a good GUI IDE. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 11:19 AM To: "users@flex.apache.org" Subject: Re: GUI IDE need. On 3/11/20, 4:43 AM, "Olaf Krueger" wrote: Hi Paul, >If however you want to design highly usable business applications deployed to thin clients (to use an ancient phrase) you need GUI tools to be productive. Not agree. Modern JS frameworks are supporting "hot reload" (Royale not yet) which means the browser view is refreshing automatically after any code change/compilation... and depending on the framework and project, this just takes seconds or milliseconds. So, you see the results in near realtime instead of waiting for the compiler and restarting your app all the time. Hence my hope that someone will make live-editing of Royale MXML work. IMO, Any IDE DesignView equivalent that doesn't use a browser to render is going to have fidelity issues. Live-editing has the potential to be even better than hot-reload for some scenarios. Of course, I could be wrong... -Alex
Re: GUI IDE need.
Alex: Not to sound too ignorant, what is "FB DV?" What is Adobe doing with FlashBuilder? If they are deprecating Flash, what use do they have for FlashBuilder? That might be a good code base for a Royale GUI IDE. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 11:56 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: GUI IDE need. I hear what you are saying, but I am hopeful that we can build that into your app sort of like an automated testing plugin. Royale will eventually need to support other automated testing libraries and other code that "disappears at production". One of the reasons for having "beads" underneath the components is so that we can more easily add/remove helpful pieces of code to enhance productivity. IIRC, the FB DV was essentially running your app loaded into a DV Flex app. I am hopeful that Royale is set up so that you can essentially plug in DV functionality into your app (instead of wrapping it, which caused occasional issues in FB). -Alex On 3/11/20, 8:48 AM, "Paul Stearns" wrote: I think we will have to disagree on this. Three things (that I can think of quickly), which would be difficult without a GUI; I use quite regularly the alignment capabilities of the IDE, where I select multiple items and align right, left, bottom, middle , top & center. If I have 20 fields on a form I want to align I can't do it visually using the immediate display technique. Additionally when I am initially designing my form, the code may not be complete enough to be displayed in a browser. I will also often grab multiple items and move them around the screen, with their relative positions intact. Selecting multiple items and then modifying multiple properties for the selected items. Doing all of this manually is a waste of valuable developers time, and a step back into the dark ages. Yes having something that displays your changes in near real-time is better than nothing, but hardly a replacement for a good GUI IDE. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 11:19 AM To: "users@flex.apache.org" Subject: Re: GUI IDE need. On 3/11/20, 4:43 AM, "Olaf Krueger" wrote: Hi Paul, >If however you want to design highly usable business applications deployed to thin clients (to use an ancient phrase) you need GUI tools to be productive. Not agree. Modern JS frameworks are supporting "hot reload" (Royale not yet) which means the browser view is refreshing automatically after any code change/compilation... and depending on the framework and project, this just takes seconds or milliseconds. So, you see the results in near realtime instead of waiting for the compiler and restarting your app all the time. Hence my hope that someone will make live-editing of Royale MXML work. IMO, Any IDE DesignView equivalent that doesn't use a browser to render is going to have fidelity issues. Live-editing has the potential to be even better than hot-reload for some scenarios. Of course, I could be wrong... -Alex
Re: GUI IDE need.
I think we will have to disagree on this. Three things (that I can think of quickly), which would be difficult without a GUI; I use quite regularly the alignment capabilities of the IDE, where I select multiple items and align right, left, bottom, middle , top & center. If I have 20 fields on a form I want to align I can't do it visually using the immediate display technique. Additionally when I am initially designing my form, the code may not be complete enough to be displayed in a browser. I will also often grab multiple items and move them around the screen, with their relative positions intact. Selecting multiple items and then modifying multiple properties for the selected items. Doing all of this manually is a waste of valuable developers time, and a step back into the dark ages. Yes having something that displays your changes in near real-time is better than nothing, but hardly a replacement for a good GUI IDE. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/11/20 11:19 AM To: "users@flex.apache.org" Subject: Re: GUI IDE need. On 3/11/20, 4:43 AM, "Olaf Krueger" wrote: Hi Paul, >If however you want to design highly usable business applications deployed to thin clients (to use an ancient phrase) you need GUI tools to be productive. Not agree. Modern JS frameworks are supporting "hot reload" (Royale not yet) which means the browser view is refreshing automatically after any code change/compilation... and depending on the framework and project, this just takes seconds or milliseconds. So, you see the results in near realtime instead of waiting for the compiler and restarting your app all the time. Hence my hope that someone will make live-editing of Royale MXML work. IMO, Any IDE DesignView equivalent that doesn't use a browser to render is going to have fidelity issues. Live-editing has the potential to be even better than hot-reload for some scenarios. Of course, I could be wrong... -Alex
Re: GUI IDE need.
I believe we use view states a few modules which we wrote very early on. Once we started writing for production, we didn't see the utility in view states. Granular control was better handled in other ways. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/10/20 12:28 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: GUI IDE need. While it may be that someone offers a GUI IDE some day for Royale, there is are some other approaches, one that has been prototyped, and one that wasn't possible with Flash Player. IIRC, one prototype adds some things to your app that allow you to edit the x/y/width/height in your MXML and immediately see the results in the browser. The other approach is to write a bead that can track your MXML from the browser so you can use the browser tools to modify the UI and hit some button that will then update the MXML. There are some limitations to these approaches which is why none are available at this time. The main one is that use of view states greatly complicates these approaches (as it does for a GUI IDE as well). So one question for you, are you using view states (mx:State)? -Alex On 3/9/20, 8:26 PM, "Paul Stearns" wrote: Regarding a GUI IDE, in one application, one of the larger modules has 1,390 lines of mxml code. One of 10 tabs in that module has 29 enterable "fields" another tab has over 50 enterable fields. Attempting to create complex screens which are usable for the type of data entry these systems are used for would be difficult at best without using a GUI editor. If you are designing traditional web applications where everything is stacked and the user scrolls forever then yes you can do that without a GUI IDE. If however you want to design highly usable business applications deployed to thin clients (to use an ancient phrase) you need GUI tools to be productive. My initial test application (very simplistic) for Royale can be found here, be sure to click everything; (If something doesn't work as expected, let me know, no data is stored) https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fflex.yozyo.net%2FTestModule%2Fbin-release%2FMain.html%3Ftest%3D123=02%7C01%7Caharui%40adobe.com%7C2d118f114b934f5c2b7f08d7c4a2d308%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C637194075912239790=iA9Av%2FhjDmDmMqdRVgsb2wb33Eqq8G7VVpbQ1cQDJ%2Bg%3D=0 Some of the The features I am looking for include canvas with x/y placement of items, multiple panels up simultaneously, etc. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 6:14 PM To: users@flex.apache.org, Paul Stearns Subject: Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, many years ago I must say that was completely true, for that reason I started trying to introduce in my clients and projects Flash and AMF in early 2000, first with Flash authoring tool, then with MTASC (someone remember it? ;)), and then Flex was really what we just needed. That was very disruptive compared with the html/js/css stack at that time. Currently that's not true. Near 2020, js is like the bytecode in Flash and Royale is the current Flex. So it's clear that you don't need to go very "low level", but if you needed, you can do it! (and that's good). But Royale should allow you to develop without the need to go that route. and just use good proven patterns like Flex did. We're working towards that...and I think we're already got it. :) About GUI IDE, although I think is something very cool to have something like that, I abandoned that kind of tools many years ago. Maybe in the future I could be working in something like that, just for pleasure, but for now there's still many work to do in Royale in things more needed. Maybe others could drive that effort... But I really think the current Royale coding is very straight forward to do. As well examples like Tour De Jewel has a lot of code to see how things should be used and learn from it a lot of good practices. El lun., 9 mar. 2020 a las 22:48, Paul Stearns () escribió: > What attracted me to Flex initially was that it ran in its own > environment, completely separate from the html, web browser and their > multitude of DOMs. I used to write apps in ASP/HTML, and every other week a > new version of a browser would break something. > > For the type of applications I write & support, having a GUI IDE, a > defined language (like as3 & mxml) and an engine which which provides > consistent results across platforms are the most important features. At > this point the weakness I see in Royale is there isn't
Re: Flex web deployment...
Alex: Interesting idea. I would need to also figure out how to keep the myriad of SWF files which comprise the app up to date. Right now I depend on flash to get the latest version of a specific SWF file from the website. Browser caching is sometimes a problem. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 3/10/20 12:05 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Flex web deployment... Without thinking about this too much, I don't think it makes sense to change Flash Player. The browsers don't want to allow it as a plugin. I don't know what it would take to duplicate however Java runs something it downloads to launch an AIR app. It would be interesting to see if you could create a Java wrapper that launches an AIR app. -Alex On 3/9/20, 2:26 PM, "Paul Stearns" wrote: Yes 5 was a typo. Should have been; Why couldn't Adobe/Harman changed Flash to use the methodology Java uses for deployment? For example I have a number of Java applications I use, "Mirth Connect" comes to mind, where you access it through a browser, but Mirth Connect is just really downloading a Java App, and running it. Another web loaded Java application I use includes iDrac from Dell. Since my applications are mostly self contained, this would work great for me. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Frost, Andrew" Sent: 3/9/20 4:59 PM To: "users@flex.apache.org" Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Responding to a few of these: 1) what's the actual support of Adobe for Flash Player, or if it will left to Harman as part of the AIR deal [AF] Yes we have certain rights around the licensing of Flash Player, as we have had since the days of the OSP many years ago! but there are limitations to this :-) 2) Flash will be just present on AIR [AF] This is where we need to clarify terminology: "Flash" as a rendering engine and ActionScript VM, yes it's in AIR. "Flash Player" as a browser plug-in, no that's not in AIR and hasn't been for several years. 3) donating to Apache has no sense at all, since Flash Player has many licensed closed source parts that can't be open source [AF] Yes sadly this is very much true.. 4) Browser vendors are closing plugin doors [AF] and this is the crux of it. Doesn't matter if you're looking at Flash, Java, Silverlight, whatever .. plug-ins aren't going to be a viable solution longer term.. 5) Why couldn't Adobe/Harman changed Flash to use the methodology Flash uses for deployment? [AF] I'm assuming there's a typo, not quite sure what's meant, but the real issue is deployment via the web. If you can deploy a standalone application, then you can continue to use workarounds here, but if you need the app to be accessed via a standard browser then your best bet (for a Flex app) is likely to be Royale :-) thanks Andrew -Original Message- From: Paul Stearns Sent: 09 March 2020 19:47 To: Carlos Rovira ; users@flex.apache.org Subject: [EXTERNAL] Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? I am investing Royale, but haven't seen any results yet. I am showing my ignorance here, but, my confusion is, will Java still be deployable via web browsers? If so, what is the difference between using a web browser to deploy a Java app, and a Flash app? Why couldn't Adobe/Harmon changed Flash to use the methodology Flash uses for deployment? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 ---- From: Carlos Rovira Sent: 3/9/20 3:31 PM To: users@flex.apache.org, Paul Stearns Subject: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, must say don't know what's the actual support of Adobe for Flash Player, or if it will left to Harman as part of the AIR deal, maybe Andrew can give some light on this. Since Flash will be just present on AIR, and not in any other place, that could have sense. But that will mean more maintenance effort and people needed by Harman. Anyway, donating to Apache has no sense at all, since Flash Player has many licensed closed source parts that can't be open source, or at least that's what they always says. But again...donating Flash Player and making it OS, if it could be something doable at some point (let's go utopic ;), does not change anything, since Browser vendors are closing plugin doors. So even in that case, it continue to be a death end. I think Apache Royale is this days in a very good shape, and is better each day... so I maybe people should give a try a
GUI IDE need.
Regarding a GUI IDE, in one application, one of the larger modules has 1,390 lines of mxml code. One of 10 tabs in that module has 29 enterable "fields" another tab has over 50 enterable fields. Attempting to create complex screens which are usable for the type of data entry these systems are used for would be difficult at best without using a GUI editor. If you are designing traditional web applications where everything is stacked and the user scrolls forever then yes you can do that without a GUI IDE. If however you want to design highly usable business applications deployed to thin clients (to use an ancient phrase) you need GUI tools to be productive. My initial test application (very simplistic) for Royale can be found here, be sure to click everything; (If something doesn't work as expected, let me know, no data is stored) http://flex.yozyo.net/TestModule/bin-release/Main.html?test=123 Some of the The features I am looking for include canvas with x/y placement of items, multiple panels up simultaneously, etc. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 6:14 PM To: users@flex.apache.org, Paul Stearns Subject: Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, many years ago I must say that was completely true, for that reason I started trying to introduce in my clients and projects Flash and AMF in early 2000, first with Flash authoring tool, then with MTASC (someone remember it? ;)), and then Flex was really what we just needed. That was very disruptive compared with the html/js/css stack at that time. Currently that's not true. Near 2020, js is like the bytecode in Flash and Royale is the current Flex. So it's clear that you don't need to go very "low level", but if you needed, you can do it! (and that's good). But Royale should allow you to develop without the need to go that route. and just use good proven patterns like Flex did. We're working towards that...and I think we're already got it. :) About GUI IDE, although I think is something very cool to have something like that, I abandoned that kind of tools many years ago. Maybe in the future I could be working in something like that, just for pleasure, but for now there's still many work to do in Royale in things more needed. Maybe others could drive that effort... But I really think the current Royale coding is very straight forward to do. As well examples like Tour De Jewel has a lot of code to see how things should be used and learn from it a lot of good practices. El lun., 9 mar. 2020 a las 22:48, Paul Stearns () escribió: > What attracted me to Flex initially was that it ran in its own > environment, completely separate from the html, web browser and their > multitude of DOMs. I used to write apps in ASP/HTML, and every other week a > new version of a browser would break something. > > For the type of applications I write & support, having a GUI IDE, a > defined language (like as3 & mxml) and an engine which which provides > consistent results across platforms are the most important features. At > this point the weakness I see in Royale is there isn't a GUI IDE, and since > it doesn't have its own engine, it relies on the vicissitudes of javascript > and how the particular browser it is running in implements its DOM. > > This is why I shied away from .NET, and PHP in the past except for more > traditional websites with a bit of user interaction. Javascript frameworks > just hide the ugliness, they don't make it go away. > > Having said all of the above, I am taking a chance on Royale to see what > the level of effort will be to convert to it. > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > > From: Carlos Rovira > Sent: 3/9/20 4:55 PM > To: Paul Stearns > Cc: users@flex.apache.org > Subject: Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? > Hi Paul, > > I suppose you refer to Java Applets, hope other could give more info about > this, but although you're in part right, I think Flash Player is more well > integrated in Browsers and Applets never had the power of Flash. But it's > ok, you can enable in browsers... anyway, we 're in 2020 and seems things > will continue its course, so nothing we can do to revert that. > > I always be a great advocate of the Flash platform, but I found in Royale > something better that what we had with Flash. IMHO, we have the best of > both worlds. From Flex/Flash I wanted the "development productivity", > languages (AS3, MXML), compiler, AMF, and many other things
Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1?
What attracted me to Flex initially was that it ran in its own environment, completely separate from the html, web browser and their multitude of DOMs. I used to write apps in ASP/HTML, and every other week a new version of a browser would break something. For the type of applications I write & support, having a GUI IDE, a defined language (like as3 & mxml) and an engine which which provides consistent results across platforms are the most important features. At this point the weakness I see in Royale is there isn't a GUI IDE, and since it doesn't have its own engine, it relies on the vicissitudes of javascript and how the particular browser it is running in implements its DOM. This is why I shied away from .NET, and PHP in the past except for more traditional websites with a bit of user interaction. Javascript frameworks just hide the ugliness, they don't make it go away. Having said all of the above, I am taking a chance on Royale to see what the level of effort will be to convert to it. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 4:55 PM To: Paul Stearns Cc: users@flex.apache.org Subject: Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, I suppose you refer to Java Applets, hope other could give more info about this, but although you're in part right, I think Flash Player is more well integrated in Browsers and Applets never had the power of Flash. But it's ok, you can enable in browsers... anyway, we 're in 2020 and seems things will continue its course, so nothing we can do to revert that. I always be a great advocate of the Flash platform, but I found in Royale something better that what we had with Flash. IMHO, we have the best of both worlds. From Flex/Flash I wanted the "development productivity", languages (AS3, MXML), compiler, AMF, and many other things. From web I always liked things like CSS (that's far superior than what we had in Flex for sure), and the fact that we are not constraint to a plugin and a sandbox, so it's more easy to do things for the web. We have both combined now in Royale, and that's for me amazing. As we get components with clear API definitions, and access to latest browsers features, we are getting the same productivity that we had in Flex, and as well we are removing the complexity in Browsers where you need to test in each browsers or lost time solving browser compatibility problems. We finally can have things like IoC (Inversion of Control), DI (Dependency Injection), Metadata, MXML, Routing (Deep Linking), LocalStorage (like old Local SharedObject), just to name a few. But even more, since the bead/strand Arquitecture is really powerful, and Apps build with royale are more easy to build that even was in Royale. And the most important: Performance: The apps built with Royale has an outstanding performance. Apps migrated from Flex use to be many XX% faster in Royale. I must say, I'm very happy with what we're getting with Apache Royale :) Carlos El lun., 9 mar. 2020 a las 20:46, Paul Stearns () escribió: > I am investing Royale, but haven't seen any results yet. > > I am showing my ignorance here, but, my confusion is, will Java still be > deployable via web browsers? If so, what is the difference between using a > web browser to deploy a Java app, and a Flash app? > > Why couldn't Adobe/Harmon changed Flash to use the methodology Flash uses > for deployment? > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > -- > *From*: Carlos Rovira > *Sent*: 3/9/20 3:31 PM > *To*: users@flex.apache.org, Paul Stearns > *Subject*: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? > Hi Paul, > > must say don't know what's the actual support of Adobe for Flash Player, > or if it will left to Harman as part of the AIR deal, maybe Andrew can give > some light on this. Since Flash will be just present on AIR, and not in any > other place, that could have sense. But that will mean more maintenance > effort and people needed by Harman. > > Anyway, donating to Apache has no sense at all, since Flash Player has > many licensed closed source parts that can't be open source, or at least > that's what they always says. But again...donating Flash Player and making > it OS, if it could be something doable at some point (let's go utopic ;), > does not change anything, since Browser vendors are closing plugin doors. > So even in that case, it continue to be a death end. > > I think Apache Royale is this days in a very good shape, and is better > each day... so I maybe people should give a try and c
Flex web deployment...
Yes 5 was a typo. Should have been; Why couldn't Adobe/Harman changed Flash to use the methodology Java uses for deployment? For example I have a number of Java applications I use, "Mirth Connect" comes to mind, where you access it through a browser, but Mirth Connect is just really downloading a Java App, and running it. Another web loaded Java application I use includes iDrac from Dell. Since my applications are mostly self contained, this would work great for me. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: "Frost, Andrew" Sent: 3/9/20 4:59 PM To: "users@flex.apache.org" Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Responding to a few of these: 1) what's the actual support of Adobe for Flash Player, or if it will left to Harman as part of the AIR deal [AF] Yes we have certain rights around the licensing of Flash Player, as we have had since the days of the OSP many years ago! but there are limitations to this :-) 2) Flash will be just present on AIR [AF] This is where we need to clarify terminology: "Flash" as a rendering engine and ActionScript VM, yes it's in AIR. "Flash Player" as a browser plug-in, no that's not in AIR and hasn't been for several years. 3) donating to Apache has no sense at all, since Flash Player has many licensed closed source parts that can't be open source [AF] Yes sadly this is very much true.. 4) Browser vendors are closing plugin doors [AF] and this is the crux of it. Doesn't matter if you're looking at Flash, Java, Silverlight, whatever .. plug-ins aren't going to be a viable solution longer term.. 5) Why couldn't Adobe/Harman changed Flash to use the methodology Flash uses for deployment? [AF] I'm assuming there's a typo, not quite sure what's meant, but the real issue is deployment via the web. If you can deploy a standalone application, then you can continue to use workarounds here, but if you need the app to be accessed via a standard browser then your best bet (for a Flex app) is likely to be Royale :-) thanks Andrew -Original Message- From: Paul Stearns Sent: 09 March 2020 19:47 To: Carlos Rovira ; users@flex.apache.org Subject: [EXTERNAL] Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? I am investing Royale, but haven't seen any results yet. I am showing my ignorance here, but, my confusion is, will Java still be deployable via web browsers? If so, what is the difference between using a web browser to deploy a Java app, and a Flash app? Why couldn't Adobe/Harmon changed Flash to use the methodology Flash uses for deployment? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 3:31 PM To: users@flex.apache.org, Paul Stearns Subject: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, must say don't know what's the actual support of Adobe for Flash Player, or if it will left to Harman as part of the AIR deal, maybe Andrew can give some light on this. Since Flash will be just present on AIR, and not in any other place, that could have sense. But that will mean more maintenance effort and people needed by Harman. Anyway, donating to Apache has no sense at all, since Flash Player has many licensed closed source parts that can't be open source, or at least that's what they always says. But again...donating Flash Player and making it OS, if it could be something doable at some point (let's go utopic ;), does not change anything, since Browser vendors are closing plugin doors. So even in that case, it continue to be a death end. I think Apache Royale is this days in a very good shape, and is better each day... so I maybe people should give a try and consider it as an option for the future. Thanks El lun., 9 mar. 2020 a las 20:04, Paul Stearns () escribió: Has Adobe stopped supporting it, and has not turned it over to Apache? Now that is just unconscionable. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 1:28 PM To: users@flex.apache.org, Paul Stearns Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, not bad idea, but don't know a browser that will support Flash, and the problem is Adobe is stopping supporting flash player as a plugin, so I'm afraid that's not possible. El lun., 9 mar. 2020 a las 17:40, Paul Stearns () escribió: > Better yet, how about supporting a browser whose main feature is the > support of Flex? > > My applications are 99.9% flex. The main things I use the browser for > is application deployment, file upload/d
Re: [Spam] :Re: Flex 4.16.1 broken for AIR33.1?
I am investing Royale, but haven't seen any results yet. I am showing my ignorance here, but, my confusion is, will Java still be deployable via web browsers? If so, what is the difference between using a web browser to deploy a Java app, and a Flash app? Why couldn't Adobe/Harmon changed Flash to use the methodology Flash uses for deployment? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 3:31 PM To: users@flex.apache.org, Paul Stearns Subject: [Spam] :Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, must say don't know what's the actual support of Adobe for Flash Player, or if it will left to Harman as part of the AIR deal, maybe Andrew can give some light on this. Since Flash will be just present on AIR, and not in any other place, that could have sense. But that will mean more maintenance effort and people needed by Harman. Anyway, donating to Apache has no sense at all, since Flash Player has many licensed closed source parts that can't be open source, or at least that's what they always says. But again...donating Flash Player and making it OS, if it could be something doable at some point (let's go utopic ;), does not change anything, since Browser vendors are closing plugin doors. So even in that case, it continue to be a death end. I think Apache Royale is this days in a very good shape, and is better each day... so I maybe people should give a try and consider it as an option for the future. Thanks El lun., 9 mar. 2020 a las 20:04, Paul Stearns () escribió: Has Adobe stopped supporting it, and has not turned it over to Apache? Now that is just unconscionable. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 1:28 PM To: users@flex.apache.org, Paul Stearns Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, not bad idea, but don't know a browser that will support Flash, and the problem is Adobe is stopping supporting flash player as a plugin, so I'm afraid that's not possible. El lun., 9 mar. 2020 a las 17:40, Paul Stearns () escribió: > Better yet, how about supporting a browser whose main feature is the > support of Flex? > > My applications are 99.9% flex. The main things I use the browser for is > application deployment, file upload/download and displaying PDF files.. > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > > From: Carlos Rovira > Sent: 3/9/20 10:09 AM > To: users@flex.apache.org > Subject: Re: Flex 4.16.1 broken for AIR33.1? > Hi Andrew, > > When Dec, 31th arrives, Flex will be out of browsers, so just allowed using > AIR. Maybe AIR could have an option to bundle Apache Flex with each version > that ensures all work right. I mean, in 2021, Apache Flex will not have > sense with AIR right? so why not to think in something that ease even more > AIR+Flex marriage? Of course a version without Flex should have sense too > for people that does not use Flex at all. > > Make that sense? > > Thanks > > Carlos > > El lun., 9 mar. 2020 a las 14:45, Frost, Andrew () > escribió: > > > Hi > > > > We'd be happy to add things like this geometry API change - but it's then > > going to be version-dependent so it would need to be compiled against the > > later AIR SDK and would only run on the later AIR runtime.. > > > > I'm not sure whether there are other changes that would really impact the > > Flex SDK itself. So perhaps we can consider these on a case-by-case > basis. > > > > The one thing I keep coming back to though, is that it seems to be a very > > painful process for (a) people to download and start using a new AIR SDK, > > and (b) people who then have to combine a Flex SDK with an AIR SDK! So we > > should perhaps address this in the first instance (and from our QA folk, > > having a simple way to ensure you get back to a clean version of one/both > > of these SDKs would be good too!) > > > > Any other thoughts on missing features or things that would be useful, > > please send them in! > > > > thanks > > > > Andrew > > > > > > -Original Message- > > From: Piotr Zarzycki > > Sent: 09 March 2020 13:01 > > To: users@flex.apache.org > > Subject: [EXTERNAL] Re: Flex 4.16.1 broken for AIR33.1? > > > > Hi Andrew, > > > > This
Re: Flex 4.16.1 broken for AIR33.1?
Has Adobe stopped supporting it, and has not turned it over to Apache? Now that is just unconscionable. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 1:28 PM To: users@flex.apache.org, Paul Stearns Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Paul, not bad idea, but don't know a browser that will support Flash, and the problem is Adobe is stopping supporting flash player as a plugin, so I'm afraid that's not possible. El lun., 9 mar. 2020 a las 17:40, Paul Stearns () escribió: > Better yet, how about supporting a browser whose main feature is the > support of Flex? > > My applications are 99.9% flex. The main things I use the browser for is > application deployment, file upload/download and displaying PDF files.. > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > > From: Carlos Rovira > Sent: 3/9/20 10:09 AM > To: users@flex.apache.org > Subject: Re: Flex 4.16.1 broken for AIR33.1? > Hi Andrew, > > When Dec, 31th arrives, Flex will be out of browsers, so just allowed using > AIR. Maybe AIR could have an option to bundle Apache Flex with each version > that ensures all work right. I mean, in 2021, Apache Flex will not have > sense with AIR right? so why not to think in something that ease even more > AIR+Flex marriage? Of course a version without Flex should have sense too > for people that does not use Flex at all. > > Make that sense? > > Thanks > > Carlos > > El lun., 9 mar. 2020 a las 14:45, Frost, Andrew () > escribió: > > > Hi > > > > We'd be happy to add things like this geometry API change - but it's then > > going to be version-dependent so it would need to be compiled against the > > later AIR SDK and would only run on the later AIR runtime.. > > > > I'm not sure whether there are other changes that would really impact the > > Flex SDK itself. So perhaps we can consider these on a case-by-case > basis. > > > > The one thing I keep coming back to though, is that it seems to be a very > > painful process for (a) people to download and start using a new AIR SDK, > > and (b) people who then have to combine a Flex SDK with an AIR SDK! So we > > should perhaps address this in the first instance (and from our QA folk, > > having a simple way to ensure you get back to a clean version of one/both > > of these SDKs would be good too!) > > > > Any other thoughts on missing features or things that would be useful, > > please send them in! > > > > thanks > > > > Andrew > > > > > > -Original Message- > > From: Piotr Zarzycki > > Sent: 09 March 2020 13:01 > > To: users@flex.apache.org > > Subject: [EXTERNAL] Re: Flex 4.16.1 broken for AIR33.1? > > > > Hi Andrew, > > > > This kind of situation may occur more often in the future if Air would > > have more and more features. Is there any plan to someone from your Team > > simply add missing stuff to Flex? Any thoughts on this approach? > > > > Thanks, > > Piotr > > > > On Mon, Mar 9, 2020, 1:49 PM Frost, Andrew > > wrote: > > > > > Hi Olaf > > > > > > > I think it would be nice if any AIR updates would be compatible with > > > > the > > > latest Flex SDK > > > Yes completely agree, this was an error on our part to not consider > > > the fact that overrides of the APIs that we were changing would have > > > been affected. The changes were reverted, and we have re-implemented > > > the new functionality within additional APIs/methods so that existing > > > apps will now compile/run without any changes on the 33.1.1.63 release. > > > > > > We definitely intend that there is still full compatibility between > > > Flex and any changes we make with AIR.. so thanks to leokan23 and Alex > > > for bringing this to our attention! > > > > > > thanks > > > > > > Andrew > > > > > > > > > -Original Message- > > > From: Olaf Krueger > > > Sent: 06 March 2020 20:30 > > > To: users@flex.apache.org > > > Subject: [EXTERNAL] RE: Flex 4.16.1 broken for AIR33.1? > > > > > > Hi, > > > > > > I didn't follow the entire discussion, but I'd like to mention that I > > > am not sure if we still have enough volunteers which are willing to > > > work on a new Flex release. > > > > > > That said, I think it would be nice if any AIR updates would be > > > compatible with the latest Flex SDK... as long as it's possible. > > > > > > Thanks, > > > Olaf > > > > > > > > > > > > -- > > > Sent from: > > > https://clicktime.symantec.com/3T23VtMr4Dz6j6DqBbgaf5T7Vc?u=http%3A%2F > > > %2Fapache-flex-users.246.n4.nabble.com%2F > > > > > > > -- > Carlos Rovira > http://about.me/carlosrovira > > > -- Carlos Rovira http://about.me/carlosrovira
Re: Flex 4.16.1 broken for AIR33.1?
Better yet, how about supporting a browser whose main feature is the support of Flex? My applications are 99.9% flex. The main things I use the browser for is application deployment, file upload/download and displaying PDF files.. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 3/9/20 10:09 AM To: users@flex.apache.org Subject: Re: Flex 4.16.1 broken for AIR33.1? Hi Andrew, When Dec, 31th arrives, Flex will be out of browsers, so just allowed using AIR. Maybe AIR could have an option to bundle Apache Flex with each version that ensures all work right. I mean, in 2021, Apache Flex will not have sense with AIR right? so why not to think in something that ease even more AIR+Flex marriage? Of course a version without Flex should have sense too for people that does not use Flex at all. Make that sense? Thanks Carlos El lun., 9 mar. 2020 a las 14:45, Frost, Andrew () escribió: > Hi > > We'd be happy to add things like this geometry API change - but it's then > going to be version-dependent so it would need to be compiled against the > later AIR SDK and would only run on the later AIR runtime.. > > I'm not sure whether there are other changes that would really impact the > Flex SDK itself. So perhaps we can consider these on a case-by-case basis. > > The one thing I keep coming back to though, is that it seems to be a very > painful process for (a) people to download and start using a new AIR SDK, > and (b) people who then have to combine a Flex SDK with an AIR SDK! So we > should perhaps address this in the first instance (and from our QA folk, > having a simple way to ensure you get back to a clean version of one/both > of these SDKs would be good too!) > > Any other thoughts on missing features or things that would be useful, > please send them in! > > thanks > > Andrew > > > -Original Message- > From: Piotr Zarzycki > Sent: 09 March 2020 13:01 > To: users@flex.apache.org > Subject: [EXTERNAL] Re: Flex 4.16.1 broken for AIR33.1? > > Hi Andrew, > > This kind of situation may occur more often in the future if Air would > have more and more features. Is there any plan to someone from your Team > simply add missing stuff to Flex? Any thoughts on this approach? > > Thanks, > Piotr > > On Mon, Mar 9, 2020, 1:49 PM Frost, Andrew > wrote: > > > Hi Olaf > > > > > I think it would be nice if any AIR updates would be compatible with > > > the > > latest Flex SDK > > Yes completely agree, this was an error on our part to not consider > > the fact that overrides of the APIs that we were changing would have > > been affected. The changes were reverted, and we have re-implemented > > the new functionality within additional APIs/methods so that existing > > apps will now compile/run without any changes on the 33.1.1.63 release. > > > > We definitely intend that there is still full compatibility between > > Flex and any changes we make with AIR.. so thanks to leokan23 and Alex > > for bringing this to our attention! > > > > thanks > > > > Andrew > > > > > > -Original Message- > > From: Olaf Krueger > > Sent: 06 March 2020 20:30 > > To: users@flex.apache.org > > Subject: [EXTERNAL] RE: Flex 4.16.1 broken for AIR33.1? > > > > Hi, > > > > I didn't follow the entire discussion, but I'd like to mention that I > > am not sure if we still have enough volunteers which are willing to > > work on a new Flex release. > > > > That said, I think it would be nice if any AIR updates would be > > compatible with the latest Flex SDK... as long as it's possible. > > > > Thanks, > > Olaf > > > > > > > > -- > > Sent from: > > https://clicktime.symantec.com/3T23VtMr4Dz6j6DqBbgaf5T7Vc?u=http%3A%2F > > %2Fapache-flex-users.246.n4.nabble.com%2F > > > -- Carlos Rovira http://about.me/carlosrovira
Firefox not handling session variables well when new window called from Flex.
Rather than regurgitate everything I posted on Stack Over Flow, here is a link; https://stackoverflow.com/questions/59727851/using-window-open-equivalent-in-firefox-causes-net-session-variables-to-go-away The problem appears to be when I use; navigateToURL(url, "_blank");with a "POST" my .NET session variables disappear. It only seems to happen in FF and only with POST, not GET. When I do this the "SessionID changes, and all .NET session variables are lost, and the POST variables never get to the page I am opening. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Future proof Flex/Flash apps.
Alex: Is there a place someone could go and just see TourDeFlex run, without downloading, and building it? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 10/20/19 6:14 PM To: "users@flex.apache.org" Cc: "d...@royale.apache.org" Subject: Re: Future proof Flex/Flash apps. The new url/domain is: http://apacheroyaleci2.westus2.cloudapp.azure.com:8080 The old one was: http://apacheroyaleci.westus2.cloudapp.azure.com:8080 -Alex On 10/20/19, 9:14 AM, "Carlos Rovira" wrote: Hi Alex, as I said I don't know too much about what happened. There's other url? if so I can update website with the current ones. Don't think we need to get the older one. Just need to know new pairs of : Old URL - New URL, so I can search in website and substitute all that ones. Thanks El sáb., 19 oct. 2019 a las 3:36, Alex Harui () escribió: > I did not see anyone respond in a way that indicated that I should try to > get the old URL back, so I have not made that request. > > -Alex > > On 10/18/19, 1:59 AM, "Carlos Rovira" wrote: > > Hi Julien, > > we have currently a problem with that server and I think Alex Harui is > trying to contact Azure to get the same url. > Maybe Alex can bring more light on this. > > Thanks > > > > El jue., 17 oct. 2019 a las 11:34, Julien Desquenne (< > jdesque...@polyedre.fr>) > escribió: > > > Hello, > > > > Very interesting discussion. > > > > By the way, the link for Tour de Flex compiled with Apache Royale > > doesn't seem to work: > > > > > > > https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapacheroyaleci.westus2.cloudapp.azure.com%3A8080%2Fjob%2FTourDeFlexMigration%2FlastSuccessfulBuild%2Fartifact%2Fexamples%2Fmxroyale%2Ftourdeflexmodules%2Fbin%2Fjs-debug%2Findex.html=02%7C01%7Caharui%40adobe.com%7C5d7cabb784a84c8d263c08d7557892ce%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637071848667962231=btgY4bqgjXdMZml1jOlnWA0NsIRvYo3%2Fkz7y7S9NDCE%3D=0 > > > > Any other link ? > > > > Thanks > > > > > -- > Carlos Rovira > > https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira=02%7C01%7Caharui%40adobe.com%7C5d7cabb784a84c8d263c08d7557892ce%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637071848667962231=1nztqFe2FlAyt0ahikYQZG230MmuEDrbY9aj2v%2B66%2B4%3D=0 > > > -- Carlos Rovira https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira=02%7C01%7Caharui%40adobe.com%7C5d7cabb784a84c8d263c08d7557892ce%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637071848667962231=1nztqFe2FlAyt0ahikYQZG230MmuEDrbY9aj2v%2B66%2B4%3D=0
Re: Future proof Flex/Flash apps.
Carlos: The applications we have written really do want to be desktop applications. Having a small subset of functionality for mobile use would be beneficial for a few of the applications we support. Mostly however these are data entry focused applications. One of the applications captures over 200 data elements in a single data entry screen with complex business rules, using a tabbed interface. With Royale, I have some questions/concerns; Will it be around for 10 years?How many users/companies have adopted Royale?Are there any applications, perhaps with similar look & feel.as what this app shows, already functional in Royale? If not similar, at least some applications I can see and touch.I use FluorineFX as my data layer interface. Will that be transportable? Thanks for your help. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Carlos Rovira Sent: 10/12/19 4:48 AM To: "pa...@compuace.com" , users@flex.apache.org Subject: Re: Future proof Flex/Flash apps. Hi Paul, as Alex I think your best route is to join us in Apache Royale mailing lists [1] and try emulation components. This will be the fastest way to migrate to html/js touching almost no code. Royale is now in a very good state for everyone to start using it. I encourage you to join our community and get started here [2] [1] https://royale.apache.org/mailing-lists/ [2] https://apache.github.io/royale-docs/get-started best El sáb., 12 oct. 2019 a las 8:56, Alex Harui () escribió: > From 3 minutes of playing around with it, if you are looking to minimize > code changes and don't want a more modern UI, then the emulation component > set (MXRoyale and SparkRoyale) would be a good place to start. The > emulation set is still a work-in-progress, but it gets better every day, > and, IMO, it would be better for the Royale community if you could invest > some of the time saved from not having to change so much code towards > further improving MXRoyale and SparkRoyale as that will make the migration > effort easier for the next person. > > My 2 cents, > -Alex > > On 10/11/19, 3:21 PM, "Paul Stearns" wrote: > > So that I could get better feed back on which route I should take, I > have created a demo version of one of my applications. > > This is a time accounting application which we developed and use > internally to keep track of hours to pay consultants and bill clients. > > The URL is > https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fflex.yozyo.net%2Fproduction=02%7C01%7Caharui%40adobe.com%7C4a2af1131ac649033a3108d74e996a26%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C637064293129036355=FQ0%2BwXpZSL%2FqNwOXZRp6zQFSYiBrmFdVYgl1gAdSaGc%3D=0 > > To login, you can use either; > > U: dmanager > P: mpassword > > U:duser > P:UPASSWORD > > It requires popups to be enabled. The application provides a self > contained desktop like application with the ability to have multiple panels > open simultaneously. While this is a test system, and you are welcome to > muck about and save data please don't intentionally try to break it. > > My goal is to end up with an application with a similar look and feel > to what is provided using something that won't die in December 2020. Of > course the less work to get from here to there will be the best approach. > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > > > > -- Carlos Rovira http://about.me/carlosrovira
Re: Future proof Flex/Flash apps.
So that I could get better feed back on which route I should take, I have created a demo version of one of my applications. This is a time accounting application which we developed and use internally to keep track of hours to pay consultants and bill clients. The URL is http://flex.yozyo.net/production To login, you can use either; U: dmanager P: mpassword U:duser P:UPASSWORD It requires popups to be enabled. The application provides a self contained desktop like application with the ability to have multiple panels open simultaneously. While this is a test system, and you are welcome to muck about and save data please don't intentionally try to break it. My goal is to end up with an application with a similar look and feel to what is provided using something that won't die in December 2020. Of course the less work to get from here to there will be the best approach. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: Flattening a nested array of asymetrical depth
Recursion is most likely the answer, however, if you could define the structure a little better it would be easier to help. Showing a little code that defines the structure would be best. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Tucsonjhall Sent: 10/10/19 11:05 AM To: users@flex.apache.org Subject: Flattening a nested array of asymetrical depth I'm working with nested arrays of divisions in sports and need to flatten a nested array of divisions and subdivisions to find all instances of "division." I've been stumped how to recurse that structure so that I'm sure I traverse all branches of the array without arbitrarily setting a limit of how deep I will go searching for children. Suggestions on a script that should flatten any array of objects with children? Thanks! -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Future proof Flex/Flash apps.
Greg: Thanks for taking the time to reply. The applications are as close to being a desktop self contained application as we could make them. The only reason for being a browser based app is that it made installs and deployment of changes & enhancements a non issue. AIR might be an option. What is the level of difficulty of setting up "automatic" upgrade deployment using AIR? I would like to have SWF files be recognized as being out of date and automatically downloaded. The current system uses ModuleLoader to place "programs" on the users "screen." When in the environment it looks very much like an old menu based .NET desktop application (only prettier). Paul From: Greg Dove Sent: 9/9/19 3:14 PM To: users@flex.apache.org Subject: Re: Future proof Flex/Flash apps. Hi Paul, ' The applications will continue to be desktop applications, with no portable/tablet interface required. ' It was not entirely clear to me whether they will continue to be *web* 'desktop' applications? If not, one (relatively) quick option is to convert the existing code to installable desktop applications built with AIR. Otherwise if you are continuing to target the browser, the most direct way to get to where you want to be is via Apache Royale. Although I am not aware at this point of anyone using Apache Royale specifically with FlourineFX, AMF remoting works (in the imminent 0.9.6 release) and it has been used in at least one app that has been in production use for a number of months already. In terms of support, one option is that Royale has page where you can contact directly with some companies or individual developers. [1] [1] https://royale.apache.org/royale-commercial-support/ On Tue, Sep 10, 2019 at 5:35 AM Paul Stearns wrote: > Who would be able to help me assess which way to go to future proof Flex > apps? > > We have 4 Flex (currently compiled with 3.6 SDK) applications which are > fully integrated with a FluorineFX/VB middle tier and Oracle DB tier. They > currently run in browser based Flash with very little interaction with the > browser. The applications will continue to be desktop applications, with no > portable/tablet interface required. > > It appears we will need to do something prior to the end of 2020. > > One of the applications which uses the framework created in house is a > Time Accounting System (TAS) which we could make available to anyone > interested in helping us figure the easiest approach to maintain as much of > the user interface as possible while minimizing the conversion effort. > > The applications have the look and feel of a desktop application with the > flexibility of web deployment. A screenshot of the TAS system is attached. > > >
Re: Future proof Flex/Flash apps.
Mark: It seems to have been stripped. I will get a working site up with dummy data soon, and send the link. Paul From: mark goldin Sent: 9/9/19 2:23 PM To: pa...@compuace.com.invalid Cc: "users@flex.apache.org" Subject: Re: Future proof Flex/Flash apps. Dont see screenshot. On Mon, Sep 9, 2019 at 12:35 PM Paul Stearns wrote: > Who would be able to help me assess which way to go to future proof Flex > apps? > > We have 4 Flex (currently compiled with 3.6 SDK) applications which are > fully integrated with a FluorineFX/VB middle tier and Oracle DB tier. They > currently run in browser based Flash with very little interaction with the > browser. The applications will continue to be desktop applications, with no > portable/tablet interface required. > > It appears we will need to do something prior to the end of 2020. > > One of the applications which uses the framework created in house is a > Time Accounting System (TAS) which we could make available to anyone > interested in helping us figure the easiest approach to maintain as much of > the user interface as possible while minimizing the conversion effort. > > The applications have the look and feel of a desktop application with the > flexibility of web deployment. A screenshot of the TAS system is attached. > > >
Future proof Flex/Flash apps.
Who would be able to help me assess which way to go to future proof Flex apps?We have 4 Flex (currently compiled with 3.6 SDK) applications which are fully integrated with a FluorineFX/VB middle tier and Oracle DB tier. They currently run in browser based Flash with very little interaction with the browser. The applications will continue to be desktop applications, with no portable/tablet interface required.It appears we will need to do something prior to the end of 2020.One of the applications which uses the framework created in house is a Time Accounting System (TAS) which we could make available to anyone interested in helping us figure the easiest approach to maintain as much of the user interface as possible while minimizing the conversion effort.The applications have the look and feel of a desktop application with the flexibility of web deployment. A screenshot of the TAS system is attached.
Re: Porting Flex/AIR to the web
I am also searching for alternatives for 3 complex apps, and 1 minor app using similar code bases. I need data entry widgets grids, etc. from Flex 3.x (pre spark). I use FlouruneFX to talk to the middle tier. From: bilbosax Sent: 4/3/19 8:23 PM To: users@flex.apache.org Subject: Re: Porting Flex/AIR to the web Is Royale the same as FlexJS??? How far along are these web conversions of AS3 and MXML? Mine are business apps, not games, so I don't need advanced 3D technologies or do any tweening or any heavy graphics work. But my app does need things like Lists, Grids, ArrayCollections, Images, fast AMF communication with databases, etc. Do these technologies cover most of these bases? -- Sent from: http://apache-flex-users.246.n4.nabble.com/
Re: Profiling
Alex: Is there an analogous section of code for 3.5 I can go look at? If so where can I find it? From: Alex Harui Sent: 2/11/19 10:05 PM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: Profiling Re-adding users@ Please figure out why the ML keeps getting dropped. I forgot you are using 3.x From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Monday, February 11, 2019 at 6:56 PM To: Alex Harui Subject: Re: Profiling Alex: I had tried that, but INavigatorContent is not found. I tried to manually add; import mx.core.INavigatorContent; That didn't help either. Perhaps it is called something different in v3.6? Try: var containerChild:Container = tn.getChildAt(i) as Container; containerChild.createComponentsFromDescriptors(); From: Alex Harui Sent: 2/11/19 7:39 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Profiling If you have a TabNavigator in a variable/id "tn", Then you should be able to write: var containerChild:INavigatorContent = tn.getChildAt(i) as INavigatorContent; containerChild.createDeferredContent(); HTH, -Alex On 2/11/19, 4:37 PM, "Paul Stearns" wrote: Alex: I am not sure how I can use the link you referenced. I thought perhaps I could use "containerChild.createDeferredContent " but I am unable to find any components it is applicable to. From: Alex Harui Sent: 2/11/19 4:07 PM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: Profiling Re-adding users@ IIRC, the key piece is a loop in ViewStack’s setActualCreationPolicies (around line 1058) https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fapache%2Fflex-sdk%2Fblob%2Fmaster%2Fframeworks%2Fprojects%2Fmx%2Fsrc%2Fmx%2Fcontainers%2FViewStack.as=02%7C01%7Caharui%40adobe.com%7C5a60c62e798c4d337ee808d690823bea%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636855286357686522=I03rmfnRqEdQdCUk1ASZQMldT7TkHJAf2g7%2BWHIKYUA%3D=0 It calls each child’s createDeferredContent(). The trick is to figure out when to call it on each child. Apparently, calling it on all 9 other tabs at once causes so much code to run that it freezes the UI. Like the magicians I referred to upthread, it is important to know your audience. If the user is typing, it is hard to sneak in one second of computation. If the user is not typing and moving a mouse, you might be able to get away with a one second pause. But if a user makes a query, they might expect a pause and if the query is asynchronous, that’s a good time to sneak in some computation. And if 90% of the users go to tab 2, that may be the only one you need to initialize during the query. And then initialize the other 8 when the results come back and the user is pondering the results. Or maybe they will put up with 9 one-second pauses while they are typing and all you have to do is use callLater to “unravel” the loop. Put the iterator in a variable, call one createDeferredContent, (and maybe validateNow()) then increment the variable and callLater. HTH, -Alex From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Monday, February 11, 2019 at 4:37 AM To: Alex Harui Subject: Re: Profiling Alex: I would like to take a middle road... Upon startup there are a number of combo boxes which get populated. Then the user enters some query data, a query is performed and the rest get populated. I took the time to rewrite the initialization of the 22 combo boxes using bindable Array Collections so that the TabNavigator can load just the 1st page. I would like to have each of the hidden tabs populate while waiting for the user to enter the query data. I have been unable to find how to tell each hidden tab to render individually. You mention Initializing tabs, code wise, how is that accomplished? I've tried a few things with no luck. I found that I can define the TabNavigator's creationPolicy as "auto", wait until the 1st tab is rendered, and switch the TabNavigator's creation policy to "all" it will then populate the other 9 tabs. This does show the first tab much quicker but it doesn't allow the entry of data until all of the other tabs are rendered. I was hoping to be able to do the callLater trick to give a break in between each load. Somewhat similar to a .NET Application.doevents(). I will look into the "magical" reference material you mentioned. From: Alex Harui Sent: 2/11/19 12:12 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Profiling There are several ways. The "theoretical" way is to rewrite your code. Populating ComboBoxes on hidden tabs is not a recommended practice. That is effectively having code in the app "pushing data down" into the control
Re: Profiling
Alex: I am not sure how I can use the link you referenced. I thought perhaps I could use "containerChild.createDeferredContent " but I am unable to find any components it is applicable to. From: Alex Harui Sent: 2/11/19 4:07 PM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: Profiling Re-adding users@ IIRC, the key piece is a loop in ViewStack’s setActualCreationPolicies (around line 1058) https://github.com/apache/flex-sdk/blob/master/frameworks/projects/mx/src/mx/containers/ViewStack.as It calls each child’s createDeferredContent(). The trick is to figure out when to call it on each child. Apparently, calling it on all 9 other tabs at once causes so much code to run that it freezes the UI. Like the magicians I referred to upthread, it is important to know your audience. If the user is typing, it is hard to sneak in one second of computation. If the user is not typing and moving a mouse, you might be able to get away with a one second pause. But if a user makes a query, they might expect a pause and if the query is asynchronous, that’s a good time to sneak in some computation. And if 90% of the users go to tab 2, that may be the only one you need to initialize during the query. And then initialize the other 8 when the results come back and the user is pondering the results. Or maybe they will put up with 9 one-second pauses while they are typing and all you have to do is use callLater to “unravel” the loop. Put the iterator in a variable, call one createDeferredContent, (and maybe validateNow()) then increment the variable and callLater. HTH, -Alex From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Monday, February 11, 2019 at 4:37 AM To: Alex Harui Subject: Re: Profiling Alex: I would like to take a middle road... Upon startup there are a number of combo boxes which get populated. Then the user enters some query data, a query is performed and the rest get populated. I took the time to rewrite the initialization of the 22 combo boxes using bindable Array Collections so that the TabNavigator can load just the 1st page. I would like to have each of the hidden tabs populate while waiting for the user to enter the query data. I have been unable to find how to tell each hidden tab to render individually. You mention Initializing tabs, code wise, how is that accomplished? I've tried a few things with no luck. I found that I can define the TabNavigator's creationPolicy as "auto", wait until the 1st tab is rendered, and switch the TabNavigator's creation policy to "all" it will then populate the other 9 tabs. This does show the first tab much quicker but it doesn't allow the entry of data until all of the other tabs are rendered. I was hoping to be able to do the callLater trick to give a break in between each load. Somewhat similar to a .NET Application.doevents(). I will look into the "magical" reference material you mentioned. From: Alex Harui Sent: 2/11/19 12:12 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Profiling There are several ways. The "theoretical" way is to rewrite your code. Populating ComboBoxes on hidden tabs is not a recommended practice. That is effectively having code in the app "pushing data down" into the controls. Instead, in any pattern that has MV in it, the recommended practice is that the components pull what they need from a model. If you do that rewrite, you may find that each Tab loads sufficiently fast when clicked on "on-demand". Maybe a busy cursor spins for a few seconds. Web pages often take a few seconds to load. But that may be a better experience than waiting 30 seconds for the first screen to show up. Related, any tab that takes a few seconds to load may have its own "push data down" code in it and is initializing controls that may be in a sub-tab or has even sucked in a module or two. Profile each slow Tab and see what is going on. The "hacky" way is to use Pseudo-Threads. There are fancy Pseudo-Thread patterns, but the cheapest one is just a chain of CallLater functions. Maybe each one initializes a Tab then callLater's the function to initialize the next Tab. Still to slow? Then initialize half a Tab and callLater to initialize the other half. Other ideas involve re-designing the UI to use more deferred-instantiation components. FWIW, many years ago I saw a great presentation on UI design by a magician. He talked about understanding human behavior to create illusions. There is also a classic book called "Computers As Theatre" by Brenda Laurel. In live theatre (as opposed to movies), there is the reality of having to find ways to get people and props on and off the stage without distracting the audience. These ideas can apply to problem
Re: Profiling
OK, I downloaded Scout & ScoutEnabler. I learned enough to be able to run it and I found the problem area. The swf in question has 10 tabs with more than 300 objects spread among the tabs. The TabNavigator has creationPolicy="all" set so that once the swf is loaded the "as" code can start populating various comboBoxes and other components on the hidden tabs. My working hypothesis is flash get's "hung" building all those components at once. If this is the case, how can I get rid of creationPolicy="all" and once the screen becomes visible, force the creation of all the hidden tabs before I try to populate them? While this may take a little longer, it would provide a better user interface. ---- From: "Paul Stearns" Sent: 2/10/19 6:55 AM To: "users@flex.apache.org" Subject: Profiling I have a routine that "disappears" for a few seconds. I would like to turn profiling on just before this begins and off when it comes back. Is this possible? Since the app does many things, I want to isolate just this section where as far as I can tell it is not executing any code from my application. I am currently using FlexBuilder 3, but will use whatever is available as long as the learning curve isn't too steep and it works with my 3.6 code.
Profiling
I have a routine that "disappears" for a few seconds. I would like to turn profiling on just before this begins and off when it comes back. Is this possible? Since the app does many things, I want to isolate just this section where as far as I can tell it is not executing any code from my application. I am currently using FlexBuilder 3, but will use whatever is available as long as the learning curve isn't too steep and it works with my 3.6 code.
Re: On Disk vs Uncompressed size of modules...
Alex: I searched C:\Program Files (x86)\Adobe\Flex Builder 3\sdks and did not find any swfdump, I also searched the whole C:\ and did not find it. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 2/8/19 12:13 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: On Disk vs Uncompressed size of modules... There is a swfdump in the Flex SDK (bin/swfdump). We just want to see the first set of tags in the SWF, which includes uncompressed SWF size to see if it correlates. Just running "swfdump " should dump those tags. -Alex On 2/8/19, 8:33 AM, "Paul Stearns" wrote: Alex: I downloaded swfdump from swfTools.org. What switch(es) would be appropriate for the dump? From: Alex Harui Sent: 2/7/19 11:53 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: On Disk vs Uncompressed size of modules... Paul, IMO, that would be a surprising level of compression. I suppose it is possible, especially if there is a lot of repeating text content as assets, maybe by linking in every locale known to Flex. Run swfdump on the SWF. Post a link to the results. Then run the performance profiler in Flash Builder or Scout. That's really the only way to get hard data on what is taking so long. -Alex On 2/7/19, 8:09 PM, "Paul Stearns" wrote: I have some fairly large modules, for example one which has a swf file that is 120KB on disk a little over 2,000 lines of mxml & as code combined). When run in the IDE it reports "2,674,599 bytes after decompression." While I am not particularly concerned about the size per se, it does take between 3 & 5 seconds to display the module and start the "Init" (CreationComplete) code. Trace output tells the tale; Starting addModuleThu Feb 7 22:43:21 GMT-0500 2019 [SWF] I:\MyProject\src\bin\MyModule.swf - 2,674,599 bytes after decompression Starting ModuleLoadDoneThu Feb 7 22:43:21 GMT-0500 2019 Starting Init Thu Feb 7 22:43:26 GMT-0500 2019 >From the time the Module is loaded until the Init fires is about 5 seconds. >ModuleLoadDone is fired when the ModuleEvent.READY is dispatched. "Starting >Init" is the first line in the function called by "CreationComplete" on the >module. What could be causing the delay? What can I do to improve things? Is it the expansion of the module? Setting up all the objects? Can I display the panel sooner while it is catching up in the background? This is running on an I7 with a fair amount of memory, and it behaves the same in production as the IDE, time wise. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: On Disk vs Uncompressed size of modules...
Alex: I downloaded swfdump from swfTools.org. What switch(es) would be appropriate for the dump? From: Alex Harui Sent: 2/7/19 11:53 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: On Disk vs Uncompressed size of modules... Paul, IMO, that would be a surprising level of compression. I suppose it is possible, especially if there is a lot of repeating text content as assets, maybe by linking in every locale known to Flex. Run swfdump on the SWF. Post a link to the results. Then run the performance profiler in Flash Builder or Scout. That's really the only way to get hard data on what is taking so long. -Alex On 2/7/19, 8:09 PM, "Paul Stearns" wrote: I have some fairly large modules, for example one which has a swf file that is 120KB on disk a little over 2,000 lines of mxml & as code combined). When run in the IDE it reports "2,674,599 bytes after decompression." While I am not particularly concerned about the size per se, it does take between 3 & 5 seconds to display the module and start the "Init" (CreationComplete) code. Trace output tells the tale; Starting addModuleThu Feb 7 22:43:21 GMT-0500 2019 [SWF] I:\MyProject\src\bin\MyModule.swf - 2,674,599 bytes after decompression Starting ModuleLoadDoneThu Feb 7 22:43:21 GMT-0500 2019 Starting Init Thu Feb 7 22:43:26 GMT-0500 2019 >From the time the Module is loaded until the Init fires is about 5 seconds. >ModuleLoadDone is fired when the ModuleEvent.READY is dispatched. "Starting >Init" is the first line in the function called by "CreationComplete" on the >module. What could be causing the delay? What can I do to improve things? Is it the expansion of the module? Setting up all the objects? Can I display the panel sooner while it is catching up in the background? This is running on an I7 with a fair amount of memory, and it behaves the same in production as the IDE, time wise. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
On Disk vs Uncompressed size of modules...
I have some fairly large modules, for example one which has a swf file that is 120KB on disk a little over 2,000 lines of mxml & as code combined). When run in the IDE it reports "2,674,599 bytes after decompression." While I am not particularly concerned about the size per se, it does take between 3 & 5 seconds to display the module and start the "Init" (CreationComplete) code. Trace output tells the tale; Starting addModuleThu Feb 7 22:43:21 GMT-0500 2019 [SWF] I:\MyProject\src\bin\MyModule.swf - 2,674,599 bytes after decompression Starting ModuleLoadDoneThu Feb 7 22:43:21 GMT-0500 2019 Starting Init Thu Feb 7 22:43:26 GMT-0500 2019 >From the time the Module is loaded until the Init fires is about 5 seconds. >ModuleLoadDone is fired when the ModuleEvent.READY is dispatched. "Starting >Init" is the first line in the function called by "CreationComplete" on the >module. What could be causing the delay? What can I do to improve things? Is it the expansion of the module? Setting up all the objects? Can I display the panel sooner while it is catching up in the background? This is running on an I7 with a fair amount of memory, and it behaves the same in production as the IDE, time wise. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: At least one memory leak problem is a custom combo box I use.
Mick: Thanks for the heads up. I just got it as it went to my spam filter. I am not sure if the problem was the same, but once i stopped diddling with the sub component dropDown the problem went away. I will keep this code in my back pocket, in case I need it. From: Mick Powell Sent: 2/2/19 10:07 AM To: users@flex.apache.org Cc: "pa...@compuace.com" Subject: Re: At least one memory leak problem is a custom combo box I use. Hello Paul, I noticed a similar problem years ago in the flex 4.1 SDK, but it could have been there for a while before that. We used a pretty simple workaround that you could try: https://mickpowellstips.blogspot.com/2010/11/dropdownlist-memory-leak-flex-41.html. It might fix your issue, and I doubt it will do any harm to give it a whirl… There might be a better approach as well, but that was the way we solved it. All the best, Mick > On Feb 2, 2019, at 12:55 AM, Alex Harui wrote: > > Hard to say for sure, but one thing to watch out for with ComboBox is running > any code that accesses the dropdown property. ComboBox by itself should know > how to destroy and unhook the dropdown, but if you run code that access > dropDown after ComboBox thinks it cleaned up, then it will get stuck in > memory again. > > HTH, > -Alex > > On 2/1/19, 10:19 PM, "Paul Stearns" wrote: > > Alex: > > I have found that using a custom combo box I built causes the module that > contains it to stay in memory. > > If I create a new instance but do not access it, everything is fine, As soon > as I touch the dataprovider, it will not allow the parent module to unload > (even if I set the dataProvider to null). I changed it to a standard > combobox, and everything is ducky, but that doesn't have the features I need. > > If you could take a look at my ValidatedComboBox function and see if it is > something obvious, I'd appreciate it. > > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpastebin.com%2FHyMTCC1Y=02%7C01%7Caharui%40adobe.com%7C231ee986cc774540946a08d688d65832%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636846851513368107=tT4%2BqA90aBbCdypmr59FIGnRgyJFN72d42fKr75dRE0%3D=0 > > Paul R. Stearns > Advanced Consulting Enterprises, Inc. > > 15280 NW 79th Ct. > Suite 250 > Miami Lakes, Fl 33016 > > Voice: (305)623-0360 x107 > Fax: (305)623-4588 > > > >
Re: At least one memory leak problem is a custom combo box I use.
Alex: I should have been more clear. The validatedCombobox no longer appears to keep my test module in memory. By replacing access to the dropdown, and relying on invalidateDisplayOptions to synchronize everything seems to work. I also found something else that appears to be causing a problem, that I have started to correct. This is a fairly complex DB application with hundreds of tables, 30-40 of which are generally used to populate combo boxes and other list components. These tables are fairly static and up to 15-20 could be used in a single entry screen. In order to reduce network thrashing between the DB and the client computers, I wrote a public function that resides in the parent Application called loadComboList. When a request is made for this type of data in memory array collections are checked first, if they are null it then queries the DB, returns the data to the application to both be stored in globally accessible array collections, cloned and sent to the requesting module. If the data is in an array collection it is just cloned and sent back to the requesting module. The modules handle all this by passing a "call back function" to the parentApplication function, which is then stored in a "private var". This parentApplication private var never gets cleared so it is a reference to a public function in the module causing the module to not be GCed. Not the smartest code I ever wrote, (hindsight is 20/20) but it does make things run faster, until the memory leak wreaks havoc. I have started to rewrite this as a class which is instantiated in the module, but stores/reads its data in/from the parent application. I have tested it with a small live module (one query/combobox) and it seems to work. I am converting another 18 queries to test a much larger module, I will keep you posted, if you are interested. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 2/2/19 7:46 PM To: "pa...@compuace.com" , "users@flex.apache.org" Subject: Re: At least one memory leak problem is a custom combo box I use. Paul: I assume that means that your custom combobox is still causing a memory leak? IIRC, you have a test setup where you click a button to unload the module. Add another button that checks the number of children of systemManager.popupChildren.numChildren. That number should go up by one when the dropdown is accessed and go down by one after the module cleans up to try to unload. If it does go down by one, then the dropdown is probably going away and is not the problem. If it is there, then some code may still be accessing the dropdown property. Maybe override the dropdown property getter and trace who is accessing it. HTH, -Alex From: Paul Stearns Reply-To: "pa...@compuace.com" Date: Saturday, February 2, 2019 at 3:22 PM To: Alex Harui , "users@flex.apache.org" Subject: Re: At least one memory leak problem is a custom combo box I use. Alex: After I wrote my previous email, I changed the code to not access the dropdown. I was able to use "invalidateDisplayOptions," and use only the combobox items directly. I am still debugging. Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 2/2/19 6:09 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: At least one memory leak problem is a custom combo box I use. It is fine to access the dropDown property as long as it doesn't happen after other clean up code runs. It might be worth debugging to see if the dropDown is the actual problem. It could be something else, like some eventhandler that handles an event you dispatch from your code keeps a reference to the combobox. So use the debugger or profiler or other means to see if the dropdown is still on the display list. You can report on the children in SystemManager.popUpChildren. You can verify that the ComboBox's destroyDropdown is being called. And then try to verify that dropDown is not accessed after that. HTH, -Alex On 2/2/19, 1:43 PM, "Paul Stearns" wrote: Alex: Yes this code does reference the DropDown component. The code is there to handle finding items and moving the cursor to the appropriate item. For example if the data is; dog cat bird and c-a-t is typed it finds cat and highlights it. If the data provider changes and the values become; dog lizard cat bird the component will still keep cat highlighted. Given the above as a requirement, how can I clear make the component eligible for GC? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360
Re: At least one memory leak problem is a custom combo box I use.
Alex: Yes this code does reference the DropDown component. The code is there to handle finding items and moving the cursor to the appropriate item. For example if the data is; dog cat bird and c-a-t is typed it finds cat and highlights it. If the data provider changes and the values become; dog lizard cat bird the component will still keep cat highlighted. Given the above as a requirement, how can I clear make the component eligible for GC? Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588 From: Alex Harui Sent: 2/2/19 1:55 AM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: At least one memory leak problem is a custom combo box I use. Hard to say for sure, but one thing to watch out for with ComboBox is running any code that accesses the dropdown property. ComboBox by itself should know how to destroy and unhook the dropdown, but if you run code that access dropDown after ComboBox thinks it cleaned up, then it will get stuck in memory again. HTH, -Alex On 2/1/19, 10:19 PM, "Paul Stearns" wrote: Alex: I have found that using a custom combo box I built causes the module that contains it to stay in memory. If I create a new instance but do not access it, everything is fine, As soon as I touch the dataprovider, it will not allow the parent module to unload (even if I set the dataProvider to null). I changed it to a standard combobox, and everything is ducky, but that doesn't have the features I need. If you could take a look at my ValidatedComboBox function and see if it is something obvious, I'd appreciate it. https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpastebin.com%2FHyMTCC1Y=02%7C01%7Caharui%40adobe.com%7C231ee986cc774540946a08d688d65832%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636846851513368107=tT4%2BqA90aBbCdypmr59FIGnRgyJFN72d42fKr75dRE0%3D=0 Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
At least one memory leak problem is a custom combo box I use.
Alex: I have found that using a custom combo box I built causes the module that contains it to stay in memory. If I create a new instance but do not access it, everything is fine, As soon as I touch the dataprovider, it will not allow the parent module to unload (even if I set the dataProvider to null). I changed it to a standard combobox, and everything is ducky, but that doesn't have the features I need. If you could take a look at my ValidatedComboBox function and see if it is something obvious, I'd appreciate it. https://pastebin.com/HyMTCC1Y Paul R. Stearns Advanced Consulting Enterprises, Inc. 15280 NW 79th Ct. Suite 250 Miami Lakes, Fl 33016 Voice: (305)623-0360 x107 Fax: (305)623-4588
Re: instances of objects magically appear...
Alex: I will try two things Here is a link to the clearModuleEvents and related code; https://hastebin.com/giqohitado.js Here is a link to the clearEvents and related code; https://hastebin.com/arilidifol.cs Here is the clearModuleEvents code pasted differently; public function clearModuleEvents(mdlModule:UIComponent):void { trace('Starting clearModuleEvents') for(var idx:int = mdlModule.numChildren - 1; idx >= 0; idx--) { trace('idx=' + idx + ' isContainer(objChild)=' +isContainer(objChild) + ' isContainer(mdlModule.getChildAt(idx))=' + isContainer(mdlModule.getChildAt(idx))); var objChild:DisplayObject = mdlModule.getChildAt(idx); trace('flash.utils.getQualifiedClassName(objChild)=' + flash.utils.getQualifiedClassName(objChild)); var childContainer:DisplayObjectContainer = objChild as DisplayObjectContainer; clearChildEvents(childContainer); childContainer = null; if ("clearEvents" in objChild) { var fncClearEvents:Function = objChild["clearEvents"]; if (objChild.hasOwnProperty('id')) trace('Clearing Events in==>>' + objChild['id']); fncClearEvents(); fncClearEvents = null; } if ("dataProvider" in objChild)objChild["dataProvider"] = null; if ("selectedIndex" in objChild)objChild["selectedIndex"] = -1; if ("selectedItem" in objChild)objChild["selectedItem"] = null; if ("value" in objChild)objChild["value"] = null; if ("text" in objChild)objChild["text"] = null; objChild = null; } objChild = null; trace('Finished clearModuleEvents') } private function clearChildEvents(dpsContainer:DisplayObjectContainer):void { for(var idx:int = dpsContainer.numChildren - 1; idx >= 0; idx--) { var objChild:DisplayObject = dpsContainer.getChildAt(idx); if (isContainer(objChild)) { var childContainer:DisplayObjectContainer = objChild as DisplayObjectContainer; clearChildEvents(childContainer); childContainer = null; } if ("killMe" in objChild) { var fncKillMe:Function = objChild["killMe"]; if (objChild.hasOwnProperty('id')) trace('Killing Events in==>>' + objChild['id']); fncKillMe(); fncKillMe = null; } else if ("clearEvents" in objChild) { var fncClearEvents:Function = objChild["clearEvents"]; if (objChild.hasOwnProperty('id')) trace('Clearing Events in==>>' + objChild['id']); fncClearEvents(); fncClearEvents = null; } if ("dataProvider" in objChild)objChild["dataProvider"] = null; if ("selectedIndex" in objChild)objChild["selectedIndex"] = -1; if ("selectedItem" in objChild)objChild["selectedItem"] = null; //if ("value" in objChild)objChild["value"] = null; if ("text" in objChild)objChild["text"] = null; objChild = null; } objChild = null; } From: Alex Harui Sent: 2/1/19 1:20 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: instances of objects magically appear... It was hard to read the code in the email. In the future, try using pastebin or some other service, or open a JIRA issue and put the code in there. I think I saw that a Dictionary was holding the children but it isn't a weak-reference dictionary, so that could pin those children in memory. HTH, -Alex On 2/1/19, 10:16 AM, "Paul Stearns" wrote: I am trying to solve my memory leak issue. I have added a clearEvents function to my testing modules. My thought is to execute this function prior to unloading each module. Towards that end I have created a function in the parentApplication called clearModuleEvents which recursively loops through each child, and if the "clearEvents " function exists, run it. Then I unload the module. Using the profiler when I execute clearModuleEvents, it seems to create another instance of each display object. I am not sure why. I would appreciate if someone might tell what might cause that. Here is the code referenced above; clearEvents & related code; protected var dctListeners:Dictionary = new Dictionary(); override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = true):void { var key:Object = {type: type, useCapture: useCapture}; if (dctListeners[key]) { removeEventListener(type, dctListeners[key], useCapture); dctListeners[key] = null; } dctListeners[key] = listener; super.addEventListener(type, listener, useCapture, priority, useWe
instances of objects magically appear...
I am trying to solve my memory leak issue. I have added a clearEvents function to my testing modules. My thought is to execute this function prior to unloading each module. Towards that end I have created a function in the parentApplication called clearModuleEvents which recursively loops through each child, and if the "clearEvents " function exists, run it. Then I unload the module. Using the profiler when I execute clearModuleEvents, it seems to create another instance of each display object. I am not sure why. I would appreciate if someone might tell what might cause that. Here is the code referenced above; clearEvents & related code; protected var dctListeners:Dictionary = new Dictionary(); override public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = true):void { var key:Object = {type: type, useCapture: useCapture}; if (dctListeners[key]) { removeEventListener(type, dctListeners[key], useCapture); dctListeners[key] = null; } dctListeners[key] = listener; super.addEventListener(type, listener, useCapture, priority, useWeakReference); } public function clearEvents():void { trace('TestMemoryLeak clearEvents'); try { for (var key:Object in dctListeners) { removeEventListener(key.type, dctListeners[key], key.useCapture); dctListeners[key] = null; } } catch (e:Error) { trace('TestMemoryLeak clearEvents error='+e.message); } dctListeners = null; } clearModuleEvents and related code public function clearModuleEvents(mdlModule:UIComponent):void { trace('Starting clearModuleEvents') for(var idx:int = mdlModule.numChildren - 1; idx >= 0; idx--) { trace('idx=' + idx + ' isContainer(objChild)=' +isContainer(objChild) + ' isContainer(mdlModule.getChildAt(idx))=' + isContainer(mdlModule.getChildAt(idx))); var objChild:DisplayObject = mdlModule.getChildAt(idx); trace('flash.utils.getQualifiedClassName(objChild)=' + flash.utils.getQualifiedClassName(objChild)); var childContainer:DisplayObjectContainer = objChild as DisplayObjectContainer; clearChildEvents(childContainer); childContainer = null; if ("clearEvents" in objChild) { var fncClearEvents:Function = objChild["clearEvents"]; if (objChild.hasOwnProperty('id')) trace('Clearing Events in==>>' + objChild['id']); fncClearEvents(); fncClearEvents = null; } if ("dataProvider" in objChild)objChild["dataProvider"] = null; if ("selectedIndex" in objChild)objChild["selectedIndex"] = -1; if ("selectedItem" in objChild)objChild["selectedItem"] = null; if ("value" in objChild)objChild["value"] = null; if ("text" in objChild)objChild["text"] = null; objChild = null; } objChild = null; trace('Finished clearModuleEvents') } private function clearChildEvents(dpsContainer:DisplayObjectContainer):void { for(var idx:int = dpsContainer.numChildren - 1; idx >= 0; idx--) { var objChild:DisplayObject = dpsContainer.getChildAt(idx); if (isContainer(objChild)) { var childContainer:DisplayObjectContainer = objChild as DisplayObjectContainer; clearChildEvents(childContainer); childContainer = null; } if ("killMe" in objChild) { var fncKillMe:Function = objChild["killMe"]; if (objChild.hasOwnProperty('id')) trace('Killing Events in==>>' + objChild['id']); fncKillMe(); fncKillMe = null; } else if ("clearEvents" in objChild) { var fncClearEvents:Function = objChild["clearEvents"]; if (objChild.hasOwnProperty('id')) trace('Clearing Events in==>>' + objChild['id']); fncClearEvents(); fncClearEvents = null; } if ("dataProvider" in objChild)objChild["dataProvider"] = null; if ("selectedIndex" in objChild)objChild["selectedIndex"] = -1; if ("selectedItem" in objChild)objChild["selectedItem"] = null; //if ("value" in objChild)objChild["value"] = null; if ("text" in objChild)objChild["text"] = null; objChild = null; } objChild = null; }
Flexbuilder 3 profiler
I am having various issues with the profiler. I do not know whether it is how I have it configured, or that I am just expecting more than it can deliver; When run it fires up Adobe Flash Player 9, instead of either the latest debug flash player, or what I have installed in IE which is the latest debug flashplayer..It runs in one project, but not another from the same IDE session. On the project where it does not run, the error is;java.io.IOException: Unknown 'agent -> profiler' command: 60 at com.adobe.flash.profiler.internal.ProtocolHandler.process(ProtocolHandler.java:134) at com.adobe.flash.profiler.internal.PlayerSession.run(PlayerSession.java:383) at java.lang.Thread.run(Unknown Source) Where is the best place to get help on this?
Re: Debugging memory leak in Flex 3.5
Alex: I have a group of 10 Sent: 1/30/19 3:31 PM To: "users@flex.apache.org" , "pa...@compuace.com" Subject: Re: Debugging memory leak in Flex 3.5 Paul, In step 3, when they click the X and ModuleLoader unloads the module, do you see the module unload in the debugger player? I think you would see a line like [UnloadSWF] in the debugger console. In step 4, are the "children" you refer to the child UI widgets of the module? One technique you could try is to add code that starts removing the children from their parents after the module is loaded. Then you might find that removing one particular child causes the problem. Make sure Timers and event listeners have been managed properly. HTH, -Alex On 1/30/19, 11:18 AM, "Paul Stearns" wrote: I started down this path some time ago, when I ran into a dead end and other projects piled up, I needed to abandon the hunt for memory leaks in my application. I am now 100% focused on solving this as it has gotten to be a real problem. I use FlexBuilder 3 as a tool. I am not opposed to using other tools. Where I am right now; 1) I made a copy of my application and am working with one module (moduleLoader) and the main application. 2) The application is basically a shell with a menu bar, when a user selects a menu item it finds an existing moduleloader, and loads the .swf file using the moduleloader. 3) When the user clicks the "X" on the panel within the moduleloader it unloads the module. 4) After the module unloads all of its children seem to stay in memory, and never go away. At the moment The profiler has stopped functioning with the folloowing error; java.io.IOException: Unknown 'agent -> profiler' command: 60 at com.adobe.flash.profiler.internal.ProtocolHandler.process(ProtocolHandler.java:134) at com.adobe.flash.profiler.internal.PlayerSession.run(PlayerSession.java:383) at java.lang.Thread.run(Unknown Source) I need help fixing that and/or finding another memory profiler. I would like to have the profiler use a relatively current version of the Flash VM. My current strategy is to strip things out until the problem goes away.
Debugging memory leak in Flex 3.5
I started down this path some time ago, when I ran into a dead end and other projects piled up, I needed to abandon the hunt for memory leaks in my application. I am now 100% focused on solving this as it has gotten to be a real problem. I use FlexBuilder 3 as a tool. I am not opposed to using other tools. Where I am right now; 1) I made a copy of my application and am working with one module (moduleLoader) and the main application. 2) The application is basically a shell with a menu bar, when a user selects a menu item it finds an existing moduleloader, and loads the .swf file using the moduleloader. 3) When the user clicks the "X" on the panel within the moduleloader it unloads the module. 4) After the module unloads all of its children seem to stay in memory, and never go away. At the moment The profiler has stopped functioning with the folloowing error; java.io.IOException: Unknown 'agent -> profiler' command: 60 at com.adobe.flash.profiler.internal.ProtocolHandler.process(ProtocolHandler.java:134) at com.adobe.flash.profiler.internal.PlayerSession.run(PlayerSession.java:383) at java.lang.Thread.run(Unknown Source) I need help fixing that and/or finding another memory profiler. I would like to have the profiler use a relatively current version of the Flash VM. My current strategy is to strip things out until the problem goes away.
Best mxmlc compiler to use for existing application.
I have a few existing applications developed and maintained using FlexBuilder. The current SDK used is 3.5. When I compile for production I use mxmlc "Version 3.6.0 build 16995" Two of my applications have memory leaks. Before spending too much time debugging, I want to make sure I am compiling with the best compiler I can based on the age and style of code I am using. The applications are pre-Spark My assumption has been to go beyond V3.x of the compiler would cause problems. Is this the case? So what is the latest compiler I can use (also development environment) that will work with the old style code I am supporting? Paul