[postgis-users] adding JTS geometries to a PostGIS database
nicolas.neubauer at nokia.com
nicolas.neubauer at nokia.com
Wed Mar 28 01:52:41 PDT 2012
Hello,
I'm using the Java Topology Suite (JTS) and I want to store geometries with PostGIS. How do I do that?
What works:
statement = conn.prepareStatement("INSERT INTO sometable (geofield) values (?)");
org.postgis.PGgeometry m = new org.postgis.PGgeometry(myJtsGeometry.toText());
statement.setObject(1, m);
statement.execute();
What I would prefer:
statement.setObject(1, myJtsGeometry);
statement.execute();
According to http://postgis.refractions.net/documentation/javadoc/org/postgis/DriverWrapper.html, the DriverWrapper is supposed to take care of the wrapping. However, even when I add
DriverWrapper.addGISTypes80((org.postgresql.PGConnection)conn);
I get the error message
Can't infer the SQL type to use for an instance of com.vividsolutions.jts.geom.MultiPolygon. Use setObject() with an explicit Types value to specify the type to use.
I am connecting to
jdbc:postgresql_postGIS://localhost:5432/
The driver class is
org.postgis.DriverWrapper
What am I missing? Or is the first, working way the right one? Seems like a waste of time to me, converting binary -> text -> binary...
Thanks
Nicolas
More information about the postgis-users
mailing list