[Gvsig_desarrolladores] Bug en el driver de Oracle

Juan Lucas Dominguez Rubio jldominguez en prodevelop.es
Mie Abr 14 14:02:01 CEST 2010


Hola, Maria.
 
Según parece, el método "int getPrecision(int)" de OracleResultSetMetaData está lanzando una excepción no prevista. Según la documentación, ese método debe devolver, para campos binarios, la longitud en bytes del dato, pero el formato int solo llega hasta 2 x 10^9 aprox.
 
En tu caso, se está devolviendo el valor 4294967295, que no cabe en un int. Tienes un blob de 4 gigabytes? Supongo que no. Es posible que sea un bug del driver de Oracle. Si el jar que te has bajado es ojdbc14.jar, bórralo y usa en su lugar ojdbc5.jar (de la misma web de Oracle).
 
Si eso no funciona, puedes no seleccionar ese atributo cuando hagas la petición de la tabla. Al elegir la tabla, en el recuadro superior derecho puedes marcar qué atributos quieres. Por defecto se piden todos. Simplemente deja sin marcar el de tipo BLOB, a ver si funciona.
 
En la próxima versión intentaremos evitar que eso suceda. Gracias por avisar.
 
 
Saludos,
 
Juan Lucas Domínguez Rubio
---
Prodevelop SL, Valencia (España)
Tlf.: 96.351.06.12 -- Fax: 96.351.09.68
http://www.prodevelop.es <http://www.prodevelop.es/> 
---

________________________________

De: gvsig_desarrolladores-bounces en listserv.gva.es en nombre de María Arias de Reyna Domínguez
Enviado el: mié 14/04/2010 10:44
Para: gvsig_desarrolladores en listserv.gva.es
Asunto: [Gvsig_desarrolladores] Bug en el driver de Oracle



Hola,

Me he encontrado un bug al cargar capas de una base de datos Oracle. Estoy
utilizando la versión 1.9 de gvSIG. Al intentar ver las propiedades de la
capa, salta un error y no muestra el diálogo de propiedades.

La tabla contiene cuatro campos: number, varchar2, blob y sdo_geometry. El
problema creo que está en la definición del campo blob, porque si hago un
código para añadir la capa a mano y no defino el campo blob, funciona
correctamente.

La traza del error es la siguiente:

java.lang.NumberFormatException: For input string: "4294967295"
java.lang.NumberFormatException: For input string: "4294967295"
java.lang.NumberFormatException.forInputString(Unknown Source)
java.lang.Integer.parseInt(Unknown Source) java.lang.Integer.parseInt(Unknown
Source)
oracle.jdbc.driver.OracleResultSetMetaData.getPrecision(OracleResultSetMetaData.java:357)
es.prodevelop.cit.gvsig.fmap.drivers.jdbc.oracle.OracleSpatialDriver.getFieldType(OracleSpatialDriver.java:1046)
com.hardcode.gdbms.engine.data.object.ObjectDriverDataSourceAdapter.getFieldType(ObjectDriverDataSourceAdapter.java:88)
com.hardcode.gdbms.engine.data.AutomaticDataSource.getFieldType(AutomaticDataSource.java:266)
com.iver.cit.gvsig.fmap.layers.SelectableDataSource.getFieldType(SelectableDataSource.java:451)
com.iver.cit.gvsig.project.documents.view.legend.gui.AttrInTableLabeling.setModel(AttrInTableLabeling.java:367)
com.iver.cit.gvsig.project.documents.view.legend.gui.LabelingManager.setModel(LabelingManager.java:223)
com.iver.cit.gvsig.project.documents.view.legend.gui.ThemeManagerWindow.initialize(ThemeManagerWindow.java:106)
com.iver.cit.gvsig.project.documents.view.legend.gui.ThemeManagerWindow.
(ThemeManagerWindow.java:95)
com.iver.cit.gvsig.project.documents.view.toc.actions.FLyrVectEditPropertiesTocMenuEntry.execute(FLyrVectEditPropertiesTocMenuEntry.java:152)
com.iver.cit.gvsig.project.documents.view.toc.AbstractTocContextMenuAction.execute(AbstractTocContextMenuAction.java:39)
com.iver.cit.gvsig.project.documents.view.toc.gui.FPopupMenu$MenuItem.actionPerformed(FPopupMenu.java:322)
javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.setPressed(Unknown Source)
javax.swing.AbstractButton.doClick(Unknown Source)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
java.awt.Component.processMouseEvent(Unknown Source)
javax.swing.JComponent.processMouseEvent(Unknown Source)
java.awt.Component.processEvent(Unknown Source)
java.awt.Container.processEvent(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.run(Unknown Source)

--
María Arias de Reyna Domínguez
Área de Operaciones

Emergya Consultoría
Tfno: +34 954 51 75 77 / +34 607 43 74 27
Fax: +34 954 51 64 73
www.emergya.es
_______________________________________________
gvSIG_desarrolladores mailing list
gvSIG_desarrolladores en listserv.gva.es
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores


------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20100414/e1073838/attachment.htm 


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