gvSIG bugs #4550

Projects corrupted if raster prj not recognized

Added by Andrea Antonello almost 7 years ago. Updated over 6 years ago.

Status:Closed% Done:

0%

Priority:UrgentSpent time:-
Assignee:Joaquín del Cerro Murciano
Category:-
Target version:2.4.0-2832 (rev. org.gvsig.desktop-2.0.198)
Severity:Critical Add-on version:
gvSIG version:2.4.0 Add-on build:
gvSIG build: Add-on resolve version:
Operative System: Add-on resolve build:
Keywords: Proyecto:
Has patch: Hito:
Add-on name:Unknown

Description

This is a bad bug, since it always corrupts the gvSIG project and makes it unrecoverable.

I have a tiff file, for which the prj has been modified. It is basically an EPSG:3003 prj to which the toWGS84 parameters have been added and the EPSG code had been changed.
It is not important right now if this approach is right or wrong.

gvSIG loads the raster and reprojects it (in a 3003) map view.

But when gvSIG is closed and opened again (actually that doesn't even happen always), I get the below error.
It looks like it crashes the whole project because of the unrecognized crs.

A quick fix that would already help would be to just ignore the layer.

[...]
 INFO [AWT-EventQueue-0] (Messages.java:753) - [org.gvsig.i18n.Messages] Cannot find translation for key 'GMLCat'.
 INFO [AWT-EventQueue-0] (DefaultActionInfo.java:499) - setActive(false)
 INFO [Thread-8] (ScriptingExtension.java:338) - running autorun script '/home/hydrologis/SOFTWARE/GVSIG/LATEST/home/gvSIG/plugins/org.gvsig.scripting.app.mainplugin/scripts/addons/Catalog/autorun.inf'.
 INFO [AWT-EventQueue-0] (DefaultActionInfo.java:499) - setActive(false)
 INFO [AWT-EventQueue-0] (AbstractLocator.java:70) - Created and stored the instance of org.gvsig.tools.dispose.manager in the singleton table (org.gvsig.tools.dispose.impl.DefaultDisposableManager/org.gvsig.tools.dispose.impl.DefaultDisposableManager@5bf1cfdc).
 INFO [AWT-EventQueue-0] (DefaultViewDocument.java:133) - No order manager found in persistence.
 INFO [AWT-EventQueue-0] (AbstractLocator.java:70) - Created and stored the instance of default.layer.order.manager in the singleton table (org.gvsig.fmap.mapcontext.layers.order.impl.TrivialLayerOrderManager/org.gvsig.fmap.mapcontext.layers.order.impl.TrivialLayerOrderManager@873986d).
 INFO [AWT-EventQueue-0] (DefaultViewDocument.java:133) - No order manager found in persistence.
ERROR 6: EPSG PCS/GCS code 30031000 not found in EPSG support files.  Is this a valid
EPSG coordinate system?
 WARN [AWT-EventQueue-0] (EpsgRepository.java:92) - Can't create ESPG Crs from 30031000.
java.lang.RuntimeException: OGR Error: Unsupported SRS
    at org.gdal.osr.osrJNI.SpatialReference_ImportFromEPSG(Native Method)
    at org.gdal.osr.SpatialReference.ImportFromEPSG(SpatialReference.java:549)
    at org.gvsig.crs.repository.EpsgRepository.getCrs(EpsgRepository.java:89)
    at org.gvsig.crs.CrsFactory.getSimpleCRS(CrsFactory.java:155)
    at org.gvsig.crs.CrsFactory.getCRS(CrsFactory.java:114)
    at org.gvsig.crs.CrsFactory.get(CrsFactory.java:231)
    at org.gvsig.fmap.crs.CRSFactory.getCRS(CRSFactory.java:61)
    at org.gvsig.fmap.crs.persistence.ProjectionPersistenceFactory.createFromState(ProjectionPersistenceFactory.java:80)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:297)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.fmap.mapcontext.layers.FLyrDefault.loadFromState(FLyrDefault.java:975)
    at org.gvsig.raster.fmap.layers.DefaultFLyrRaster.loadFromState(DefaultFLyrRaster.java:1808)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:113)
    at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:175)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:182)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:172)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getIterator(AbstractPersistentState.java:239)
    at org.gvsig.fmap.mapcontext.layers.FLayers.loadFromState(FLayers.java:767)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.fmap.mapcontext.MapContext.loadFromState(MapContext.java:1707)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.app.project.documents.view.BaseViewDocument.loadFromState(BaseViewDocument.java:278)
    at org.gvsig.app.project.documents.view.DefaultViewDocument.loadFromState(DefaultViewDocument.java:150)
    at org.gvsig.app.project.documents.AbstractDocumentManager.loadFromState(AbstractDocumentManager.java:257)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:113)
    at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:175)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:182)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:172)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.app.project.DefaultProject.loadFromState(DefaultProject.java:678)
    at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:596)
    at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:649)
    at org.gvsig.app.extension.ProjectExtension.readProject(ProjectExtension.java:527)
    at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:371)
    at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:318)
    at org.gvsig.andami.actioninfo.impl.DefaultActionInfo.execute(DefaultActionInfo.java:307)
    at org.gvsig.andami.ui.mdiFrame.MDIFrame.actionPerformed(MDIFrame.java:976)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
    at java.awt.Component.processMouseEvent(Component.java:6535)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6300)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4891)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2750)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at org.gvsig.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:50)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
 WARN [AWT-EventQueue-0] (FLyrDefault.java:989) - Can't load from persietent state the layer 'dtm'.
ERROR [AWT-EventQueue-0] (MDIFrame.java:990) - Can't perform action 'application-project-open'.
java.lang.RuntimeException: OGR Error: Unsupported SRS
    at org.gdal.osr.osrJNI.SpatialReference_ImportFromEPSG(Native Method)
    at org.gdal.osr.SpatialReference.ImportFromEPSG(SpatialReference.java:549)
    at org.gvsig.crs.repository.EpsgRepository.getCrs(EpsgRepository.java:89)
    at org.gvsig.crs.CrsFactory.getSimpleCRS(CrsFactory.java:155)
    at org.gvsig.crs.CrsFactory.getCRS(CrsFactory.java:114)
    at org.gvsig.crs.CrsFactory.get(CrsFactory.java:231)
    at org.gvsig.fmap.crs.CRSFactory.getCRS(CRSFactory.java:61)
    at org.gvsig.fmap.crs.persistence.ProjectionPersistenceFactory.createFromState(ProjectionPersistenceFactory.java:80)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:297)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.fmap.mapcontext.layers.FLyrDefault.loadFromState(FLyrDefault.java:975)
    at org.gvsig.raster.fmap.layers.DefaultFLyrRaster.loadFromState(DefaultFLyrRaster.java:1808)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:113)
    at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:175)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:182)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:172)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getIterator(AbstractPersistentState.java:239)
    at org.gvsig.fmap.mapcontext.layers.FLayers.loadFromState(FLayers.java:767)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.fmap.mapcontext.MapContext.loadFromState(MapContext.java:1707)
    at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:161)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.app.project.documents.view.BaseViewDocument.loadFromState(BaseViewDocument.java:278)
    at org.gvsig.app.project.documents.view.DefaultViewDocument.loadFromState(DefaultViewDocument.java:150)
    at org.gvsig.app.project.documents.AbstractDocumentManager.loadFromState(AbstractDocumentManager.java:257)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:298)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$000(DefaultPersistentContext.java:73)
    at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:161)
    at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:113)
    at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:175)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:182)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:172)
    at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:143)
    at org.gvsig.app.project.DefaultProject.loadFromState(DefaultProject.java:678)
    at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:596)
    at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:649)
    at org.gvsig.app.extension.ProjectExtension.readProject(ProjectExtension.java:527)
    at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:371)
    at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:318)
    at org.gvsig.andami.actioninfo.impl.DefaultActionInfo.execute(DefaultActionInfo.java:307)
    at org.gvsig.andami.ui.mdiFrame.MDIFrame.actionPerformed(MDIFrame.java:976)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
    at java.awt.Component.processMouseEvent(Component.java:6535)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6300)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4891)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2750)
    at java.awt.Component.dispatchEvent(Component.java:4713)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at org.gvsig.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:50)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
 INFO [AWT-EventQueue-0] (DefaultActionInfo.java:499) - setActive(false)

gvSIG.log (418 KB) Andrea Antonello, 08/11/2017 09:46 AM

test_pit5.gvsproj (25.2 KB) Andrea Antonello, 08/11/2017 09:46 AM

Associated revisions

Revision 704
Added by Joaquín del Cerro Murciano almost 7 years ago

refs #4550, atrapados los errores al recuperar un IProjection de la persistencia. Si se produce un error lo anota y deja la proyeccion a null.

Revision 7499
Added by Joaquín del Cerro Murciano almost 7 years ago

refs #4550, atrapada de errores a la hora de parsear el prj asociao a un raster para que no falle la carga del raster si no puede reconocer la proyeccion.

Revision 1606
Added by Joaquín del Cerro Murciano over 6 years ago

refs #4550, correcciones para cargar datos de persistencia cuando faltan states en los datos de la persistencia.

Revision 43439
Added by Joaquín del Cerro Murciano over 6 years ago

refs #4550, correcciones para cargar proyectos con datos corruptos

Revision 43440
Added by Joaquín del Cerro Murciano over 6 years ago

refs #4550, actualizada la version de org.gvsig.tools

History

#1 Updated by Álvaro Anguix almost 7 years ago

  • Target version set to 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220)
  • Priority changed from Normal to Urgent

#2 Updated by Antonio Falciano almost 7 years ago

Hi Andrea,

ERROR 6: EPSG PCS/GCS code 30031000 not found in EPSG support files.  Is this a valid EPSG coordinate system?
is a GDAL one. If the EPSG code in the AUTHORITY tag had been changed (30031000 in place of 3003), it can't be found in the GDAL EPSG support files (and also in the EPSG Registry) and so the prj recognition fails.
In fact, if I save a gvSIG project containing a tif + tfw + prj using a valid OGC WKT (with TOWGS84 parameters), this error doesn't happen.

Anyway I'm agree with you that all kinds of unrecognized prj files should not block the application and so the layers in subject should be skipped or signed with a red exclamation mark in the ToC at least.

#3 Updated by Joaquín del Cerro Murciano almost 7 years ago

  • Target version changed from 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220) to 2.4.0-2830 (rev. org.gvsig.desktop-2.0.196)
  • Assignee set to Joaquín del Cerro Murciano
  • Status changed from New to Fixed

Looking at the trace, I caught the errors when recovering the projection of the project, and in case it does not recognize it, leaves it to null and annotate that an error has occurred so that the user can be informed. But I do not know how to prove it.

Set the ticket as fixed for the next build. If you can prove it, tell me if the change works.

#4 Updated by Álvaro Anguix over 6 years ago

  • Status changed from Fixed to Closed

#5 Updated by Joaquín del Cerro Murciano over 6 years ago

#6 Updated by Joaquín del Cerro Murciano over 6 years ago

#7 Updated by Andrea Antonello over 6 years ago

We tested the 2830 version on a windows machine and it is not possible to save the project anymore.

find attached the error log and th eproject file that was saved.

#8 Updated by Antonio Falciano over 6 years ago

  • Target version changed from 2.4.0-2830 (rev. org.gvsig.desktop-2.0.196) to 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220)

Hi Andrea,
the "error saving a project" was another kind of issue (#4602) and it was solved in build 2831.
Instead, it seems that the project you have attached here can't be opened also in build 2831.

#9 Updated by Andrea Antonello over 6 years ago

You are right Antonio, I wrote this when the 2831 was not yet available and the addressed version seemed to be 2830.

The 2831 seems to have solved the issue. I am not sure if the attached project is indeed something that should be loaded, it might have been corrupted by the 2830 version. So I would leave it out. I will test this in the next days as much as possible.

#10 Updated by Joaquín del Cerro Murciano over 6 years ago

  • Target version changed from 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220) to 2.4.0-2832 (rev. org.gvsig.desktop-2.0.198)

#11 Updated by Joaquín del Cerro Murciano over 6 years ago

  • Status changed from New to Fixed

Bueno, he hecho lo que he podido para que se cargue el proyecto. No se si sirbe de algo.
Al guardarse el proyecto no se guardo informacion de ninguna proyeccion, ni de la vista, ni de las capas, ninguna.
He mejorado en lo posible el manejo de errores durante la carga intentando cargar todo lo que se pueda aunque hayan partes del proyecto que no se carguen.

He hecho que las capas y la vista tomen la proyeccion por defecto cuando no se haya podido recuperar de la persistencia.
El proyecto puede estar dañado, pero se cargara lo que se pueda.

#12 Updated by Álvaro Anguix over 6 years ago

  • Status changed from Fixed to Closed

Lo doy por cerrado.

Also available in: Atom PDF