ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9

5 messages Options
Embed this post
Permalink
roeptisa

ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9

Reply Threaded More More options
Print post
Permalink
(This post was updated on )
Buenas.

Estoy personalizando gvsigmobile, lo tengo instalado en  mi pc, sobre wxp, y luego genero el CAB para pasarlo al dispositivo movil, el cual corre bajo la máquina virtual J9. El problema está que hay ciertas funcionalidades que sobre WXP me funcionan pero luego al pasarlo a mobile ya no. Por ejemplo, una de las funcionalidades es insertar en un .dbf unos valores, siendo uno de ellos de tipo Date, para ello hago uso de la clase ValueFactory, bien, pues esta funcionalidad me va correctamente sobre WXP pero luego en mobile no, me da este error:

java.lang.NoSuchMethodError: java/util/Date.parse(Ljava/lang/String;)J
        at com.hardcode.gdbms.engine.values.ValueFactory.createValueByType(Unknown Source)
Parece que no encuentra el métod Date.parte, este se encuentra dentro de la libreria rt.jar.
Asi que lo que he hecho ha sido cargarme tbe esta libreria durante la generación del CAB, pero nada, me sigue dando el mismo error.

Alguna ida?

Muchas gracias de antemano.
Carlos Sánchez Periñán

Re: ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9

Reply Threaded More More options
Print post
Permalink
roeptisa escribió:

> Buenas.
>
> Estoy personalizando gvsigmobile, lo tengo instalado en  mi pc, sobre wxp, y
> luego genero el CAB para pasarlo al dispositivo movil, el cual corre bajo la
> máquina virtual J9. El problema está que hay ciertas funcionalidades que
> sobre WXP me funcionan pero luego al pasarlo a mobile ya no. Por ejemplo,
> una de las funcionalidades es insertar en un .dbf unos valores, siendo uno
> de ellos de tipo Date, para ello hago uso de la clase ValueFactory, bien,
> pues esta funcionalidad me va correctamente sobre WXP pero luego en mobile
> no, me da este error:
>
> java.lang.NoSuchMethodError: java/util/Date.parse(Ljava/lang/String;)J
> at com.hardcode.gdbms.engine.values.ValueFactory.createValueByType(Unknown
> Source)
> Parece que no encuentra el métod Date.parte, este se encuentra dentro de la
> libreria rt.jar.
> Asi que lo que he hecho ha sido cargarme tbe esta libreria durante la
> generación del CAB, pero nada, me sigue dando el mismo error.
>
> Alguna ida?
>
> Muchas gracias de antemano.
>  
Hola,
Si te da ese error quiere decir que ese método no está presente en la
clase de máquina virtual J9 CDC para tu dispositivo movil.
En WXP te funciona lógicamente porque estás ejecutando con una máquina
Java J2SE la cual no está restringida como la J2ME CDC (J9) y dispone de
todos los métodos y clases.
Tienes la opción de buscar como se implementa ese método en la OpenSDK
de Sun liberada y crearte un método que se llame de la misma manera y
sustituya al método equivalente en J2SE. Ha de ser Java puro.
Otra opción es ver que es lo que hace ese método y programarte uno tu
que sea compatible.

Siento la decepción pero no podrás usar esa funcionalidad al menos de
momento.
Saludos.

--

        Carlos Sánchez Periñán
        Equipo desarrollo GIS
        Prodevelop S.L.
        Tel :  963510612
        E-mail : *[hidden email]* <mailto:[hidden email]>


_______________________________________________
gvSIG_desarrolladores mailing list
[hidden email]
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
jldominguez

Re: ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9

Reply Threaded More More options
Print post
Permalink
In reply to this post by roeptisa
Some javascript/style in this post has been disabled (why?)
[Gvsig_desarrolladores] ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9
Hola,
 
El entorno de programación que se usa en los prototipos de gvSIG Mobile (Eclipse y JSE 1.4) no respeta en principio el perfil de Java de la aplicación final (JME CDC), así pues debe ser el programador el que se limita  a usar clases y métodos disponibles. Puedes ver el API aquí:
 
 
Debes ceñirte a eso. Como ves, la clase Date no tiene un método parse(String), es decir, no se pueden usar todos los métodos de las clases com.hardcode.gdbms...
 
Si lo que quieres es instanciar un DateValue, esto es válido:
 
DateValue dv = new DateValue();
Date dat = new Date(System.currentTimeMillis());
dv.setValue(dat);
 
En la página que he indicado puedes ver cómo instanciar un Date, también con DateFormat.parse(...).
 
Una vez que hayas escrito el DBF, intenta abrirlo de nuevo (con gvSIG, gvSIG Mobile u otro programa) para ver si se ha escrito correctamente. Quizá tengas que modificar la clase DbaseFileWriterNIO para que se escriba correctamente.
 
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
---


De: [hidden email] en nombre de roeptisa
Enviado el: vie 02/10/2009 12:26
Para: [hidden email]
Asunto: [Gvsig_desarrolladores] ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9


Buenas.

Estoy personalizando gvsigmobile, lo tengo instalado en  mi pc, sobre wxp, y
luego genero el CAB para pasarlo al dispositivo movil, el cual corre bajo la
máquina virtual J9. El problema está que hay ciertas funcionalidades que
sobre WXP me funcionan pero luego al pasarlo a mobile ya no. Por ejemplo,
una de las funcionalidades es insertar en un .dbf unos valores, siendo uno
de ellos de tipo Date, para ello hago uso de la clase ValueFactory, bien,
pues esta funcionalidad me va correctamente sobre WXP pero luego en mobile
no, me da este error:

java.lang.NoSuchMethodError: java/util/Date.parse(Ljava/lang/String;)J
        at com.hardcode.gdbms.engine.values.ValueFactory.createValueByType(Unknown
Source)
Parece que no encuentra el métod Date.parte, este se encuentra dentro de la
libreria rt.jar.
Asi que lo que he hecho ha sido cargarme tbe esta libreria durante la
generación del CAB, pero nada, me sigue dando el mismo error.

Alguna ida?

Muchas gracias de antemano.
--
View this message in context: http://n2.nabble.com/ALGUNAS-FUNCIONALIDAD-DE-GVSIGMOBILE-funcionan-bajo-JDK-pero-no-bajo-J9-tp3754635p3754635.html
Sent from the gvSIG desarrolladores mailing list archive at Nabble.com.
_______________________________________________
gvSIG_desarrolladores mailing list
[hidden email]
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores


_______________________________________________
gvSIG_desarrolladores mailing list
[hidden email]
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
jldominguez

Re: ALGUNAS FUNCIONALIDAD DE GVSIGMOBILEfuncionan bajo JDK pero no bajo J9

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
[Gvsig_desarrolladores] ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9
Hola otra vez, se me olvidaba:
 
No debes usar el rt.jar en la PDA. Piensa que ese rt.jar tiene clases que ya están en la JVM de la PDA, con lo cual hay un conflicto grave, y tiene dependencias que están fuera del API que te he indicado, e incluso dependencias respecto a DLL que no vas a tener en la PDA.
 
 
 
Juan Lucas Domínguez Rubio
---
Prodevelop SL, Valencia (España)
Tlf.: 96.351.06.12 -- Fax: 96.351.09.68
http://www.prodevelop.es
---


De: [hidden email] en nombre de Juan Lucas Dominguez Rubio
Enviado el: mar 06/10/2009 17:58
Para: Lista de Desarrolladores de gvSIG; [hidden email]
Asunto: Re: [Gvsig_desarrolladores] ALGUNAS FUNCIONALIDAD DE GVSIGMOBILEfuncionan bajo JDK pero no bajo J9

Hola,
 
El entorno de programación que se usa en los prototipos de gvSIG Mobile (Eclipse y JSE 1.4) no respeta en principio el perfil de Java de la aplicación final (JME CDC), así pues debe ser el programador el que se limita  a usar clases y métodos disponibles. Puedes ver el API aquí:
 
 
Debes ceñirte a eso. Como ves, la clase Date no tiene un método parse(String), es decir, no se pueden usar todos los métodos de las clases com.hardcode.gdbms...
 
Si lo que quieres es instanciar un DateValue, esto es válido:
 
DateValue dv = new DateValue();
Date dat = new Date(System.currentTimeMillis());
dv.setValue(dat);
 
En la página que he indicado puedes ver cómo instanciar un Date, también con DateFormat.parse(...).
 
Una vez que hayas escrito el DBF, intenta abrirlo de nuevo (con gvSIG, gvSIG Mobile u otro programa) para ver si se ha escrito correctamente. Quizá tengas que modificar la clase DbaseFileWriterNIO para que se escriba correctamente.
 
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
---


De: [hidden email] en nombre de roeptisa
Enviado el: vie 02/10/2009 12:26
Para: [hidden email]
Asunto: [Gvsig_desarrolladores] ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9


Buenas.

Estoy personalizando gvsigmobile, lo tengo instalado en  mi pc, sobre wxp, y
luego genero el CAB para pasarlo al dispositivo movil, el cual corre bajo la
máquina virtual J9. El problema está que hay ciertas funcionalidades que
sobre WXP me funcionan pero luego al pasarlo a mobile ya no. Por ejemplo,
una de las funcionalidades es insertar en un .dbf unos valores, siendo uno
de ellos de tipo Date, para ello hago uso de la clase ValueFactory, bien,
pues esta funcionalidad me va correctamente sobre WXP pero luego en mobile
no, me da este error:

java.lang.NoSuchMethodError: java/util/Date.parse(Ljava/lang/String;)J
        at com.hardcode.gdbms.engine.values.ValueFactory.createValueByType(Unknown
Source)
Parece que no encuentra el métod Date.parte, este se encuentra dentro de la
libreria rt.jar.
Asi que lo que he hecho ha sido cargarme tbe esta libreria durante la
generación del CAB, pero nada, me sigue dando el mismo error.

Alguna ida?

Muchas gracias de antemano.
--
View this message in context: http://n2.nabble.com/ALGUNAS-FUNCIONALIDAD-DE-GVSIGMOBILE-funcionan-bajo-JDK-pero-no-bajo-J9-tp3754635p3754635.html
Sent from the gvSIG desarrolladores mailing list archive at Nabble.com.
_______________________________________________
gvSIG_desarrolladores mailing list
[hidden email]
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores


_______________________________________________
gvSIG_desarrolladores mailing list
[hidden email]
http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
roeptisa

Re: ALGUNAS FUNCIONALIDAD DE GVSIGMOBILE funcionan bajo JDK pero no bajo J9

Reply Threaded More More options
Print post
Permalink
In reply to this post by roeptisa
Gracias por las respuestas.
Ya he quitado la libreria rt.jar de la PDA para que no haya problemas.
Siguiendo las especificaciones de la API que me comentabais: http://java.sun.com/javame/reference/apis/jsr216/, he usado los métodos parse y format de la clase "SimpleDateFormat".
Tbe he tenido que cambiar un poco el dbfWriter, y ya he conseguido que me escriba correctamente fechas en un dbf.

Gracias.

roeptisa wrote:
Buenas.

Estoy personalizando gvsigmobile, lo tengo instalado en  mi pc, sobre wxp, y luego genero el CAB para pasarlo al dispositivo movil, el cual corre bajo la máquina virtual J9. El problema está que hay ciertas funcionalidades que sobre WXP me funcionan pero luego al pasarlo a mobile ya no. Por ejemplo, una de las funcionalidades es insertar en un .dbf unos valores, siendo uno de ellos de tipo Date, para ello hago uso de la clase ValueFactory, bien, pues esta funcionalidad me va correctamente sobre WXP pero luego en mobile no, me da este error:

java.lang.NoSuchMethodError: java/util/Date.parse(Ljava/lang/String;)J
        at com.hardcode.gdbms.engine.values.ValueFactory.createValueByType(Unknown Source)
Parece que no encuentra el métod Date.parte, este se encuentra dentro de la libreria rt.jar.
Asi que lo que he hecho ha sido cargarme tbe esta libreria durante la generación del CAB, pero nada, me sigue dando el mismo error.

Alguna ida?

Muchas gracias de antemano.