I'm trying to run an external method that has a line that runs an os.system 
command to execute a Java .jar executable that simply outputs a text file as 
well as prints out a string.

I've saved the python script as well as the Java .jar executable in my 
Extensions folder:


Here is my Python script:

def runYahooSearch2(self):

        import os

        homedir = os.getcwd() 
        # on my machine homedir is /var/lib/zope2.8/instance/plone-site
        command = "java -jar "+ homedir + "/Extensions/test.jar"  
        whatisread = os.popen(command).read()
        print whatisread

This external method is triggered in my DTML code. I've created other external 
methods before so i know i've done it right.. but the os.system() command for 
java -jar just doesn't seem to work. I've tried to use other commands such as:
        os.popen("ls") and it works perfectly

Its just this java -jar which does not execute at all... I know it doesn't 
execute at all cos it doesn't output a file or print the string. If i manually 
type out into the terminal :

         java -jar /var/lib/zope2.8/instance/plone-site/Extensions/test.jar

it works perfectly
But using the external method given above just gives me a blank output.

I've also tried popen2:
        from popen2 import popen2
        outputTGT, inputTGT = popen2(command)
        print outputTGT.readline()

and still the jar is simply skipped and not executed.

Does anyone know whats the cause and cure for this problem?... Or anynone knows 
any other method i can use instead of os.popen os.popen2 and os.system to run 
this command line statement?... or any way i can catch the exception which is 
being thrown when the java -jar is attempting to run ( if there is any in the 
firt place) ?

Anything would be highly appreciated!... Kinda in a fix right now!...

Thanks in advance!


Zope maillist  -  Zope@zope.org
**   No cross posts or HTML encoding!  **
(Related lists -
 http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to