karthikbharadwaj

Adding FeatureLayer issue

Discussion created by karthikbharadwaj on May 1, 2012
Latest reply on May 2, 2012 by karthikbharadwaj
Hi I am currently exploring ARCGIS Javascript API. I have my own map services and feature services up on my local server. I would want to use the FeatuerLayer to select and highlight feature on the map. But when i add my feature service i get the following error.

TypeError: Unable to draw graphic (geometry:null, symbol:null): _14 is undefined**


I am not able to figure out what this could be. And I am not sure if the feature layer has been added to the map or not. How could I check if it has been added? I tried using a dojo.connect method with the FeatureLayer with an onClick event. But this doesn't seem to work. Have placed the code below

dojo.require("dijit.layout.ContentPane"); dojo.require("esri.map"); dojo.require("esri.layers.FeatureLayer"); dojo.require("esri.tasks.query");

var map; var selectionToolbar; var infoTemplate = new esri.InfoTemplate(); infoTemplate.setTitle("${ROADNAME}"); infoTemplate.setContent( "ROAD NAME: ${LINK_ID}
" + "CAT${CAT}");

function init() {

  try {

var initExtent = new          esri.geometry.Extent({"xmin":103.55,"ymin":1.13,"xmax":104.16,"ymax":1.56,"spatialReference":{"wkid":4326}});
map = new esri.Map("map",{extent:esri.geometry.geographicToWebMercator(initExtent)});

var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer");

//my map service layer

var basemap_sing = new esri.layers.ArcGISTiledMapServiceLayer("http://karthikpc:8399/arcgis/rest/services/Carriage_Mercantor/MapServer",{ displayLevels:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]});

// my feature layer which i am not able to use
var featureLayer = new esri.layers.FeatureLayer("http://karthikpc:8399/arcgis/rest/services/Carriage_Mercantor/FeatureServer", { mode: esri.layers.FeatureLayer.MODE_ONDEMAND, infoTemplate: infoTemplate, outFields: ["*"] });

map.addLayer(basemap); map.addLayer(base_sing); map.addLayer(featureLayer);

dojo.connect(map, "onLoad", initSelectToolbar); dojo.connect(featureLayer."onClick",helloworld); } catch(e){ alert('An error has occurred: '+e.message); }

}

function helloworld(){ alert("hello world"); }

dojo.addOnLoad(init);

Outcomes