Hi,
I'm new to flex 4.5 and working with Parsley 2.4 and SDK 4.5.
I'm getting the following error when loading a module:
VerifyError: Error #1053: Illegal override of ParsleyFlexModuleFactory in com.adobe.cairngorm.module.ParsleyFlexModuleFactory.
at com.adobe.cairngorm.module::ParsleyModuleInfoProxy/get factory()
at com.adobe.cairngorm.module::ModuleViewLoader/addLoadedModuleToStage()
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/callLaterDispatcher2()[E:\dev\hero_private\frame works\projects\framework\src\mx\core\UIComponent.as:12208]
at mx.core::UIComponent/callLaterDispatcher()[E:\dev\hero_private\framew orks\projects\framework\src\mx\core\UIComponent.as:12146]
Does anybody knows what is the problem?
Thanks!
Assaf
Hi,
I'll try to have a look at the issue this week, could you please open a jira ticket with a sample on our bug tracking system:
https://bugs.adobe.com/jira/browse/CGM
thanks
Hello Nico,
The problem just happened to me this morning, in order to fix it, it is enought to patch the Cairngorm Module Library in order to implement some methods witch extends IFlexModuleFactory, this new interface is done in order to check if an RSL is already loaded before loading, so modules and sub-applications will not load RSLs that are already loaded.
You can patch it like that, in a project where you use the Cairngorm Module Library:
1- Create the package "com.adobe.cairngorm.module" at the root source of the project.
2- Download and paste in it the http://opensource.adobe.com/svn/opensource/cairngorm3/tags/cairngorm3- 3.0.9/libraries/Module/src/com/adobe/cairngorm/module/ParsleyFlexModul eFactory.as
3- In ParsleyFlexModuleFactory.as, remove the CONFIG::Flex4 tags (they're used for the conditional compilation but we don't need them because we'll indeed compile it for flex 4.5+ and not everybody uses a conditional compilation configuration).
4- add this code :
public function get allowDomainsInNewRSLs():Boolean
{
return factory.allowDomainsInNewRSLs;
}
public function set allowDomainsInNewRSLs(value:Boolean):void
{
factory.allowDomainsInNewRSLs = value;
}
public function get allowInsecureDomainsInNewRSLs():Boolean
{
return factory.allowInsecureDomainsInNewRSLs;
}
public function set allowInsecureDomainsInNewRSLs(value:Boolean):void
{
factory.allowInsecureDomainsInNewRSLs = value;
}
public function addPreloadedRSL(loaderInfo:LoaderInfo, rsl:Vector.<RSLData>):void
{
factory.addPreloadedRSL(loaderInfo, rsl);
}
5- Add the spicelib-flex-2.4+.swc and the parsley-flex4-2.4+.swc (or the Parsley counterpart libraries) as support for the patched ParsleyFlexModuleFactory.
6- Compile it with the SDK 4.5+ and that's done, it works now with the SDK 4+.
(If you've got more projects where you use the Cairngorm Module Library, just copy and paste the new patched package and add thespicelib-flex-2.4+ and the parsley-flex4-2.4+.swc (or the Parsley counterpart libraries)
That will only allows the library to be fully compatible with the SDK 4.5+
(maybe it's good to keep Alex Uhlmann in touch with it allowing him to implement a conditional compilation or another version of the artifact the time it migrates completely its library in 4.5).
(For the those who have a lot of Maven projects, it's preferable to re-compile the original Cairngorm Module Library with the code above in order to have the patched artifact in your maven repository, indeed, you won't have to remove the CONFIG::Flex4 tags or to add the spicelib, parsley libraries, the patched module is self-suffisent and a simple "mvn clean install" does the job)
Note: Anyway, now, with Parsley 2.4, the flex module integration is FULLY tranparent and the need of this library is less important.
Frédéric THOMAS ![]()
Hi Nico,
Actually, no needs to ask to integrate it, that's already done on the source force repo, https://bugs.adobe.com/jira/browse/CGM-87
I just releazed that I was on the old repo, the new one being on sourceforge.net.
North America
Europe, Middle East and Africa
Asia Pacific