map = new JMap(); //Background for the feature layers ArcGISDynamicMapServiceLayer background = new ArcGISLocalDynamicMapServiceLayer(dir+"\\data\\fromShapefile.mpk"); map.getLayers().add(background); layerList = map.getLayers(); //Start new feature service to involve editable feature layer featureService = new LocalFeatureService(dir+"\\data\\MyPackage.mpk"); //Details of all layer in the feature service details = featureService.getFeatureLayers(); //Add feature layer to the map as soon as the service is started featureService.addLocalServiceStartCompleteListener(new LocalServiceStartCompleteListener() { @Override public void localServiceStartComplete(LocalServiceStartCompleteEvent arg0) { for(int i = 0; i < details.size();i++) { // The current feature layer featureLayer = new ArcGISLocalFeatureLayer(featureService.getPath(),i,true); featureLayer.setUrl(details.get(i).getUrl()); layers.add(featureLayer); layerList.add(featureLayer); } } }); //Start feature service asynchronous featureService.startAsync();