Hi, Please help I am unable to get Pylucene working with JCC on Apache 2.22 using Mod_WSGI on Windows XP.
*Works from Command Line* C:\python Python 2.7.1 (r271:86832, Nov 27 2010 18:30:46) [MSC v.1500 32 bit (Intel)] on win32 >>> import jcc >>>from jcc import _jcc >>>dir (_jcc) [‘Boolean’, ‘Bye’, ‘CLASSPATH’, ….. Works from Command Line C:\python c:\Python27\Lib\site-packages\JCC-2.13-py2.7-win32.egg\jcc\__init__.py JCC – C++/Python Java Native Interface Code Generator Usage: python –m jcc.__main__ [options] [actions] *Fails with MOD_WSGI using a simple test script:* import os, sys sys.path.append('C:\Python27\Lib\site-packages\JCC-2.13-py2.7-win32.egg\jcc.dll') sys.path.append('C:\Program Files\Java\jre6\bin\client\jvm.dll') def application(environ, start_response): import jcc from jcc import _jcc status = '200 OK' output = '' output += 'sys.version = %s\n' % repr(sys.version) output += 'sys.prefix = %s\n' % repr(sys.prefix) output += 'sys.path = %s\n' % repr(sys.path) output += 'wsgi.multithread = %s\n' % repr(environ['wsgi.multithread']) output += 'mod_wsgi.process_group = %s\n' % repr(environ['mod_wsgi.process_group']) output += 'os.environ = %s \n' % repr(os.environ['Path']) response_headers = [('Content-type', 'text/plain'), ('Content-Length', str(len(output)))] start_response(status, response_headers) return [output] *Fails with error:* [Wed Aug 15 18:44:19 2012] [warn] mod_wsgi: Compiled for Python/2.7. [Wed Aug 15 18:44:19 2012] [warn] mod_wsgi: Runtime using Python/2.7.1. [Wed Aug 15 18:44:19 2012] [notice] Apache/2.2.22 (Win32) mod_wsgi/3.3 Python/2.7.1 configured -- resuming normal operations [Wed Aug 15 18:44:19 2012] [notice] Server built: Jan 28 2012 11:16:39 [Wed Aug 15 18:44:19 2012] [notice] Parent: Created child process 4596 [Wed Aug 15 18:44:19 2012] [warn] mod_wsgi: Compiled for Python/2.7. [Wed Aug 15 18:44:19 2012] [warn] mod_wsgi: Runtime using Python/2.7.1. [Wed Aug 15 18:44:19 2012] [notice] Child 4596: Child process is running [Wed Aug 15 18:44:19 2012] [notice] Child 4596: Acquired the start mutex. [Wed Aug 15 18:44:19 2012] [notice] Child 4596: Starting 64 worker threads. [Wed Aug 15 18:44:19 2012] [notice] Child 4596: Starting thread to listen on port 80. [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] mod_wsgi (pid=4596): Exception occurred processing WSGI script 'C:/temp/wsgi_test.py'. [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] Traceback (most recent call last): [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] File "C:/temp/wsgi_test.py", line 6, in application [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] import jcc [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] File "c:\\Python27\\lib\\site-packages\\jcc-2.13-py2.7-win32.egg\\jcc\\__init__.py", line 31, in <module> [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] from jcc import _jcc [Wed Aug 15 18:44:30 2012] [error] [client 127.0.0.1] ImportError: DLL load failed: The specified module could not be found. *I think Mod_WSGI is installed correctly because removing this from the above test script:* import jcc from jcc import _jcc *Results correct output in the browser window:* sys.version = '2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)]' sys.prefix = 'c:\\Python27' sys.path = ['c:\\Python27\\lib\\site-packages\\south-0.7.3-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\django_admin_tools-0.4.0-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\oauth2-1.5.170-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\httplib2-0.7.2-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\django_social_auth-0.6.0-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\python_openid-2.2.5-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\python_dateutil-1.5-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\distribute-0.6.24-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\django_chronograph-0.2.0.dev-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\pyofc2-0.1.5dev-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\anyjson-0.3.1-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\django_pagination-1.0.7-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\gdata-2.0.17-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\flickrapi-1.4.2-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\threadpool-1.2.7-py2.7.egg', 'c:\\Python27\\lib\\site-packages\\jcc-2.13-py2.7-win32.egg', 'c:\\Python27\\lib\\site-packages\\lucene-3.6.0-py2.7-win32.egg', 'c:\\Python27\\Lib', 'c:\\test\\git_repo\\src', 'c:\\test\\git_repo\\src\\plunk4', 'C:\\Program Files\\Java\\jdk1.6.0_26\\bin', 'C:\\Program Files\\Java\\jdk1.6.0_26\\bin\\client', 'C:\\Program Files\\Apache Software Foundation\\Apache2.2', 'C:\\WINDOWS\\system32\\python27.zip', 'c:\\Python27\\DLLs', 'c:\\Python27\\lib\\plat-win', 'c:\\Python27\\lib\\lib-tk', 'C:\\Program Files\\Apache Software Foundation\\Apache2.2\\bin', 'c:\\Python27', 'c:\\Python27\\lib\\site-packages', 'C:\\Python27\\Lib\\site-packages\\JCC-2.13-py2.7-win32.egg\\jcc.dll', 'C:\\Program Files\\Java\\jre6\x08in\\client\\jvm.dll', 'C:\\Python27\\Lib\\site-packages\\JCC-2.13-py2.7-win32.egg\\jcc.dll', 'C:\\Program Files\\Java\\jre6\x08in\\client\\jvm.dll'] wsgi.multithread = True mod_wsgi.process_group = '' os.environ = 'c:\\Python27\\lib\\site-packages\\jcc-2.13-py2.7-win32.egg;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\system32\\wbem;c:\\program files\\common files\\roxio shared\\dllshared\\;c:\\program files\\common files\\roxio shared\\10.0\\dllshared\\;C:\\Program Files\\Java\\jdk1.6.0_26\\jre\\bin;C:\\Program Files\\Java\\jdk1.6.0_26\\jre\\bin\\client;c:\\ant\\apache-ant-1.8.2\\bin;c:\\python27\\scripts;c:\\python27;c:\\program files\\git\\cmd;c:\\program files\\ibm\\gsk8\\lib;C:\\PROGRA~1\\IBM\\SQLLIB\\BIN;C:\\PROGRA~1\\IBM\\SQLLIB\\FUNCTION;C:\\PROGRA~1\\IBM\\SQLLIB\\SAMPLES\\REPL;C:\\Program Files\\MySQL\\MySQL Server 5.5\\bin;C:\\Program Files\\QuickTime\\QTSystem\\;c:\\Python27;C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0;C:\\Python27\\Lib\\site-packages\\JCC-2.13-py2.7-win32.egg;' I think the problem has something to do with how paths are being interpreted when the jcc script is run via command line versus when it is run inside the MOD_WSGI process. I believe it is inserting extra \\ in the path separator. So rather than c:\\python27\\Lib paths are being interpreted as c:\\\\python\\\\Lib Appreciate any help on this. I have been stuck for a few days now. Thanks. Carlos * * *What version of the product are you using? On what operating system?* lucene-3.6.0-py2.7-win32.egg JCC-2.13-py2.7-win32.egg Python 2.7.1 Windows XP 32 bit Apache 2.2.2 **