[Gvsig_desarrolladores] Problemas seleccionando después de borrado

Nacho Uve nachouve en gmail.com
Lun Mar 29 19:07:02 CEST 2010


Hola,

Estamos estabilizando el código de NavTable para gvSIG-1.9. Tenemos una
función para eliminar un registro de una capa vectorial. El código ha sido
extraído de otras partes del código de gvSIG donde se realizada esa acción.

El código es el siguiente:

                VectorialLayerEdited vle =
CADExtension.getCADTool().getVLE();
                VectorialEditableAdapter vea = vle.getVEA();

                vea.startComplexRow();

                vea.doRemoveRow((int)currentPosition, EditionEvent.GRAPHIC);

                vea.endComplexRow("Removed_Record");
                vle.clearSelection(VectorialLayerEdited.NOTSAVEPREVIOUS);
                vea.getSelection().clear();

                te.stopEditing(layer, false);

El código funciona correctamente borrando el registro situado en la posición
"currentPosition", pero si a continuación se selecciona cualquier elemento
de esa capa se produce el siguiente error:

DEBUG [AWT-EventQueue-1] (NotificationManager.java:104) -
java.lang.NullPointerException
java.lang.NullPointerException
    at
com.iver.cit.gvsig.layers.VectorialLayerEdited.selectionChanged(VectorialLayerEdited.java:635)
    at
com.iver.cit.gvsig.fmap.layers.SelectionSupport.fireSelectionEvents(SelectionSupport.java:127)
    at
com.iver.cit.gvsig.fmap.layers.SelectionSupport.setSelection(SelectionSupport.java:66)
    at
com.iver.cit.gvsig.fmap.layers.SelectableDataSource.setSelection(SelectableDataSource.java:402)
    at
es.udc.cartolab.gvsig.navtable.AbstractNavTable.selectCurrentFeature(AbstractNavTable.java:608)

Debugeando he visto que el código de VectiorialLayerEdited devuelve un NULL
pointer en:
                            getVEA().getSelection().isEmpty()

¿Cómo podemos solucionar este comportamiento?
Muchas gracias!!!



-- 
Juan Ignacio Varela García (Nacho Uve)
Coordinador Grupo de Desarrollo
Cartolab - Laboratorio de Ingeniería Cartográfica
http://www.cartolab.es

ETS Ingeniería de Caminos, Canales y Puertos
Universidade da Coruña
Campus de Elviña - 15071 A Coruña (España)
(34)981167000 ext. 5493
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20100329/1ce82e4a/attachment.htm 


Más información sobre la lista de distribución gvSIG_desarrolladores