gvSIG bugs #1997
Updated by José Vicente Higón about 11 years ago
Al editar un campo alfanumérico de una capa postGIS definida como Multipolígono aparece la siguiente excepción:
<pre>
Caused by: org.postgresql.util.PSQLException: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)
</pre>
Parece ser que gvSIG actualiza todos los campos del registro modificado (incluida la geometría). El problema viene cuando en la sentencia UPDATE en vez de crear un WKB correspondiente a Mulipoligon crea una geometría de tipo Polígono y PostGIS lanza un error porque se viola una de las restricciones (no se puede añadir una geometría que no sea Multipolígono).
Además, si se carga la tabla desde el tipo de documento _Tabla_, sigue lanzando el mismo error a pesar de no seleccionar el campo geometría
!problema_editar_tabla.png!
<pre>
Caused by: org.postgresql.util.PSQLException: ERROR: Geometry type (Polygon) does not match column type (MultiPolygon)
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)
</pre>
Parece ser que gvSIG actualiza todos los campos del registro modificado (incluida la geometría). El problema viene cuando en la sentencia UPDATE en vez de crear un WKB correspondiente a Mulipoligon crea una geometría de tipo Polígono y PostGIS lanza un error porque se viola una de las restricciones (no se puede añadir una geometría que no sea Multipolígono).
Además, si se carga la tabla desde el tipo de documento _Tabla_, sigue lanzando el mismo error a pesar de no seleccionar el campo geometría
!problema_editar_tabla.png!