Revision: 4632 http://sourceforge.net/p/jump-pilot/code/4632 Author: edso Date: 2015-12-18 11:09:11 +0000 (Fri, 18 Dec 2015) Log Message: ----------- fix "SQLITE_ERROR] SQL error or missing database (wrong number of arguments to function st_envIntersects())"
Modified Paths: -------------- core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteSQLBuilder.java Modified: core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteSQLBuilder.java =================================================================== --- core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteSQLBuilder.java 2015-12-18 09:00:44 UTC (rev 4631) +++ core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteSQLBuilder.java 2015-12-18 11:09:11 UTC (rev 4632) @@ -1,5 +1,7 @@ package com.vividsolutions.jump.datastore.spatialite; +import java.util.Locale; + import com.vividsolutions.jts.geom.Envelope; import com.vividsolutions.jump.datastore.FilterQuery; import com.vividsolutions.jump.datastore.SpatialReferenceSystemID; @@ -94,14 +96,15 @@ if (dsm.isSpatialiteLoaded()) { GeometricColumnType gcType = dsm.getGeoColTypesdMap().get( query.getDatasetName().toLowerCase() + "." + query.getGeometryAttributeName().toLowerCase()); + // use Locale.US to enforce floating point number with a dot separator if (gcType == GeometricColumnType.SPATIALITE) { - ret = String.format("st_envIntersects(%s, %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), + ret = String.format(Locale.US, "st_envIntersects(%s, %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), env.getMinY(), env.getMaxX(), env.getMaxY()); } else if (gcType == GeometricColumnType.WKB) { - ret = String.format("st_envIntersects(st_geomFromWkb(%s), %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), + ret = String.format(Locale.US, "st_envIntersects(st_geomFromWkb(%s), %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), env.getMinY(), env.getMaxX(), env.getMaxY()); } else if (gcType == GeometricColumnType.WKT) { - ret = String.format("st_envIntersects(st_geomFromText(%s), %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), + ret = String.format(Locale.US, "st_envIntersects(st_geomFromText(%s), %f,%f,%f,%f)", query.getGeometryAttributeName(), env.getMinX(), env.getMinY(), env.getMaxX(), env.getMaxY()); } else { // TODO: log ------------------------------------------------------------------------------ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel