logo
  • Home
  • Acerca
  • Autores
  • Faq
  • Rede
  Twitter   Feed-me! RSS!

TUTORIAL JAVA + FLEX NA PRÁTICA (9) – Atualizando o Swiz

Colocado por Janderson Cardoso na(s) categoria(s): #JAVA + FLEX NA PRÀTICA, Action Script 3.0, Adobe Flex, Código Fonte java, Dicas, Ria’s Geral, Swiz Framework, TUTORIAL FLEX, TUTORIAL JAVA, código fonte Flex, mvc, pratica java flex em 01 26th, 2010 | Sem comentários

 TUTORIAL JAVA + FLEX NA PRÁTICA (9)   Atualizando o Swiz

Outra dúvida muito solicitada por email pela galera é a respeito da atualização do swiz, quando atualiza o framework logo de kara dá erro,confesso que esse tempo todo não trabalhei com projetos usando o swiz, só quando fiz esse Tutorial, e também por falta de tempo, não atualizei o framework, mas esse final de semana para minha surpresa tentei migrar e foi super tranquilo, então vou passar a dica para vocês agora.

Esse artigo é continuação do

TUTORIAL JAVA + FLEX NA PRÁTICA 1/6

TUTORIAL JAVA + FLEX NA PRÁTICA 2/6

TUTORIAL JAVA + FLEX NA PRÁTICA 3/6

TUTORIAL JAVA + FLEX NA PRÁTICA 4/6

TUTORIAL JAVA + FLEX NA PRÁTICA 5/6

TUTORIAL JAVA + FLEX NA PRÁTICA 6/6

TUTORIAL JAVA + FLEX NA PRÁTICA 7/6 – Bônus

TUTORIAL JAVA + FLEX NA PRÁTICA 8 – Datas

Caso queira o projeto java é só baixar aqui (sem as libs).

Caso queira o projeto java é só baixar aqui.(com as libs).

Caso queira o projeto flex é só baixar aqui.

ATUALIZANDO O SWIZ FRAMEWORK

Primeira coisa que vamos fazer é baixar a última versão stable e atualmente (25/01/2009) é a swiz-0.6.4-flex3.swz. Digo isso porque vi no site da swiz que existe a versão alpha 1.0 do framework, esse sim pelo que vi terá algumas novidades notável, como metadata personalizado, estou migrando para essa versão 0.6.4 e quando lançar a 1.0 atualizo vocês por aqui no blog ;) . vamos ao que interessa .

  1. se ainda não baixou baixe o swiz-0.6.4-flex3.swz.
  2. na pasta libs do nosso projeto flex (CrudFlex) retiramos a antiga lib (swiz-0.0.5-010609.swc) e adicionamos a nova 0.6.4.

depois de ter feito isso vai dar erro na nossa models.delegates, isso porque a classe AbstractDelegate foi retirada do framework do swiz, basta retirar o extends AbstractDelegate que nossa classe voltará a funcionar, se vc tentar rodar agora já vai funcionar, blz.. espero que tenha ajudado muita gente.

Tô brincando galera… já que é para atualizar vamos atualizar direito..hehe assim funciona mais não está de acordo com a documentação do Swiz.

Próximo passo nosso será criar o nosso SwizConfig, no nosso projeto na index.mxml temos um preinitialize que invocava a funcção que iniciava o Swiz, agora temos o Swiz config que substitui essa antiga configuração, então nosso index.mxml era assim:

PLAIN TEXT
XML:

  1. <?xml version=“1.0″ encoding=“utf-8″?>
  2. <mx:Application xmlns:mx=“http://www.adobe.com/2006/mxml” layout=“absolute”
  3.     preinitialize=“{iniciar(event)}”>
  4.    
  5.     <mx:Script>
  6.         <![CDATA[
  7.             import com.saberprogramar.views.CidadeView;
  8.             import com.saberprogramar.views.EstadoView;
  9.             import mx.managers.PopUpManager;
  10.             import org.swizframework.Swiz;     
  11.             import mx.events.FlexEvent;   
  12.            
  13.             private function iniciar(event:FlexEvent):void{    
  14.                 Swiz.setStrict(false).loadBeans( [Beans] );           
  15.             }
  16.            
  17.             private function chamarCidadeView():void{
  18.                 PopUpManager.createPopUp(this,CidadeView,false);
  19.             }
  20.            
  21.             private function chamarEstadoView():void{
  22.                 PopUpManager.createPopUp(this,EstadoView,false);
  23.             }
  24.            
  25.         ]]>
  26.     </mx:Script>
  27.     <mx:Button x=“10″ y=“22″ label=“Estado” height=“52″ width=“88″ click=“{chamarEstadoView()}”/>
  28.     <mx:Button x=“10″ y=“93″ label=“Cidade” width=“88″ height=“54″ click=“{chamarCidadeView()}”/>
  29.    
  30.    
  31. </mx:Application>

ficou agora assim:

PLAIN TEXT
XML:

  1. <?xml version=“1.0″ encoding=“utf-8″?>
  2. <mx:Application xmlns:mx=“http://www.adobe.com/2006/mxml” layout=“absolute”
  3.     xmlns:swiz=“http://swiz.swizframework.org”>
  4.    
  5.     <mx:Script>
  6.         <![CDATA[
  7.             import mx.logging.LogEventLevel;
  8.             import com.saberprogramar.views.CidadeView;
  9.             import com.saberprogramar.views.EstadoView;
  10.             import mx.managers.PopUpManager;
  11.             import org.swizframework.Swiz;     
  12.             import mx.events.FlexEvent;   
  13.                                    
  14.             private function chamarCidadeView():void{
  15.                 PopUpManager.createPopUp(this,CidadeView,false);
  16.             }
  17.            
  18.             private function chamarEstadoView():void{
  19.                 PopUpManager.createPopUp(this,EstadoView,false);
  20.             }
  21.            
  22.         ]]>
  23.     </mx:Script>
  24.    
  25.     <swiz:SwizConfig
  26.         strict=“true”
  27.         eventPackages=“com.saberprogramar.events”
  28.         mediateBubbledEvents=“true”
  29.         viewPackages=“com.saberprogramar.views”
  30.         beanLoaders=“{[Beans]}”  
  31.         logEventLevel=“{LogEventLevel.WARN}”
  32.     />
  33.    
  34.     <mx:Button x=“10″ y=“22″ label=“Estado” height=“52″ width=“88″ click=“{chamarEstadoView()}”/>
  35.     <mx:Button x=“10″ y=“93″ label=“Cidade” width=“88″ height=“54″ click=“{chamarCidadeView()}”/>
  36.        
  37. </mx:Application>

tá, mas se funcionava antes porque vou fazer isso? explico, está vendo esse viewPackages e eventPackeges, isso é muito importante para usar uma nova Metadata do Swiz, o mediate, tinha na versão anterior mas não era interessante como agora , já que agora conseguimos passar para o nosso Mediate nosso Evento customizado, tudo isso graças a esse atributo eventPackeges. Além disso na 1.0 esse arquivo vai ser mantido pelo que vi, então você estará mais próximo para atualizar quando o mesmo for lançado.

USANDO O MEDIATE

Mas afinal o que é esse Mediate? o Mediate é uma Metadata, assim como usamos o Autowire, que serve para não precisar ficar adicionando escuta de eventos, vamos explicar na prática… vá em “views.action.CidadeAction” na função init temos duas escuta de evento

PLAIN TEXT
ACTIONSCRIPT:

  1. Swiz.addEventListener(CidadeEvent.SAVE,onSaveComplete);
  2.     Swiz.addEventListener(CidadeEvent.REMOVE,onRemoveComplete);

não precisamos fazer mais isso, pode apagar.. agora vá na função onSaveComplete e coloque o Mediate

PLAIN TEXT
ACTIONSCRIPT:

  1. [Mediate(event=“CidadeEvent.SAVE”)]
  2. public function onSaveComplete(event:CidadeEvent):void{ 
  3.     stack.selectedChild = canvasDefault;
  4.     findAll();
  5. }

o mesmo no onRemoveComplete

PLAIN TEXT
ACTIONSCRIPT:

  1. [Mediate(event=“CidadeEvent.REMOVE”)]
  2. public function onRemoveComplete(event:CidadeEvent):void{
  3.     stack.selectedChild = canvasDefault;
  4.     findAll();
  5. }

e como as duas funções fazem a mesma coisa podemos também utilizar de uma apenas assim:

PLAIN TEXT
ACTIONSCRIPT:

  1. [Mediate(event=“CidadeEvent.SAVE”)]
  2. [Mediate(event=“CidadeEvent.REMOVE”)]
  3. public function onSaveComplete(event:CidadeEvent):void{ 
  4.     stack.selectedChild = canvasDefault;
  5.     findAll();
  6. }

só observe que foi necessário modificar o “modificador de acesso” para public, caso contrário não funciona.

Agora sim é isso galera, o swiz está por enquanto atualizado, vi alguns exemplos na internet usando coisas que nunca vi no swiz(Documentação) por isso me retive e mostrei baseado na documentação… seguindo os passos do mesmo..(Os delegates não são mais necessários mas já que está aí resolvi manter). Espero que te ajude e estimule a manter o framework atualizado, porque esse merece seu carinho e atenção :)

Cumps.

  • Share this on del.icio.us
  • Digg this!
  • Share this on Reddit
  • Share this on Technorati
  • Share this on Facebook
  • Tweet This!
  • Subscribe to the comments for this post?
  • Share this on FriendFeed
  • Send this page to Print Friendly

Similar Posts:

  • TUTORIAL JAVA + FLEX NA PRÁTICA 3/6
  • TUTORIAL JAVA + FLEX NA PRÁTICA 6/6
  • TUTORIAL JAVA + FLEX NA PRÁTICA 4/6
  • TUTORIAL JAVA + FLEX NA PRÁTICA 5/6
  • TUTORIAL JAVA + FLEX NA PRÁTICA 7/6 – Bônus

 TUTORIAL JAVA + FLEX NA PRÁTICA (9)   Atualizando o Swiz



Veja o post original no blog do autor aqui!  

Janderson Cardoso

Escrito por Janderson Cardoso @ http://www.jandersonfc.com/
Saiba mais sobre o autor na sua pagina de perfil
Outros posts do autor:
» Junit – Testando Métodos Privados com Reflection
» Rio 40°, aí vou eu!
» #flexmania 2010 – disponibilizando código fonte

Deixe um comentário



Spam Protection by WP-SpamFree

ACERCA

O que é o RedeRIA ?

O redeRIA não é nada mais que um agregador de feed's que disponibiliza o conteudo de varios blogs e autores ao redor do mundo RIA, actualmente agregamos mais de 1861 entradas vindas de 47 blogs especializados em ria’s, pelo que só fica a ganhar em assinar o feed ou seguir a comunidade no twitter.

Se acha que o seu blog ou um blog de um amigo é interessante e util para os leitores o redeRIA, faça a sua submissão aqui.

Feed: assine já
Twitter: siga-nos

GOOGLE

Votação


Está o rederia mias rápido??
Ver Resultados

AUTORES


Eduardo KrausAlexandreBindableDaniel LopesDaniel SchmitzDClick TeamEbercomEdgard DavidsonElvis FernandesErko BrideeFabiel PrestesFábio Batista da SilvaFabio da SilvaFabriccio BernardesFlavia MoreiraGabriel VersalliniGabriela T. PerryIgor MusardoJanderson CardosoJoão AugustoJose Carlos FielKelps SousaLeonardo FrançaLucas MarçalLuis MessiasLuiz TarabalMario JuniorMário SantosMauro MartinsPedro ClaudioreneRia BrazilriaPTRicardo CerqueiraRobson FernandesRodrigo Pereira FragaSaintBrSergio SouzaSilva DeveloperStefan HorochovecTech CaffeTecinforThiago BuenoVedVinícius SandimXAML Cast

PUBLICIDADE








Powered by Wordpress & msdevstudio.com