Actionscript 3 使用PureMVC作为其适当类强制转换检索到的中介将返回null

Actionscript 3 使用PureMVC作为其适当类强制转换检索到的中介将返回null,actionscript-3,puremvc,Actionscript 3,Puremvc,我有一个已注册导航页面的调解人: facade.registerMediator(new NavPageMediator(viewComponent)); 我试图在另一个页面上检索该中介,如下所示: var navPageMediator:NavPageMediator = facade.retrieveMediator(NavPageMediator.NAME) as NavPageMediator; 但是,该语句返回null。如果我尝试使用NavPageMediator(facade.r

我有一个已注册导航页面的调解人:

facade.registerMediator(new NavPageMediator(viewComponent));
我试图在另一个页面上检索该中介,如下所示:

var navPageMediator:NavPageMediator = facade.retrieveMediator(NavPageMediator.NAME) as NavPageMediator;
但是,该语句返回
null
。如果我尝试使用
NavPageMediator(facade.retrieveMediator(NavPageMediator.NAME))
语法强制转换它,我会得到一个

TypeError: Error #1034: Type Coercion failed: cannot convert com.website.mvc.view.page::NavPageMediator@237560a1 to com.website.mvc.view.page.NavPageMediator.`
就我个人而言,我无法理解为什么
NavPageMediator@237560a1
将无法转换为
NavPageMediator
,也无法转换为注册中介和检索中介之间发生的导致此问题的情况。特别是因为
trace(新的NavPageMediator()作为NavPageMediator)返回
[对象NavPageMediator]

顺便说一句,这可能是我问题的一部分,我不明白对象末尾的@hash是什么(
@237560a1
)。它只是该类实例的内部标识符吗

编辑:
留下一点重要信息:我在其中实例化和注册中介的SWF与我试图检索中介的SWF是分开的。

解决了这个问题。这原来是一个应用领域的问题。将两个SWF(注册者和检索者)分配到同一个域解决了这个问题

此外,我非常确定类名末尾的@hash是对该类所属ApplicationDomain的内部引用。所以
NavPageMediator@237560a1
NavPageMediator
位于不同的域中(为什么第二个域上没有哈希,我仍然不确定;这会让事情变得更清楚)