[Gvsig_desarrolladores] Invocar GVSig desde Java

Joaquin Jose del Cerro Murciano jjdelcerro en gvsig.org
Vie Oct 26 09:23:48 CEST 2012


El día 25 de octubre de 2012 22:35, Juan DYB <jdyb04jdyb en gmail.com> escribió:
> Hola:
>
> He estado buscando en la documentación de desarrolladores pero no he
> encontrado apartado alguno para lo que quiero.
>
> Quisiera obtener documentación para poder invocar a GVSig desde un programa
> externo propio hecho en Java y quisiera saber las opciones que tengo para su
> invocación. Se trataría de poder llamar a GVSig desde Java para que al
> abrirse automáticamente cargara una ortofoto.
>
Hola Juan,
Pues que yo recuerde no hay documentacion sobre los argumentos
que puede recibir gvSIG. Te comento algunas cosillas, pero
estaria bien que comentases algunas cosas como, la
plataforma o la version de gvSIG o como quieres invocar
a gvSIG desde tu aplicacion.

Respecto a los argumentos, como primer argumento espera la carpeta
donde se encuentran los plugins, normalmente gvSIG/extensiones y como ultimo
argumento espera una ruta a un fichero de proyecto de gvSIG, que intentara
cargarlo en el arranque. Esto es comun tanto para gvSIG 1 como 2.
Ademas se pueden especificar mas argumentos, como el idioma a usar,
con algo como


  ./gvSIG.sh gvSIG/extensiones language=es /tmp/myproject.gvsproj


Para cargar una ortofoto tendrias que tener un proyecto de gvSIG en
el que este cargada esa ortofoto. Si no puedes hacerlo por que esta
puede ir cambiando y no puedes tener un proyecto para cada ortofoto
en concreto que estes usando, probablemente te interese crear tu propioç
plugin que procese los argumentos de entrada y cree una vista y cargue
la ortofoto. De momento, no voy a extenderme con esto, y te cuento
sobre los argumentos y como lanzar gvSIG ya que igual con esto es suficiente.

Resumientdo:

- Primer argumento, carpeta donde residen los plugins

- Ultimo argumento, fichero de proyecto a cargar en el arranque de
  gvSIG. Debera tener extension ".gvp" o ".gvsproj" (segun version 1
  o 2).

- Indicar el idioma de arranque de gvSIG. Un parametro por nombre,
  despues del directorio de los plugins, con la sixtaxis "languaje="
  seguido de la abreviatura del idioma (no lleva guion/guiones delante).

Es posible que acepte mas argumentos, pero en general estos seran
tratados por algun plugin en concreto y dependeran de los plugins
que tengas cargados.

En la version 2, tambien puedes especificar argumentos destinados a
arrancar el instalador de complementos sin levantar todo gvSIG, normalmente
usados durante la instalacion de la aplicacion. Si se indica el flag
"--install" entra en un modo especial y los argumentos que acepta son
especificos para arrancar el administrador de complementos.

  ./gvSIG.sh --install --applicationName=gvSIG --language=es
--pluginsFolder=gvSIG/extensiones

Otra cosa a tener en cuenta es la carpeta corriente en el momento de
la invocacion a gvSIG. Normalmente esta debera ser la carpeta donde
se instalo gvSIG, donde esta el gvSIG.sh o el gvsig-desktop.exe. Hay algunas
partes de gvSIG que utilizan la carpeta corriente para localizar algunos
archivos, asi que es recomendable que esta sea la correcta.

Luego habria que ver como quieres invocar a la aplicacion desde java,
la forma mas simple seria con un exec. Podria ser algo asi:

  String projectPath = "......";
  Runtime rt = Runtime.getRuntime();
  String[] argv = new String[] { "./gvSIG.sh", "gvSIG/extensiones",
projectPath } ;
  rt.exec(argv, null, new File("....path-to-gvsig...
/home/user/gvSIG-desktop/"));

Los ejemplos los he puesto para invocarlo en linux, pero deberian funcionar
tambien en windows sustituyendo "gvSIG.sh" por "gvsig-desktop.exe", por lo
menos para la version 2 y la 1.12.

Espero que te sirba de algo, y si tienes dudas pregunta, si son sobre
la version 2, intentare contestarte, sobre la 1, seguramente habra
algun compañero
que sabe mas que yo, que hace bastante tiempo que no he trabajado con ella.

Un saludo
Joaquin



> Muchas gracias de antemano.
>
> PD: No se si este mensaje es repetido o no, ya lo mandé anteriormente pero
> me dio error por no pertenecer a la lista, si está repetido pido disculpas.
>
>
> --
> Un Saludo,
>
> Juan
>
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores 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:
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>



-- 
--------------------------------------
Joaquin Jose del Cerro Murciano
Development and software arquitecture manager at gvSIG Team
jjdelcerro en gvsig.com
jjdelcerro en gvsig.org
gvSIG Association
www.gvsig.com
www.gvsig.org


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