gvSIG bugs #2354
Error al guardar capa de líneas en PostGIS 2.0
Status: | Closed | % Done: | 0% | |
---|---|---|---|---|
Priority: | Normal | Spent time: | - | |
Assignee: | Juan Lucas Domínguez | |||
Category: | Database | |||
Target version: | 2.1.0-2221-testing | |||
Severity: | Add-on version: | |||
gvSIG version: | 2.1.0 | Add-on build: | ||
gvSIG build: | 2220 | Add-on resolve version: | ||
Operative System: | Add-on resolve build: | |||
Keywords: | Proyecto: | |||
Has patch: | No | Hito: | ||
Add-on name: | Unknown |
Description
El problema nos surge cuando insertamos una línea con gvSIG en una capa de PostGIS (tipo_geom = LINESTRING) y intentamos guardarla, nos da un error. Concretamente nos aparece que viola nuestra restricción de PostGIS “check enforce_geotype_geom”. Según aparece en la ventana de atributos el formato de geometría almacenado por gvSIG al parecer es “Curve2D”…puede ser por eso?...Aunque en las capas de polígonos tenéis “Surface2D” y nos deja almacenar correctamente los resultados en capa de PostGIS tipo “POLYGON”….
History
#1 Updated by Álvaro Anguix about 10 years ago
- Assignee set to Juan Lucas Domínguez
- Target version set to 2.1.0-2221-testing
#2 Updated by Juan Lucas Domínguez about 10 years ago
- Status changed from New to In progress
#3 Updated by Juan Lucas Domínguez about 10 years ago
Una posible solución mientras intento mejorarlo es cambiar la restricción en la BD:
ALTER TABLE "table_name" DROP CONSTRAINT enforce_geotype_geom;
ALTER TABLE "table_name" ADD CONSTRAINT enforce_geotype_geom
CHECK (geometrytype("geometry_field") = 'MULTILINESTRING'::text);
Ya que gvSIG no es consciente de las restricciones y se decanta por MultiCurve2D.
#4 Updated by Juan Lucas Domínguez about 10 years ago
El cambio propuesto en la restricción puede valer para tablas nuevas, pero este cambio es mejor para tablas ya existentes:
UPDATE geometry_columns SET type = 'LINESTRING' WHERE f_table_name = 'table_name'
De todas formas había un pequeño bug que voy a subir a continuación.
#5 Updated by Juan Lucas Domínguez about 10 years ago
- Status changed from In progress to Fixed
Respecting geometry type when converting to JTS (from Curve to Linestring, not MultiLinestring).
#6 Updated by Álvaro Anguix about 10 years ago
- Status changed from Fixed to Closed