Thanks for helping out. I forgot to attach the GenericLOV source code.
Find attached to this email. On Sat, Sep 18, 2021 at 6:48 PM Maria Jose Esteve <mjest...@iest.com> wrote: > Hi Roman, > > I saw your previous code and now I will see this one you attach. I will > try to help you BUT I don't know if I will be able to because although I > use Crux and amf my implementation is different from yours and I don't > control all the concepts (my original project was set up by a Royale expert > company). > > > > I'll let you know if I get something. > > Hiedra. > > > > *De:* Roman Isitua <romanisi...@gmail.com> > *Enviado el:* sábado, 18 de septiembre de 2021 18:37 > *Para:* users@royale.apache.org > *Asunto:* crux not injecting model in view > > > > I intend to populate a jewel drop down with data from the server. I have > configured the controller and service in the Beans.xml file. > > From the logs injection happens. > > > > However, I have observed that the model is not injected into the view. > > > > Any ideas ? > > > > My code is implemented as follows > > > > LovBO > > > > public class LovBO > > { > > > > /** > > > * The [Dispatcher] metadata tag instructs Crux to inject an event > dispatcher. > > > * Event's dispatched via this dispatcher can trigger event mediators. > > */ > > [Dispatcher] > > public var dispatcher : IEventDispatcher; > > > > [Inject( "lovService" )] > > public var lovService:RemoteObject; > > > > [Inject] > > public var serviceHelper:ServiceHelper; > > > > [Bindable] > > public var _lovs:Array; > > > > [Bindable] > > public var _lovs2:ArrayList; > > > > LovController > > > > public class LovController > > { > > [Inject] > > public var lovBO:LovBO; > > > > // [Bindable] > > public var genericLovs:ArrayList; > > > > public function LovController() > > { > > trace(' -- LovController -- '); > > } > > > > /** > > > * [PostConstruct] methods are invoked after all dependencies are > injected. > > > * In this example, we set up a default user after the bean is > created. > > */ > > [PostConstruct] > > public function fetchLovs() : void > > { > > > > trace(' -- [PostConstruct] fetch lovs country prefix -- '); > > > > //genericLovs = lovBO.lov2; > > > > lovBO.lov2; > > } > > > > Beans.xml > > <services:LovBO id="lovBO"/> > > <controllers:LovController id="lovController"/> > > > > > > The application.mxml > > > > > > > > <j:Application xmlns:fx="http://ns.adobe.com/mxml/2009" > > xmlns:js="library://ns.apache.org/royale/basic" > > xmlns:j="library://ns.apache.org/royale/jewel" > > xmlns:crux="library://ns.apache.org/royale/crux" > > xmlns:config="com.spacio.fm.client2.config.*" > > xmlns:views="com.spacio.fm.client2.views.*" > > initialize="setUp;initApp(event);"> > > > > <!-- <fx:Style source="../../main/resources/default.css"/> --> > > <fx:Script> > > <![CDATA[ > > > > public function setUp():void > > { > > tracer('application setUp stub'); > > } > > > > private function initApp(event:Event): void > > { > > trace(" -- initApp -- "); > > > > > > > > > > trace(" -- end of init app -- "); > > } > > > > ]]> > > </fx:Script> > > > > <j:valuesImpl> > > <js:SimpleCSSValuesImpl /> > > </j:valuesImpl> > > > > > > > > <j:beads> > > <crux:JSStageEvents packageExclusionFilter="_default_"/> > > <crux:Crux> > > <crux:beanProviders> > > <config:Beans/> > > </crux:beanProviders> > > <crux:config> > > <crux:CruxConfig > > eventPackages="com.spacio.fm.client2.events.*" > > viewPackages="com.spacio.fm.client2.views.*" > > /> > > </crux:config> > > </crux:Crux> > > <js:ClassAliasBead /> > > </j:beads> > > > > <j:initialView> > > <views:MainView width="100%" height="100%"/> > > </j:initialView> > > > > </j:Application> > > > > MainView.mxml ( I have attached the complete source for the MainView.xml. > and the other classes) > > > > > > <j:View xmlns:fx="http://ns.adobe.com/mxml/2009" > > xmlns:j="library://ns.apache.org/royale/jewel" > > xmlns:js="library://ns.apache.org/royale/basic" > > xmlns:html="library://ns.apache.org/royale/html" > > initComplete="initCompleteHandler(event)" > > xmlns:views="com.spacio.fm.client2.views.*" > > > > > > > <j:beads> > > <js:SimpleStatesImpl/> > > <js:ViewDataBinding/> > > <!-- <js:ContainerDataBinding/> --> > > </j:beads> > > > > <j:states> > > <js:State name="joinus" /> > > <js:State name="registerFM" /> > > <js:State name="loggedIn" /> > > </j:states> > > > > > <!-- xmlns:binding="org.apache.royale.binding.*" > xmlns:models="com.spacio.fm.client2.model.*" > xmlns:models="com.spacio.fm.client2.service.*" > > > > <fx:Script source="MainBean.as"> > > </fx:Script> --> > > <fx:Script> > > <![CDATA[ > > import org.apache.royale.jewel.PopUp; > > import org.apache.royale.events.CloseEvent; > > import org.apache.royale.jewel.Button; > > import org.apache.royale.events.MouseEvent > ; > > import org.apache.royale.collections.ArrayList; > > > > [Bindable] > > public var genericLovs:ArrayList; > > > > //example of setter style binding Injection > > [Inject( source = "lovController.lovBO._lovs2", bind = "true" )] > > public function setGenericLovs(val:ArrayList):void > > { > > trace("injected lov array list. hurray !! "); > > > > this.genericLovs = val; > > > > trace(" generic lov has been set ! "); > > } > > > > // the dropdown defined as follows > > > > > > > > <j:DropDownList id="phoneCountryPrefix" width="30%" labelField= > "description" dataProvider="{genericLovs}"> > > </j:DropDownList> > > > > > > > > >
GenericLOV.as
Description: Binary data