Estou iniciando meus estudos do SWIZ framework e estou usando os livros e
ebooks do Daniel e o código está dando um erro que não consigo resolver:
Error: InjectProcessor Error: bean of type [class EstadoController] not
found! at org.swizframework.processors::InjectProcessor/addInjectByType()...
*beans/Bean.mxml*
<?xml version="1.0" encoding="utf-8"?>
<swiz:BeanProvider
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:swiz="http://swiz.swizframework.org"
xmlns:services="services.*" xmlns:controllers="controllers.*">
<swiz:ServiceHelper id="serviceHelper" />
</swiz:BeanProvider>
*controllers/ControllerBase.as*
package controllers
{
import flash.events.IEventDispatcher;
import org.swizframework.utils.services.ServiceHelper;
public class ControllerBase
{
[Dispatcher]
public var dispatcher:IEventDispatcher;
[Inject]
public var serviceHelper:ServiceHelper;
}
}
*controllers/EstadoController.as*
package controllers
{
import events.EstadoEvent;
import mx.collections.ArrayCollection;
import mx.collections.ArrayList;
import mx.collections.IList;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import services.EstadoService;
import valueObjects.EstadoVO;
public class EstadoController extends ControllerBase
{
[Inject]
public var estadoService:EstadoService;
[Bindable]
public var dataProvider:ArrayList;
[Bindable]
public var currentEstado:EstadoVO;
public function getAll():void{
this.serviceHelper.executeServiceCall(estadoService.getAll(),
onGetAll);
}
private function onGetAll(event:ResultEvent):void{
this.dataProvider = new ArrayList(event.result as Array);
dispatcher.dispatchEvent(new EstadoEvent(EstadoEvent.GETALL));
}
}
}
*events/EstadoEvent.as*
package events
{
import flash.events.Event;
public class EstadoEvent extends Event
{
public static const CREATE:String = "EstadoEvent.CREATE";
public static const SAVE:String = "EstadoEvent.SAVE";
public static const DEL:String = "EstadoEvent.DEL";
public static const GETALL:String = "EstadoEvent.GETALL";
public function EstadoEvent(type:String)
{
super(type, true, true);
}
}
}
*services/ServiceBase.as*
package services
{
import mx.rpc.remoting.mxml.RemoteObject;
public class ServiceBase extends RemoteObject
{
public function ServiceBase(source:String)
{
super("amf");
this.endpoint = "../gateway.php";
this.source = source;
}
}
}
*services/EstadoService.as*
package services
{
public dynamic class EstadoService extends ServiceBase
{
public function EstadoService()
{
super("EstadoService");
}
}
}
*valueObjects/EstadoVO.as*
package valueObjects
{
[Bindable]
[RemoteClass(alias="EstadoVO")]
public class EstadoVO
{
public var id:int;
public var nome:String;
}
}
*views/EstadoView.mxml*
<?xml version="1.0" encoding="utf-8"?>
<s:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
title="Estados"
width="400" height="300">
<s:layout>
<s:VerticalLayout paddingTop="10" paddingRight="10"
paddingBottom="10" paddingLeft="10" />
</s:layout>
<fx:Script>
<![CDATA[
import controllers.EstadoController;
import events.EstadoEvent;
import spark.events.GridSelectionEvent;
import valueObjects.EstadoVO;
[Inject]
[Bindable]
public var estadoController:EstadoController;
[PostConstruct]
public function onPostConstruct():void{
estadoController.getAll();
}
]]>
</fx:Script>
<s:DataGrid id="dataGrid" width="100%" height="100%"
dataProvider="{estadoController.dataProvider}">
<s:columns>
<s:ArrayList>
<s:GridColumn dataField="nome" headerText="Nome" />
<s:GridColumn dataField="id" headerText="ID"
visible="false" />
</s:ArrayList>
</s:columns>
</s:DataGrid>
</s:Panel>
--
Wemerson Guimarães
Rio Verde - Go - Brasil
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev