TypeError: Error #1034: 强制转换类型失败:无法将 mx.managers::HistoryManagerImpl@65a76c9 转换为 mx.managers.IHistoryManager。
at mx.managers::HistoryManager$/get impl()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\managers\HistoryManager.as:96]
at mx.managers::HistoryManager$/unregister()[C:\autobuild\3.2.0\frameworks\projects\framework\src\mx\managers\HistoryManager.as:144]
网上类似问题及解决办法:
TypeError: Error #1034: 強制型変換に失敗しました。jp.co.nec.necst.pi.ap2web::TestEvent@1645ee79 を jp.co.nec.necst.pi.ap2web.TestEvent に変換できません。
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\3.1.0\frameworks\projects\framework\src\mx\core\UIComponent.as:9156]
at UserDetail/navToUserSet()[D:\program\eclipse\workspace\netboard\flex_src\UserDetail.mxml:190]
at UserDetail/___UserDetail_Button3_click()[D:\program\eclipse\workspace\netboard\flex_src\UserDetail.mxml:305]
这两天做flex碰到上面这个问题,主要是Flex模块通过事件传值时发生了这个错误,调试了半天发现dispatchEvent(event)的时候出现,
但一直找不到解决办法,TestEvent是自己定义的事件,自己转换自己还转换不了,郁闷到挂!
后来无奈换了另一种方法传值,成功传值,但是点下拉框时又发生DragManagerImpl@12631a61转换为 mx.managers.IDragManager报错,上Google搜索了下,找到了解决办法,发现同我前一个问题类似,于是用同样
方法,一试果然成功。
以下是解决办法:
在主应用(Application)里面加上
import mx.managers.DragManager;
private var dragManager:DragManager;
这两句就可以解决问题。至于为什么会出现这样的情况,在网上找到别人的解释,以下是转自google一个flex 讨论组别人的回答(http: //groups.google.com/group/riadev/tree/browse_frm/month/2007-05/5eeebf64e4926c45? rnum=11&_done=%2Fgroup%2Friadev%2Fbrowse_frm%2Fmonth%2F2007-05%3F)
QUOTE:
这属于Module的共享代码问题(shared code),
当Module中使用managers时(如PopUpManager,DragManager, HistoryManager)容易出现这个问题,
manager的方法都是静态方法,整个应用程序中创建了一个该manager接口的singleton,
但module仅在自己的Application domain中使用该singleton, 当多个module使用同一个singleton且main
application没有使用时,就会出现这个空对象引用问题:首先引入某manager的module不能将该manager接口的singleton跟其
他module共享,其他module调用该Manager的方法时,应用程序不会再创建该manager接口的实例,这个module就无法引用到该manager接口的实例,就出现了空对象引用问题,可以参考Flex的源码。
默认情况下,Accordion和TabNavigator的 historyManagementEnabled =
true;而ViewStack的historyManagementEnabled = false;
所以使用TabNavigator和Accordion时要注意HistoryManager的共享代码问题。另,仅一个module使用HistoryManager时,卸载之后又加载该module也会出现该问题,说明第二次加载时相当于一个新的module了。
一个解决办法:
在main application 中引入相关manager,可以通过在main application中申明manager的引用即可,如:
import mx.managers.HistoryManager;
var historyManager:HistoryManager;
其他manager类似。
还可以将共享代码作为module加载到main applicaiton的application domain,具体讲解可以参考Alex
Harui的ppt:
http://blogs.adobe.com/aharui/presentations/ 下面关于module的presentation, 讲得很详细
第二个是答案是类似的:
Hello following code in your main application
import mx.Managers.*;
private var _dragManager:DragManager;
private var _historyManager:HistoryManager;
private var _popupManager:PopUpManager;
-reply by Pradip Jadhav
于是在主应用(Application)里面加上以下两句就OK了:
import jp.co.nec.necst.pi.ap2web.TestEvent;
private var testEvent:TestEvent;
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/klpk222/archive/2009/12/02/4924719.aspx
分享到:
相关推荐
title: 'Vue.js路由报错:TypeError: Cannot read property ''_c'' of undefined'错误详情:像上面这
主要介绍了Vue 报错TypeError: this.$set is not a function 的解决方法,分享给大家,需要的朋友们下面随着小编来一起学习学习吧
为大家分享了一个解决jquery插件:TypeError:$.browser is undefined报错的方法,解决报错问题的方法也很简单,需要解决此类问题的朋友不要错过这篇文章。
主要介绍了JQuery报错"Uncaught TypeError: Illegal invocation"的处理方法,需要的朋友可以参考下
TypeError: notify.sendNotifybyWxPucher is not a function!
1.需要node环境支持 2.下载模拟器->微信->搜索你要扒取的小程序(点开即可) 3.打开RE文件管理器,获取root权限,从根目录开始。...百度也有很多教程,基本大致相同,但是很多反编译脚本缺少依赖,无法完成反编译。
在调整loss计算的时候遇到了TypeError: only integer tensors of a single element can be converted to an index这个问题,原来的计算公式为: self.loss_D = (self.loss_D_fake + self.loss_D_real) * 0.5 调整后...
翻译过来是类型为“type”的TypeError对象没有len(),我报错的代码是: #coding=utf-8 print(请输入一个字符串:) a = input('') #回文的长度至少为2 if len(str) < 2: print('请不要输入空字符串!') a = ...
错误类型:文档对象未定义,解决方法,定义对象即可,习惯性定义变量嘛 var document ;? emmmmmmmmmmmmmmm….不行的,继续报错 execjs._exceptions.ProgramError: TypeError: Cannot read property '...
TypeError: loop of ufunc does not support argument 0 of type Tensor which has no callable arctan method 报错行 self.u = np.round(np.dot(self.F, self.u)) #或者 self.u = np.round(self.u + np.dot(K, ...
Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>' 点开错误的文件,标注错误的地方是这样的一段代码: import {normalTime} from './timeFormat'; module....
pickle模块只能在python中使用,python中几乎所有的数据类型(列表,字典,集合,类等)都可以用pickle来序列化, pickle序列化后的数据,可读性差,人一般无法识别。 接下来我们看下Python使用pickle模块存储数据...
TypeError: ‘NoneType’ object is not iterable 这个错误提示一般发生在将None赋给多个值时。 def myprocess(): a == b if a != b: return True, value; flag, val = myprocess() 在判断语句中,当if条件不...
TypeError: cannot concatenate ‘str’ and ‘int’ objects print str + int 的时候就会这样了 python + 作为连接符的时候,不会自动给你把int转换成str 补充知识:TypeError: cannot concatenate ‘str’ and ...
主要介绍了解决Python中报错TypeError: must be str, not bytes问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
TypeError: Unexpected keyword argument passed to optimizer: learning_rate 3.问题定位: 先看报错代码:大概意思是, 传给优化器的learning_rate参数错误。 模型训练是在服务器Linux环境下进行的,之后在...
主要介绍了Ajax方式上传文件报错"Uncaught TypeError: Illegal invocation",非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
TypeError: list indices must be integers or slices, not str 这个错误,这里就分析一下为什么会报错以及如何解决。 这个错误的意思是’类型错误:list的索引必须是’integers’或者’slices’不能是’str’ 我...