Buenas, 

Yo lo que hago es que tengo un .jar con todas las clases. 
De este modo sólo tienes que establecer el nombre del jar en el classpath y
te olvidas de donde esta cada una:

         JAVA       CLASS('/HOME/SCCLASSES/SCENS/SCENS.JAR') +   
                      PARM(&DIREC) +                             
                      CLASSPATH('/HOME/SCCLASSES/SCENS')         

Un saludo,

JL

-----Mensaje original-----
De: [email protected]
[mailto:[email protected]] En nombre de Javier Mora
Enviado el: lunes, 04 de abril de 2011 9:36
Para: forum.help400
Asunto: RE: Clases de Java llamados desde RPGLE

A mí también me extrañó este comportamiento cuando estuve haciendo pruebas
con Java desde RPG. Después de mucho leer e investigar llegué a la siguiente
conclusión:

- Sólo se arranca una máquina virtual Java por trabajo.
- La configuración de la JVM se tiene que hacer antes de arrancarla.
- Una vez arrancada ya no es posible cambiar su configuración, en la que se
incluye CLASSPATH.
- Si intentas parar la máquina y volverla a arrancar ocurren errores (al
menos en versión V5R4).

Yo también estoy buscando una solución para no tener que preveer que clases
Java van a tener que utilizarse durante toda la sesión de trabajo.

Javier

> -----Mensaje original-----
> De: [email protected] 
> [mailto:[email protected]] En nombre de 
> [email protected]
> Enviado el: viernes, 01 de abril de 2011 22:00
> Para: [email protected]
> Asunto: Clases de Java llamados desde RPGLE
> 
> En un mismo proceso ejecuto un programa RPG, que llama a un 
> método java y por tal motivo construyo un CLASSPATH (Ejemplo: 
> ADDENVVAR
> ENVVAR(CLASSPATH) VALUE('/folder1/myclass1) REPLACE(*YES)), 
> funciona correctamente el programa, acto seguido llamo a otro 
> programa RPG, que también llama a un método java que esta en 
> otra carpeta IFS, lo cual cambio el CLASSPATH Ejemplo: 
> ADDENVVAR ENVVAR(CLASSPATH)
> VALUE('/folder2/myclass2') REPLACE(*YES), pero este me arroja 
> un error que no encuentra la clase.
> Para solucionar el problema en la primera construcción del 
> CLASSPATH ya le incluyo todas las carpetas Ejemplo ADDENVVAR 
> ENVVAR(CLASSPATH)
> VALUE('/folder2/myclass2:/folder1/myclass1') REPLACE(*YES).
> Mi pregunta es tengo que incluir en el primer CLASSPATH todas 
> las carpetas en donde están las distintas clases?
> O hay alguna otra forma de ir cambiando el CLASSPATH en el 
> mismo proceso?
> 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.

Responder a