[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:02:44 CEST 2010
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
>
Más información sobre la lista de distribución gvSIG_desarrolladores