No desesperes, deja pasar un tiempo e inténtalo de nuevo.

Te puedo asegurar que yo no tengo ni "puñetera idea" de Java y utilizo 
bibliotecas de clases como POI de Apache (crea hojas Excel) o iText (crear PDF) 
desde RPG. En su momento, no le dediqué todo el tiempo a aprender a manejar 
esta "tecnología" pero necesité cerca de 3/4 años en ¿dominarla?

En tu caso es más complicado ayudarte porque no muestras cómo está definido el 
método de la clase. Tampoco nos cuentas si el programa falla. Normalmente si el 
programa RPG no encuentra la clase o el método te avisa en el momento de la 
ejecución (hay que interpretar el mensaje).

Te recomiendo que le eches un vistazo al link que te dio Alex, a mí me sirvió 
para entender y aclararme "algunas cosas" confusas.

Ánimo.

Javier Mora

> -----Mensaje original-----
> De: [email protected] [mailto:forum.help400-
> [email protected]] En nombre de Antonio
> Enviado el: miércoles, 01 de marzo de 2017 11:58
> Para: forum.help400
> Asunto: Re: Clase Java
> 
> Hola Javier.
> He probado lo que me comentabas y tampoco.
> He visto tu ejemplo y lo entiendo menos que el de los manuales, me he
> dado cuenta de lo poco que conozco java:-( De momento lo dejo, me tengo
> que centrar en otras cosas.
> Gracias por tu ayuda.
> 
> El 28/02/2017 a las 19:05, Javier Mora escribió:
> > Bueno, todavía no tengo claro algunas cosas pero vamos a intentarlo.
> >
> > - La clase 'bascula' que utilizar con QCMDEXC no es la misma que
> 'bascula2'.
> >
> > - La clase 'bascula2', ¿dónde la tienes ubicada en el IFS? ¿Está
> incluida en CLASSPATH o está en el directorio de extensiones de Java?
> >
> > - Sin ver la definición de los métodos de 'bascula2' es difícil saber
> si están bien declarados en RPG.
> >
> > - Creo que el método 'pesobas' no está bien declarado en RPG. Si
> 'pesobas' devuelve una 'java.lang.String' deberías hacer lo siguiente:
> >
> > D pesobas         PR              O   EXTPROC(*JAVA:'bascula2'
> > D                                         :'pesobas')
> > D                                     CLASS(*JAVA:
> 'java.lang.String')
> >
> > En el código
> >
> > Peso2 = JString_getBytes( pesobas( PESO3 ) );
> >
> > Te adjunto en el correo un fuente donde se define 'JString_getBytes'.
> >
> > ¿No tienes ningún error de ejecución?
> >
> > Saludos,
> >
> > Javier
> >
> >> -----Mensaje original-----
> >> De: [email protected] [mailto:forum.help400-
> >> [email protected]] En nombre de Antonio Enviado el: martes,
> >> 28 de febrero de 2017 16:18
> >> Para: [email protected]
> >> Asunto: Re: Clase Java
> >>
> >> Hola.
> >>
> >> Estoy en versión 7.1, si lo ejecuto desde QSH funciona.
> >> Si la llamo de esta forma
> >>    F*
> ******************************************************************
> >>    D* SE DEFINEN LOS PARÁMETROS DE LA API QCMDEXC
> >>    D*
> >>    D CMDSTRING       S             25    INZ('JAVA
> CLASS(''bascula'')')
> >>    D CMDLENGTH       S             15P 5 INZ(25)
> >>    D*             AHORA SE LLAMA A QCMDEXC CON EL MANDATO CL 'JAVA'
> >>    C                   CALL 'QCMDEXC'
> >>    C                   PARM CMDSTRING
> >>    C                   PARM CMDLENGTH
> >>    C*
> >>
> >> funciona.
> >>
> >> Lo que no consigo es que me devuelva nada.
> >> He probado muchas cosas.
> >> Esto es lo último
> >> D*
> >> D peso            PR              O   EXTPROC(*JAVA:'bascula2':
> >> D                                                *CONSTRUCTOR)
> >> D                                     CLASS(*JAVA:'bascula2')
> >> D pesobas         PR            50A   EXTPROC(*JAVA:'bascula2'
> >> D                                         :'pesobas') VARYING
> >> D PESO3           S               O   CLASS(*JAVA:'bascula2')
> >> D PESO2           S             50A   VARYING
> >> D*
> >> C* COMIENZO DEL PROGRAMA
> >>    /FREE
> >>           PESO3=peso();
> >>           PESO2=pesobas(PESO3);
> >>           dsply PESO2;
> >>           *inlr=*on;
> >>
> >> Un Saludo.
> >>
> >>
> >>
> >> El 28/02/2017 a las 13:27, Javier Mora escribió:
> >>> ¿Nos puedes mostrar cómo has definido el prototipo de los métodos
> de
> >> la clase?
> >>> ¿Cómo la usas?
> >>> ¿Qué error te genera el programa?
> >>> ¿Encuentra el programa RPG la clase de Java? Configurar
> >> convenientemente CLASSPATH.
> >>> ¿Versión S.O. y JVM?
> >>>
> >>> Saludos,
> >>>
> >>> Javier
> >>>
> >>>> -----Mensaje original-----
> >>>> De: [email protected] [mailto:forum.help400-
> >>>> [email protected]] En nombre de Antonio Enviado el:
> martes,
> >>>> 28 de febrero de 2017 12:59
> >>>> Para: forum.help400
> >>>> Asunto: Clase Java
> >>>>
> >>>> Buenos días.
> >>>>
> >>>> Estoy intentando llamar a una clase java que recupera los datos de
> >>>> una báscula.
> >>>>
> >>>> La clase Java debe de devolver el peso en un string, pero no
> >>>> consigo realizar correctamente la llamada desde el rpg.
> >>>>
> >>>> He seguido los ejemplos del manual de ibm, pero no encuentro la
> >> forma.
> >>>> ¿Alguien tiene un ejemplo?
> >>>>
> >>>> Gracias.
> >>>>
> >>>>
> >>>> ____________________________________________________
> >>>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> >>>> Forum.Help400 © Publicaciones Help400, S.L.
> >>> ____________________________________________________
> >>> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> >>> Forum.Help400 © Publicaciones Help400, S.L.
> >>> .
> >>>
> >> ____________________________________________________
> >> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> >> Forum.Help400 © Publicaciones Help400, S.L.
> >>
> >>
> >> ____________________________________________________
> >> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> >> Forum.Help400 © Publicaciones Help400, S.L.
> 
> 
> ____________________________________________________
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

Responder a