Re: Ejecutar programa externo Java desde Galssfish

Sebastian Gurin <sgurin-nLx/x0uvtyR/[email protected]>
Newsgroups gmane.comp.java.javaspain
Organization softpoint
Message-ID <[email protected]>
On Thu, 8 May 2008 18:21:58 -0500
"Diego Ochoa Tocachi" <[email protected]> wrote:

> El día 8 de mayo de 2008 13:51, Sebastian Gurin <sgurin-nLx/[email protected]>
> escribió:
> 
> >   haz evaluado algún mecanismo de comunicación entre procesos en java?
> > sockets? rmi? digo, dejar ambos procesos ejecutandose (el programa de
> > escritorio y la aplicación web, y que ambos dialoguen utilizando algún
> > mecanismo de comunicación entre procesos o rmi para la obtención de datos.
> > Me parece que en caso de que ambas aplicaciones ya estem aduras y realicen
> > bien sus respectivas tareas deberías tratar de comunicarlas en lugar de
> > unirlas, no importando si ambas están escritas en java...
> >
> >
> > On Thu, 8 May 2008 12:29:58 -0500
> > "Diego Ochoa Tocachi" <[email protected] <diego.ochoat%40gmail.com>>
> > wrote:
> >
> > > Saludos listeros,
> > >
> > > Me encuentro con una situacion relativamente dificil. Lo que pasa es que
> > > tengo una aplicacion Java de escritorio el cual interactua con Matlab(TM)
> > > 2007 para ejecutar funciones de Matlab(TM) propias de esa version, usando
> > el
> > > Matlab Java builder(TM).
> > >
> > > Tambien tengo una aplicacion Empresarial con glassfish V2 que en su
> > > classpath incluye las librerias nativas de Matlab(TM) 2008 para ejecutar
> > > funciones Matlab mediante Matlab java builder(TM).
> > >
> > > Trate de ejecutar las funciones Matlab(TM) que se usan en la aplicacion
> > de
> > > escritorio desde la aplicacion empresial pero el servidor glassfih sufre
> > un
> > > error cuando uso Matlab(TM) 2007 y las funciones hechas en Matlab(TM)
> > 2007
> > > no son soportadas por Matlab(TM) 2008 (Debido a cambios de version de
> > > Matlab(TM)).
> > >
> > > Una de las soluciones que rapidamente encontre es ejecutar mediante
> > > Runtime.exec() la aplicación de escritorio, pero la verdad es que se me
> > hace
> > > medio incoherente ejecutar una aplicacion java desde otra aplicacion
> > java.
> > >
> > > Si pudieran recomendarme una mejor solucion les agredeceré mucho.
> > >
> > >
> > > --
> > > Diego Ochoa - darkbalder
> > > email: [email protected] <diego.ochoat%40gmail.com>
> > > Luis Pasteur 2-30 y Copernico
> > > Telf: +593 7 2451 388
> > > Fax: +593 7 2451 388
> > > Movil: 593 95359807
> > > Cuenca - Ecuador
> > >
> >
> > --
> > Sebastian Gurin <sgurin-nLx/x0uvtyR/[email protected] <sgurin%40montevideo.com.uy>>
> >  
> >
> 
> Gracias por la respuesta, voy a realizarla y les comentaré los resultados
> 

además de rmi o sockets, también podrías trabajar con web services. La idea sería definir los servicios de la máquina que realiza el cálculo con mathlab. Lo bueno de este mecanismo de comunicación: acceder desde aplicaciones no java, puede hacerse sobre http o https (no hay problemas con firewalls). Lo malo: puede ser lento ya que implica comunicación vía http

Si vas a ir por este camino te recomiendo implementar los webservices tipo REST en lugar de SOAP. en google tienes info a montones. suerte
> 
> -- 
> Diego Ochoa - darkbalder
> email: [email protected]
> Luis Pasteur 2-30 y Copernico
> Telf: +593 7 2451 388
> Fax: +593 7 2451 388
> Movil: 593 95359807
> Cuenca - Ecuador
> 


-- 
Sebastian Gurin <sgurin-nLx/x0uvtyR/[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.