I recently found an issue with Geotools and getting the datastore for a shapefile.
If I try:
FileDataStore dataStore = FileDataStoreFinder.getDataStore(file);
-or-
Map connect = new HashMap();
connect.put("url", file.toURL());
DataStore dataStore = DataStoreFinder.getDataStore(connect);
getDataStore() always returns null. But using:
ShapefileDataStore dataStore = new ShapefileDataStore(file.toURI().toURL());
then the dataStore is set to the shapefile. Anyone have any ideas why this is? Is this a bug with Geootools 8.2? I'm running Geotools on Tomcat 7, perhaps there is some issue with Tomcat and the DataStore and FileDataStore classes?
Thanks!
Best Answer
Check your class path, it might miss the jars that are able to read the shape file:
Check the availabel DataStores:
if the List is empty, then the necessary jar is missing in the classpath.
In my case, using an old version of geotools, I had to add the
gt2-shapefile-2.3.2
to the classpath