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.

