//In the Config.xml for each secured map service add token="x" //In the ConfigManager.as look for the //================================================ //map //section and add var msToken:String = mapserviceList.@token; //right above 'var msLabel:String = mapserviceList.@label;' //then replace var mapservice:Object = { label: msLabel, type: msType, visible: msVisible, alpha: msAlpha, url: msURL } //with var mapservice:Object = { label: msLabel, type: msType, visible: msVisible, alpha: msAlpha, url: msURL, token: msToken } //Now in MapManger look for 'for (i = 0; i < configData.configMap.length; i++)' //and add var token:String = configData.configMap.token; //to the list of vars //Then look for case "tiled": and add if(token) tiledlayer.token = token; //before 'map.addLayer(tiledlayer);' //Then look for case "dynamic": and add if(token) dynlayer.token = token; //before 'map.addLayer(dynlayer);' //That should do it.
<Project> <tittle>DRAFT map</tittle> <type>EALP</type> <id>103371,101400</id> <ip>192.168.*.*</ip> <token>V1duPcHY9JIdfdfdfwqiakdtef,lfAqqw4OGhuWi774rySvM</token> </Project>
public function resultHandler1(event:ResultEvent):void { title=(event.result.Project.tittle.toString()); type=new String(); type=(event.result.Project.type.toString()); id=new String(); id=(event.result.Project.id.toString()); //id associated with project Alert.show(id + type); idArr=ttidProj.split(","); idArrLen=ttidArr.length; secToken = new String(); secToken=(event.result.Project.token.toString()); Alert.show(secToken);
case "dynamic": { var dynLayer:ArcGISDynamicMapServiceLayer = new ArcGISDynamicMapServiceLayer(url,null,secToken); dynLayer.id = label; dynLayer.name = label; //I tried uncommenting the line blow and removed token parameter from from function above, all i get is similar result //dynLayer.token = secToken; dynLayer.visible = visible; dynLayer.useMapTime = useMapTime; dynLayer.imageFormat="png24"; defQuery = new Array();
case "dynamic": { var dynLayer:ArcGISDynamicMapServiceLayer = new ArcGISDynamicMapServiceLayer(url,null,secToken); dynLayer.id = label; dynLayer.name = label; //I tried uncommenting the line blow and removed token parameter from from function above, all i get is similar result //dynLayer.token = secToken; dynLayer.visible = visible; dynLayer.useMapTime = useMapTime; dynLayer.imageFormat="png24"; defQuery = new Array();
package com.esri.viewer.managers { import mx.rpc.http.HTTPService; import mx.rpc.events.ResultEvent; public class RemoteService { private var remoteService : HTTPService = new HTTPService(); function RemoteService() : void { remoteService = new HTTPService(); remoteService.url = "http://localhost:8080/docs/ttid.xml"; //remoteService.addEventListener(ResultEvent.RESULT, handleNextResult); } public function callServ(callback : Function) : void { // the listener on the result event will call the callback with the return value var listener : Function = function(event : ResultEvent) : void { remoteService.removeEventListener(ResultEvent.RESULT, listener); callback(remoteService.lastResult); } remoteService.addEventListener(ResultEvent.RESULT, listener); // do the actual call remoteService.send(); } } }
private var remoteServiceProxy : RemoteService = new RemoteService(); //loadConfig(); remoteServiceProxy.callServ(function(result : Object): void { secToken=result.Project.token; flag="1"; });
remoteServiceProxy.callServ(function(result : Object): void { secToken=result.Project.token; flag="1"; if (flag=="1") { loadConfig(); } });
remoteServiceProxy.callServ(function(result : Object): void { secToken=result.Project.token; loadConfig(); });
Alert.show(secToken);in loadConfig(), I can see the token twice.