ʹÓÃFabrication+PureMVC¿ª·¢multi modular FlexÓ¦ÓÃ
PureMVCʵÏÖÁ˼òµ¥µÄMVC¿ò¼Ü£¬½«Ó¦Ó÷ÖΪmodel¡¢viewºÍcontrolÈý²¿·Ö¡£
ºÃ´¦ºÜ¶àÁË£¬½µµÍÁËÄ£¿éÖ®¼äµÄñîºÏÐÔ¡¢Ìá¸ßÁ˳ÌÐòµÄ¿Éά»¤ÐԺͿÉÀ©Õ¹ÐÔ¡£
fabricationÔÚPureMVC»ù´¡ÉÏ×öÁËÀ©Õ¹£¬¼ò»¯ÁËpureMVCµÄ¿ª·¢ÄѶȣ¬ÏÂÃæ¼òµ¥½éÉÜÒ»ÏÂfabricationµÄ¿ª·¢¹ý³Ì¡£
Ê×ÏÈ£¬¸ù¾ÝÐèҪʵÏÖorg.puremvc.as3.multicore.utilities.fabrication.components.FlexModule¡¢FlexApplication¡¢FlashApplication»òÕßAirApplication¡£Õâ¾ÍÊÇViewÁË¡£
ÔÚViewÖÐʵÏÖoverride public function getStartupCommand():Class ·½·¨¡£·µ»Ø³õʼ»¯CommandÀ࣬ÈçÏ£º
public class ConfigModuleStartupCommand extends SimpleFabricationCommand {
override public function execute(note:INotification):void {
registerProxy(new GetPropertyProxy());
registerCommand(ShellConstants.USERINFO_FIND, FindUserInfoCommand);
registerMediator(new ConfigModuleMediator(note.getBody() as ConfigModule));
}
}
ÔÚ³õʼ»¯ÀàÖУ¬ÐèҪע²áËùÐèÒªµÄProxy¡¢CommandºÍMediator£¬ProxyÖ÷ÒªÓÃ×÷ºÍºǫ́½øÐн»»¥£¬²éѯºÍÐÞ¸ÄÊý¾Ý£¬Õâ¾ÍÊÇmodelÁË¡£
CommandÓÃ×÷½ÓÊÕViewÖеÄʼþ£¬²¢×ö´¦Àí£¬Ò»°ãÇé¿öϾÍÊǵ÷ÓÃProxyµÄ·½·¨¡£ÈçÏ£º
public class GetPropertyCommand extends SimpleFabricationCommand {
override public function execute(note:INotification):void {
var getPropertyProxy:GetPropertyProxy = retrieveProxy(GetPropertyProxy.NAME) as GetPropertyProxy;
getPropertyProxy.fetchProperty();
}
}
µ±Proxy·½·¨µÃµ½ºǫ́·´À¡ºó£¬»á³ö·¢³É¹¦»òʧ°ÜµÄʼþ¡£ÈçÏ£º
public class GetPropertyProxy extends FabricationProxy
{
static public const NAME:String = "GetPropertyProxy";
private var _remoteService:RemoteObject;
public function GetPropertyProxy(name:String = NAME, data:Object = null)
{
super(name, data);
setup();
}
private function setup():void{
_remoteService = new RemoteObject();
_remoteService.destination = "sysService";
_remoteService.showBusyCursor = true;
_remoteService.addEventListener(ResultEvent.RESULT, result);
_remoteService.addEventListener(FaultEvent.FAULT, failed);
}
p
Ïà¹ØÎĵµ£º
sdk3.2 Ï»áÓдËÎÊÌâ.
ÏîÄ¿ÖÐÏëÓÃmoduleLoader¼ÓÔØÄ£¿é,´ïµ½Ä£¿é»¯¿ª·¢µÄÄ¿µÄ.µ«ÊdzöÏÖÁ˹²Ïí±äÁ¿µÄÎÊÌâ:
TypeError: Error #1034: Ç¿ÖÆת»»ÀàÐÍʧ°Ü:ÎÞ·¨½« Object@406e651 ת»»Îª mx.messaging.messages.IMessage¡£
´úÂë+ÉÏ// import mx.managers.PopUpManager;
// private var popUpManage ......
ÏÂÃæÊÇһЩ³£¼ûµÄ±àÒëÆ÷²ÎÊý£º
1£¬¡¾verbose-stacktraces¡¿
Ö¸¶¨SWFÔÚÔËÐÐʱÒì³£ÐÅÏ¢Öаüº¬ÐкźÍÎļþÃû£¬Õ⽫ʹ²úÉúµÄSWFÎļþ¸ü´óЩ£¬´ø
verbose-stacktracesµÄSWF»¹ÊǺ͵÷ÊÔ°æ±¾µÄSWFÓÐÇø±ðµÄ¡£
2£¬¡¾source-path path-element¡¿
Ìí¼ÓÆäËûÔ´´úÂëĿ¼»òÎļþ£¬¿ÉÒÔʹÓÃͨÅä·ûÀ´Ìí¼ÓĿ¼ÖÐËùÓÐÎļþ»ò×ÓĿ¼£¬Ò²¿ÉÊ ......
var formatter:DateFormatter = new DateFormatter();
formatter.formatString = "YYYY-MM-DD JJ:NN:SS";
Alert.show(formatter.format(new Date())); ......
Flex¿ª·¢ÕßÐèÒªÖªµÀµÄ10¼þÊÂ
×÷Õß ÕÅÁú ·¢²¼ÓÚ 2010Äê2ÔÂ18ÈÕ ÉÏÎç1ʱ25·Ö
ÉçÇø Java Ö÷Ìâ ¸»¿Í»§¶Ë/×ÀÃæ ±êÇ© Flex, Flash
²»¾ÃÇ°£¬Michael Portuesi·¢±íÁËһƪ²©ÎÄ£¬Ì¸µ½ÁËFlex¿ª·¢ÕßÐèÒªÖªµÀµÄ10¼þÊ¡£ÎÄÕ½éÉÜÁËÿ¸ö½øÈëFlexÁìÓòµÄ¿ª·¢Õ߶¼ÐèÒªÕÆÎյĻù±¾ÖªÊ¶Óë¼¼ÄÜ¡£
Michael Portuesi¸ø³öµÄ10¸öÌõÄ¿ÖУ¬ÓÐЩÊÇ¿ ......
1. ¿ª·¢¹¤¾ß £º MyEclipse5.5, FlexBuilder3, Tomcat6.
2. ¿ª·¢¹ý³Ì £º
µÚÒ»²½ £º ÏÂÔØBlazeDS, µØÖ·£ºhttp://opensource.adobe.com/wiki/display/blazeds/Release+Builds, ½âѹËõ¡£
µÚ¶þ²½ £º ÔÚMyEclipseÖÐн¨WEB¹¤³Ì£¬µ¼ÈëÒÀÀµ¿â£º
  ......