Is it possible to direcly connect to ESRI 10.3 database using geotools ?

I use geotools 13.0 and have ESRI database set up on oracle. Previously I was able to connect to SDE using gt-arcsde-plugin but since ESRI 10.3 there is no SDE service. Whats more, there is no jsde_sdk.jar provided which is required by the geotools arcsde plugin.

I was trying to set up direct connection - but did not succeed. I get 'ClassNotFoundException' pointing that there is no: com.esri.sde.sdk.client.SeException.

1 Answer 1


You can access Oracle with GDAL/OGR with the OCI driver . You can also access nearly 100 other vector formats, http://gdal.org/ogr_formats.html

The Geotools docs say that you can use OGR as a plugin. So it should be possible to use the OGR plugin in GeoTools to access ESRI 10.3 Oracle geodatabases.

  • Thank you for the answer. I am sure I will need to deal with file geodatabase sooner or later so it will be very useful. But the problem is that my data is not stored in filegeodatabase but in oracle tables. So I will need direct connect to those. Commented Apr 22, 2015 at 5:39
  • @MarcinRoguski I totally overlooked the Oracle part but the answer is still the same (OGR has many drivers). I've edited the answer to now be for Oracle instead of FGDB.
    – elil
    Commented Apr 22, 2015 at 16:28
  • Unfortunatelly this did not work. I added dependency to gt-ogr-jni to my pom and downloaded the gdal native libraries. I put them inside the folder whose path was added to java.library.path and to system PATH. When I tried to enlist available drivers I got exception that java cannot find dependency libraries for gdaljni.dll. Even when I added all the rest libraries to the proper folder I got the same error. Commented Apr 28, 2015 at 11:33
  • I also tried using gt-arcsde-plugin as it says that it supports DC. But when I modified the params as stated here: docs.geotools.org/stable/userguide/library/data/arcsde.html but I always got errors concerning the given parameters (for example that server 'none' cannot be found or 'port' is not a valid number. Commented Apr 28, 2015 at 11:38
  • Looks like something is changed. When I put the following parameters: parameters.put( "dbtype", "arcsde" ); parameters.put( "server", "none" ); parameters.put( "port", "sde:oracle11g:<my_tns_name>" ); parameters.put( "user", "<my_db_user>" ); parameters.put( "password", "<my_password>" ); I got different error: java.lang.UnsatisfiedLinkError: no sdejavautil in java.library.path I know that this dll should be in java.library.path, the problem is: I don't know where to find it. It is not in arcsde install path. Commented Apr 28, 2015 at 12:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.