tags:

views:

85

answers:

2

Hello. I have a Java app that takes pretty much time to be initialized (so I can't use command-line like interface) and I need to pass text and receive the output of a Java method from Python. Is it possible to load the Java application, have it opened all the time the Python script runs and use a method from that app?

+2  A: 

I don't think the use of Python helps all that much over a command line (at least not a *nix command line), but the basic idea is to communicate over a socket or some similar mechanism. That means that the Java application will have to be wrapped in some code which opens a socket and waits for the python script to contact it. If you are most comfortable with python, you could look to implement that wrapper in Jython.

Yishai
A: 

I've used JPype for something similar and it worked great.

JPype is an effort to allow python programs full access to java class libraries. This is achieved not through re-implementing Python, as Jython/JPython has done, but rather through interfacing at the native level in both Virtual Machines.

If the java app is running you should also consider xml-rpc as it also works well.

Paul Hildebrandt