Re: [flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread Alex Harui
Every class in the SDK has an mx_internal static VERSION property.

I don’t know which APIs changed from 3.2 to 3.4 so you could be just getting 
lucky.  Try building the parent app in Flex 4 and you should definitely see 
problems.


On 2/2/10 4:13 PM, "jamesfin"  wrote:








I've moved the loadForCompatibility and the resizing event is now marshalled.

However, the child sub-app is 3.2sdk and the parent is 3.4sdk and nobody is 
complaining with/without the compatibility flag.  It used to though. ;(

Is there a way to show an Alert from within a SWF to show which SDK it is 
leveraging?

I've clear the flash cache with 
http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager03.html
 so I know it isn't locally cached.

http://71.36.29.20:/SubAppTestParent.html

Shows the current version with...

loader.trustContent = true;
loader.visible = true;
loader.loadForCompatibility = true;
loader.load("http://71.36.29.20:/SubAppTestChild.swf";);

// this is where resize events will return...
loader.loaderInfo.sharedEvents.addEventListener(ResizeEvent.RESIZE_EVENT, 
newText);

--- In flexcoders@yahoogroups.com  , Alex 
Harui  wrote:
>
> You need to set loadForCompatility=true before the load() in order to force 
> the child into its own applicationdomain and therefore isolate it from the 
> version of the SDK in the parent app.  Doing so will then give the parent and 
> child different versions of ResizeEvent as you would want and expect in 
> version isolation otherwise a  change to ResizeEvent could cause a failure in 
> the child app.  The correct technique is to marshal all events going between 
> applicationdomains.
>
> If you don't set loadForCompatibility=true before the load() and the child is 
> truly on a different version of the SDK, you should see verify errors.  If 
> both parent and child are on the same SDK, it will work, but as soon as the 
> parent gets a newer SDK, you will start to see verify errors.
>
> You could also set the source property instead of calling load and then order 
> wouldn't matter.
>
>
> On 2/2/10 12:11 PM, "jamesfin"  wrote:
>
>
>
>
>
>
> I didn't see that small note to move the loadForCompatibility before the 
> load.  Now that I have done that, I get this error when sending the test 
> event message.  However, if I comment out the loadForCompatibility flag, the 
> child swf still loads fine (with a different SDK) and everything works.  Not 
> sure I understand why the loadForCompatibility is needed UNLESS it is purely 
> for SWF's loaded from a different domain then the parent.
>
> TypeError: Error #1034: Type Coercion failed: cannot convert 
> resizeev...@2c66aeb1 to ResizeEvent.
> at 
> SubAppTestParent/newText()[/Users/jfinnigan/Documents/android/SubAppTestParent/src/SubAppTestParent.mxml:36]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at 
> TestView/sendParent()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:21]
> at 
> TestView/___TestView_Button1_click()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:33]
>
> --- In flexcoders@yahoogroups.com   
>  , Alex Harui  wrote:
> >
> > The rules are that each sub-app must load its own RSLs.  I'm still 
> > suspicious that you have the load call before setting loadForCompatiblity
> >
> >
> > On 2/2/10 10:41 AM, "jamesfin"  wrote:
> >
> >
> >
> >
> >
> >
> >
> >
> > Forgot to include the error.  This error only appears if I have 
> > framework.swc being used via RSL in the child subapplication.
> >
> > TypeError: Error #1009: Cannot access a property or method of a null object 
> > reference.
> > at 
> > mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
> > at flash.events::EventDispatcher/dispatchEventFunction()
> > at flash.events::EventDispatcher/dispatchEvent()
> > at 
> > mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
> > at 
> > mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
> > at 
> > mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
> > at 
> > mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]
> >
> > --- In flexcoders@yahoogroups.com   
> >   
> >  , "jamesfin"  
> > wrote:
> > >
> > > For any Multi-Versioned SubApplication, what are the hard and fast rules 
> > > about using RSL's?
> > >
> > > I

[flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread jamesfin


I've moved the loadForCompatibility and the resizing event is now marshalled.

However, the child sub-app is 3.2sdk and the parent is 3.4sdk and nobody is 
complaining with/without the compatibility flag.  It used to though. ;(

Is there a way to show an Alert from within a SWF to show which SDK it is 
leveraging?  

I've clear the flash cache with 
http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager03.html
 so I know it isn't locally cached.

http://71.36.29.20:/SubAppTestParent.html

Shows the current version with...

loader.trustContent = true;
loader.visible = true;
loader.loadForCompatibility = true;

loader.load("http://71.36.29.20:/SubAppTestChild.swf";);

// this is where resize events will return...

loader.loaderInfo.sharedEvents.addEventListener(ResizeEvent.RESIZE_EVENT, 
newText);






--- In flexcoders@yahoogroups.com, Alex Harui  wrote:
>
> You need to set loadForCompatility=true before the load() in order to force 
> the child into its own applicationdomain and therefore isolate it from the 
> version of the SDK in the parent app.  Doing so will then give the parent and 
> child different versions of ResizeEvent as you would want and expect in 
> version isolation otherwise a  change to ResizeEvent could cause a failure in 
> the child app.  The correct technique is to marshal all events going between 
> applicationdomains.
> 
> If you don't set loadForCompatibility=true before the load() and the child is 
> truly on a different version of the SDK, you should see verify errors.  If 
> both parent and child are on the same SDK, it will work, but as soon as the 
> parent gets a newer SDK, you will start to see verify errors.
> 
> You could also set the source property instead of calling load and then order 
> wouldn't matter.
> 
> 
> On 2/2/10 12:11 PM, "jamesfin"  wrote:
> 
> 
> 
> 
> 
> 
> I didn't see that small note to move the loadForCompatibility before the 
> load.  Now that I have done that, I get this error when sending the test 
> event message.  However, if I comment out the loadForCompatibility flag, the 
> child swf still loads fine (with a different SDK) and everything works.  Not 
> sure I understand why the loadForCompatibility is needed UNLESS it is purely 
> for SWF's loaded from a different domain then the parent.
> 
> TypeError: Error #1034: Type Coercion failed: cannot convert 
> resizeev...@2c66aeb1 to ResizeEvent.
> at 
> SubAppTestParent/newText()[/Users/jfinnigan/Documents/android/SubAppTestParent/src/SubAppTestParent.mxml:36]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at 
> TestView/sendParent()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:21]
> at 
> TestView/___TestView_Button1_click()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:33]
> 
> --- In flexcoders@yahoogroups.com  , 
> Alex Harui  wrote:
> >
> > The rules are that each sub-app must load its own RSLs.  I'm still 
> > suspicious that you have the load call before setting loadForCompatiblity
> >
> >
> > On 2/2/10 10:41 AM, "jamesfin"  wrote:
> >
> >
> >
> >
> >
> >
> >
> >
> > Forgot to include the error.  This error only appears if I have 
> > framework.swc being used via RSL in the child subapplication.
> >
> > TypeError: Error #1009: Cannot access a property or method of a null object 
> > reference.
> > at 
> > mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
> > at flash.events::EventDispatcher/dispatchEventFunction()
> > at flash.events::EventDispatcher/dispatchEvent()
> > at 
> > mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
> > at 
> > mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
> > at 
> > mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
> > at 
> > mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]
> >
> > --- In flexcoders@yahoogroups.com   
> >  , "jamesfin"  
> > wrote:
> > >
> > > For any Multi-Versioned SubApplication, what are the hard and fast rules 
> > > about using RSL's?
> > >
> > > I tried making the parent (3.4sdk) and child subapplication (3.2sdk) both 
> > > use RSL's but it fails miserably which doesn't surprise me considering 
> > > the complexity of what's going on already.
> > >
> > > However, if the parent alone has RSL's e

Re: [flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread Alex Harui
You need to set loadForCompatility=true before the load() in order to force the 
child into its own applicationdomain and therefore isolate it from the version 
of the SDK in the parent app.  Doing so will then give the parent and child 
different versions of ResizeEvent as you would want and expect in version 
isolation otherwise a  change to ResizeEvent could cause a failure in the child 
app.  The correct technique is to marshal all events going between 
applicationdomains.

If you don’t set loadForCompatibility=true before the load() and the child is 
truly on a different version of the SDK, you should see verify errors.  If both 
parent and child are on the same SDK, it will work, but as soon as the parent 
gets a newer SDK, you will start to see verify errors.

You could also set the source property instead of calling load and then order 
wouldn’t matter.


On 2/2/10 12:11 PM, "jamesfin"  wrote:






I didn't see that small note to move the loadForCompatibility before the load.  
Now that I have done that, I get this error when sending the test event 
message.  However, if I comment out the loadForCompatibility flag, the child 
swf still loads fine (with a different SDK) and everything works.  Not sure I 
understand why the loadForCompatibility is needed UNLESS it is purely for SWF's 
loaded from a different domain then the parent.

TypeError: Error #1034: Type Coercion failed: cannot convert 
resizeev...@2c66aeb1 to ResizeEvent.
at 
SubAppTestParent/newText()[/Users/jfinnigan/Documents/android/SubAppTestParent/src/SubAppTestParent.mxml:36]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at 
TestView/sendParent()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:21]
at 
TestView/___TestView_Button1_click()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:33]

--- In flexcoders@yahoogroups.com  , Alex 
Harui  wrote:
>
> The rules are that each sub-app must load its own RSLs.  I'm still suspicious 
> that you have the load call before setting loadForCompatiblity
>
>
> On 2/2/10 10:41 AM, "jamesfin"  wrote:
>
>
>
>
>
>
>
>
> Forgot to include the error.  This error only appears if I have framework.swc 
> being used via RSL in the child subapplication.
>
> TypeError: Error #1009: Cannot access a property or method of a null object 
> reference.
> at 
> mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at 
> mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
> at 
> mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
> at 
> mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
> at 
> mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]
>
> --- In flexcoders@yahoogroups.com   
>  , "jamesfin"  
> wrote:
> >
> > For any Multi-Versioned SubApplication, what are the hard and fast rules 
> > about using RSL's?
> >
> > I tried making the parent (3.4sdk) and child subapplication (3.2sdk) both 
> > use RSL's but it fails miserably which doesn't surprise me considering the 
> > complexity of what's going on already.
> >
> > However, if the parent alone has RSL's enabled, all is well. ;)
> >
> >
> > So, what are the guidelines.
> >
> > i.e. Can never use RSL's on subapplications?
> >
>
>
>
>
>
>
> --
> Alex Harui
> Flex SDK Team
> Adobe System, Inc.
> http://blogs.adobe.com/aharui
>






--
Alex Harui
Flex SDK Team
Adobe System, Inc.
http://blogs.adobe.com/aharui


[flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread jamesfin
I didn't see that small note to move the loadForCompatibility before the load.  
Now that I have done that, I get this error when sending the test event 
message.  However, if I comment out the loadForCompatibility flag, the child 
swf still loads fine (with a different SDK) and everything works.  Not sure I 
understand why the loadForCompatibility is needed UNLESS it is purely for SWF's 
loaded from a different domain then the parent.


TypeError: Error #1034: Type Coercion failed: cannot convert 
resizeev...@2c66aeb1 to ResizeEvent.
at 
SubAppTestParent/newText()[/Users/jfinnigan/Documents/android/SubAppTestParent/src/SubAppTestParent.mxml:36]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at 
TestView/sendParent()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:21]
at 
TestView/___TestView_Button1_click()[/Users/jfinnigan/Documents/android/SubAppTestChild/src/TestView.mxml:33]




--- In flexcoders@yahoogroups.com, Alex Harui  wrote:
>
> The rules are that each sub-app must load its own RSLs.  I'm still suspicious 
> that you have the load call before setting loadForCompatiblity
> 
> 
> On 2/2/10 10:41 AM, "jamesfin"  wrote:
> 
> 
> 
> 
> 
> 
> 
> 
> Forgot to include the error.  This error only appears if I have framework.swc 
> being used via RSL in the child subapplication.
> 
> TypeError: Error #1009: Cannot access a property or method of a null object 
> reference.
> at 
> mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at 
> mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
> at 
> mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
> at 
> mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
> at 
> mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]
> 
> --- In flexcoders@yahoogroups.com  , 
> "jamesfin"  wrote:
> >
> > For any Multi-Versioned SubApplication, what are the hard and fast rules 
> > about using RSL's?
> >
> > I tried making the parent (3.4sdk) and child subapplication (3.2sdk) both 
> > use RSL's but it fails miserably which doesn't surprise me considering the 
> > complexity of what's going on already.
> >
> > However, if the parent alone has RSL's enabled, all is well. ;)
> >
> >
> > So, what are the guidelines.
> >
> > i.e. Can never use RSL's on subapplications?
> >
> 
> 
> 
> 
> 
> 
> --
> Alex Harui
> Flex SDK Team
> Adobe System, Inc.
> http://blogs.adobe.com/aharui
>




Re: [flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread Alex Harui
The rules are that each sub-app must load its own RSLs.  I’m still suspicious 
that you have the load call before setting loadForCompatiblity


On 2/2/10 10:41 AM, "jamesfin"  wrote:








Forgot to include the error.  This error only appears if I have framework.swc 
being used via RSL in the child subapplication.

TypeError: Error #1009: Cannot access a property or method of a null object 
reference.
at 
mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at 
mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
at 
mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
at 
mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
at 
mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]

--- In flexcoders@yahoogroups.com  , 
"jamesfin"  wrote:
>
> For any Multi-Versioned SubApplication, what are the hard and fast rules 
> about using RSL's?
>
> I tried making the parent (3.4sdk) and child subapplication (3.2sdk) both use 
> RSL's but it fails miserably which doesn't surprise me considering the 
> complexity of what's going on already.
>
> However, if the parent alone has RSL's enabled, all is well. ;)
>
>
> So, what are the guidelines.
>
> i.e. Can never use RSL's on subapplications?
>






--
Alex Harui
Flex SDK Team
Adobe System, Inc.
http://blogs.adobe.com/aharui


[flexcoders] Re: SubApplications Chapter Trois...

2010-02-02 Thread jamesfin



Forgot to include the error.  This error only appears if I have framework.swc 
being used via RSL in the child subapplication.


TypeError: Error #1009: Cannot access a property or method of a null object 
reference.
at 
mx.managers::SystemManager/preloader_rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\managers\SystemManager.as:3147]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at 
mx.preloaders::Preloader/http://www.adobe.com/2006/flex/mx/internal::rslCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\preloaders\Preloader.as:335]
at 
mx.core::RSLListLoader/listCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLListLoader.as:238]
at 
mx.core::RSLItem/itemCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\RSLItem.as:233]
at 
mx.core::CrossDomainRSLItem/loadBytesCompleteHandler()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\core\CrossDomainRSLItem.as:396]




--- In flexcoders@yahoogroups.com, "jamesfin"  wrote:
>
> For any Multi-Versioned SubApplication, what are the hard and fast rules 
> about using RSL's?
> 
> I tried making the parent (3.4sdk) and child subapplication (3.2sdk) both use 
> RSL's but it fails miserably which doesn't surprise me considering the 
> complexity of what's going on already.
> 
> However, if the parent alone has RSL's enabled, all is well. ;)
> 
> 
> So, what are the guidelines.  
> 
> i.e. Can never use RSL's on subapplications?
>