Hi Roman, I created a Jewel+crux project with the sdk archetypes [1]. Then, I added your files and completed with some other... The truth is that with all your tests it was complicated for me to know what I was doing 😝 so I isolated a small MVC.
I couldn't finish the tests because I still can't connect to the backend you sent me in a previous query (http://132...:8080/messagebroker/websocket-amf). Could you download the project and make a first check with your localhost? Let me know what results you get and we'll continue from this point. [1] https://github.com/mjesteve/royale-examples/tree/laboratory/romanisitua/RomanIsitua/ASimpleRoyaleTestApp Hiedra. De: Maria Jose Esteve <mjest...@iest.com> Enviado el: sábado, 18 de septiembre de 2021 19:48 Para: users@royale.apache.org Asunto: RE: crux not injecting model in view 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<mailto:romanisi...@gmail.com>> Enviado el: sábado, 18 de septiembre de 2021 18:37 Para: users@royale.apache.org<mailto: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<http://ns.apache.org/royale/basic>" xmlns:j="library://ns.apache.org/royale/jewel<http://ns.apache.org/royale/jewel>" xmlns:crux="library://ns.apache.org/royale/crux<http://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<http://ns.apache.org/royale/jewel>" xmlns:js="library://ns.apache.org/royale/basic<http://ns.apache.org/royale/basic>" xmlns:html="library://ns.apache.org/royale/html<http://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>