[Gvsig_desarrolladores] error en capa y convertir un dato numerico expresado en Value a Long o algo así, operable y cambiar el color de un shape

Eduardo Cristóbal Enríquez edu_ce_1988 en hotmail.com
Lun Mayo 24 16:14:52 CEST 2010


Se me olvidó decir que los atributos se me muestran  con la opción Ver tabla 
de atributos de la pestaña Capa aparte de que como ya dije la forma y todo 
está ok, solo me falla cuando hago Vista/Consulta/Información y hago click 
en el layer copiado.

--------------------------------------------------
From: "Eduardo Cristóbal Enríquez" <edu_ce_1988 en hotmail.com>
Sent: Monday, May 24, 2010 4:02 PM
To: "Lista de Desarrolladores de gvSIG" 
<gvsig_desarrolladores en listserv.gva.es>
Subject: Re: [Gvsig_desarrolladores]error en capa y convertir un dato 
numerico expresado en Value a Long o algo así, operable y cambiar el color 
de un shape

> He ido a copiar una capa existente y bueno, aparentemente se copia bien 
> sin
> errores, aparece en el panel derecho del visor junto con las demas capas y
> el dibujo, el nombre y todo parece que está bien, pero cuando hago click 
> en
> información y la selecciono me salta un java.lang.NullPointerException: 
> null
>
> El código usado para copiarla es:
>
> try {
> FLayer copia = capas.getLayer(nombreCapaSeleccionada).cloneLayer();
> if (copia != null) {
> copia.setVisible(true);
> MapControl mapControl = v.getMapControl();
> mapControl.getMapContext().getLayers().addLayer(copia);
> }
> } catch (Exception e1) {
> e1.printStackTrace();
> }
>
> pero cuando lo ejecuto me da un error, copio el log:
>
> java.lang.NullPointerException: null
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
> java.awt.Component.processMouseEvent(Component.java:5517)
> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
> java.awt.Component.processEvent(Component.java:5282)
> java.awt.Container.processEvent(Container.java:1966)
> java.awt.Component.dispatchEventImpl(Component.java:3984)
> java.awt.Container.dispatchEventImpl(Container.java:2024)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
> java.awt.Container.dispatchEventImpl(Container.java:2010)
> java.awt.Window.dispatchEventImpl(Window.java:1791)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
> java.lang.NullPointerException java.lang.NullPointerException: null
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
> java.awt.Component.processMouseEvent(Component.java:5517)
> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
> java.awt.Component.processEvent(Component.java:5282)
> java.awt.Container.processEvent(Container.java:1966)
> java.awt.Component.dispatchEventImpl(Component.java:3984)
> java.awt.Container.dispatchEventImpl(Container.java:2024)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
> java.awt.Container.dispatchEventImpl(Container.java:2010)
> java.awt.Window.dispatchEventImpl(Window.java:1791)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
> java.lang.NullPointerException java.lang.NullPointerException: null
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
> java.awt.Component.processMouseEvent(Component.java:5517)
> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
> java.awt.Component.processEvent(Component.java:5282)
> java.awt.Container.processEvent(Container.java:1966)
> java.awt.Component.dispatchEventImpl(Component.java:3984)
> java.awt.Container.dispatchEventImpl(Container.java:2024)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
> java.awt.Container.dispatchEventImpl(Container.java:2010)
> java.awt.Window.dispatchEventImpl(Window.java:1791)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
> java.lang.NullPointerException java.lang.NullPointerException: null
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
> java.awt.Component.processMouseEvent(Component.java:5517)
> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
> java.awt.Component.processEvent(Component.java:5282)
> java.awt.Container.processEvent(Container.java:1966)
> java.awt.Component.dispatchEventImpl(Component.java:3984)
> java.awt.Container.dispatchEventImpl(Container.java:2024)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
> java.awt.Container.dispatchEventImpl(Container.java:2010)
> java.awt.Window.dispatchEventImpl(Window.java:1791)
> java.awt.Component.dispatchEvent(Component.java:3819)
> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
>
>
> alguien sabe por que puede ser esto y los otros 2 problemas?
> Gracias
>
> --------------------------------------------------
> From: "Eduardo Cristóbal Enríquez" <edu_ce_1988 en hotmail.com>
> Sent: Monday, May 24, 2010 2:04 AM
> To: <gvsig_desarrolladores en listserv.gva.es>
> Subject: [Gvsig_desarrolladores] convertir un dato numerico expresado en
> Value a Long o algo así, operable y cambiar el color de un shape
>
>> Hola,
>>
>> tengo dos problemas, el primero es que cuando hago una consulta de esta
>> forma:
>>
>> Value strArea = ds.getFieldValue(selection.nextSetBit(0),idArea);
>> Va todo bien, sin ningún tipo de error, y me muestra el dato que está
>> asignado a dicha capa, en este caso:  4.272045E7
>> El problema es que el número es en realidad: 42720450,00000  (lo se 
>> porque
>> abro el .dbf con el excel y ahí sí se muestra el valor real).
>> Entonces la pregunta es la siguiente: cómo puedo pasar de Value a Long (o
>> a
>> un dato con el que pueda operar): He probado cosas como:
>> (long)strArea.toString() pero no me deja.
>>
>> El segundo es que no se como puedo cambiar el color de una capa (layer), 
>> y
>> necesito cambiárselo (que aparezca con otro color cuando se muestra en el
>> mapa) .
>> Lo podría hacer dentro de este código o como sería?
>>
>> try {
>> FBitSet selection =
>> capaSeleccionada.queryByRect(capaSeleccionada.getFullExtent());
>>
>> if (!selection.isEmpty()){
>> DataSource ds = ((AlphanumericData)capaSeleccionada).getRecordset();
>> ds.start();
>> ds.(algun método que me permita cambiar el color)
>>
>>
>> Muchas gracias.
>> Un saludo.
>>
>> Eduardo.
>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en listserv.gva.es
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
> 


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