[Gvsig_usuarios] Error FilesystemExplorer al llamar a createShape. gvsig 2.2

Óscar Martínez omartinez en gvsig.com
Jue Mayo 26 14:09:47 CEST 2016


Perdona, se me olvido recalcar que el único fallo que pienso ahora mismo 
es que ejecutes el mismo script varias veces y el nombre del fichero ya 
exista. Si te ocurre lo mismo, le daré un vistazo, solo dime que versión 
de gvSIG exacta estás utilizando. Gracias!


On 26/05/2016 14:07, Óscar Martínez wrote:
> Buenas,
>
> Parece que es un problema de la ruta, si existe un fichero ya con ese
> nombre es posible que de error. También te recomiendo ponerle un r
> delante de las comillas en el path quedando algo así: rutaLine =
> r'c:/gvsig/testline01.shp'
>
> Para la nueva 2.3 hemos modificado el createShape para que pueda crear
> directamente nombres únicos y no tengamos que preocuparnos de esto.
>
> Por si quieres usar una función que tenemos preparada:
>
> from org.gvsig.andami import Utilities
>
> def getTempFile(name, ext, tempdir=None):
>       if tempdir==None:
>           tempdir = Utilities.TEMPDIRECTORYPATH
>       if not os.path.isdir(tempdir):
>         os.makedirs(tempdir)
>       t = time.time()
>       f = os.path.join(
>         tempdir,
>         "%s-%x%x%s" % (name,t,(t-int(t)) * 10000,ext)
>       )
>       return f
>
> Se usaría como:
> rutaLine = getTempFile("testline",".shp",r"C:/gvsig")
>
> Creará un nombre único dentro de ese path.
>
> Si estás con la versión 2.2 aquí explico también un posible fallo que te
> esté ocurriendo (está dentro del curso en la pantalla principal encima
> de los enlaces a los foros):
> http://moodle.gvsig-training.com/mod/forum/discuss.php?d=3212
>
> En la versión 2.3 será más sencillo, quedando algo así:
> ...
> schema = createSchema()
> schema.append("ID", "INTEGER")
> schema.append("GEOMETRY", "GEOMETRY")
> schema.get("GEOMETRY").setGeometryType(LINE, D2)
>
> newShapeLine = createShape(schema) # si no se asigna un crs pero hay una
> vista abierta, cogerá el de la Vista
>
>
> Cualquier duda que tengas del mooc no dudes en preguntarla, intentaré
> contestarte también como serían en la 2.3 para que tengas en cuenta los
> cambios. Por lo general es la misma sintaxis, solo cambiarían algunas
> pequeñas cosas (y facilitaría muchísimas más). También cualquier
> recomendación sobre el curso será bien recibida, estamos en proceso de
> renovarlo así que a tiempo de cambiar y añadir cosas que veáis
> interesantes estamos.
>
> Creo que eso es todo, avisa si se te soluciona el problema o si sigue.
>
> Un saludo,
> Óscar
>
> On 26/05/2016 11:39, jgonzac wrote:
>> Hola a todos,
>> Soy nuevo en gvsig (no en programación) y estoy siguiendo un tutorial paso a
>> paso. Sin embargo a la hora de crear un createShape así:
>>
>> from gvsig import *
>> from geom import *
>> def main(*args):
>>     rutaLine = 'c:/gvsig/testline01.shp'
>>     
>>     crs = currentView().getProjectionCode()
>>     layer = currentLayer()
>>     schema = createSchema()
>>     schema.append("ID","INTEGER")
>>     schema.append("GEOMETRY", "GEOMETRY")
>>     
>> *  newSchapeLine = createShape(
>>       schema,
>>       rutaLine,
>>       CRS=crs,
>>       geometryType = LINE,
>>     )*
>> [...]
>>
>> Salta una excepción de la que no encuentro información suficiente para
>> resolver el problema. He probado con diferentes rutas, todas accesibles,
>> modo administrador por si eran problemas de permisos. Reiniciado gvsig,
>> reiniciadas las vistas, añadidas capas, activas... y no encuentro forma.
>> Añado la traza por si sabéis qué puede ser. (Windows 8.1)
>> Por cierto, estoy siguiendo el tutorial MOOC "Introducción a Scripting en
>> gvSIG 2." Muchas gracias de antemano. Saludos!
>>
>> Stript script_tema_06 aborted.
>> *java.lang.RuntimeException: java.lang.RuntimeException: Can't create layer,
>> org.gvsig.fmap.dal.exception.ServerExplorerAddException: Exception creating
>> 'FilesystemExplorer'. in <script> at line number 12*
>> org.gvsig.scripting.ExecuteErrorException: java.lang.RuntimeException:
>> java.lang.RuntimeException: Can't create layer,
>> org.gvsig.fmap.dal.exception.ServerExplorerAddException: Exception creating
>> 'FilesystemExplorer'. in <script> at line number 12
>> 	at
>> org.gvsig.scripting.impl.DefaultScriptingScript.invokeFunction(DefaultScriptingScript.java:314)
>> 	at
>> org.gvsig.scripting.impl.DefaultScriptingScript.run(DefaultScriptingScript.java:301)
>> 	at
>> org.gvsig.scripting.impl.DefaultScriptingScript$ScriptTask.run(DefaultScriptingScript.java:372)
>> Caused by: javax.script.ScriptException: java.lang.RuntimeException:
>> java.lang.RuntimeException: Can't create layer,
>> org.gvsig.fmap.dal.exception.ServerExplorerAddException: Exception creating
>> 'FilesystemExplorer'. in <script> at line number 12
>> 	at
>> org.python.jsr223.PyScriptEngine.scriptException(PyScriptEngine.java:191)
>> 	at org.python.jsr223.PyScriptEngine.invokeFunction(PyScriptEngine.java:126)
>> 	at
>> org.gvsig.scripting.impl.DefaultScriptingScript.invokeFunction(DefaultScriptingScript.java:312)
>> 	... 2 more
>>
>>
>>
>>
>>
>> --
>> View this message in context: http://osgeo-org.1560.x6.nabble.com/Error-FilesystemExplorer-al-llamar-a-createShape-gvsig-2-2-tp5268327.html
>> Sent from the gvSIG usuarios mailing list archive at Nabble.com.
>> _______________________________________________
>> gvSIG_usuarios mailing list
>> gvSIG_usuarios en listserv.gva.es
>>
>> Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección:
>>
>> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
> _______________________________________________
> gvSIG_usuarios mailing list
> gvSIG_usuarios en listserv.gva.es
>
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección:
>
> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios



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