[mod_python] New Module Importer Woes

Graham Dumpleton graham.dumpleton at gmail.com
Mon Mar 3 20:25:04 EST 2008


Apply fix in:

  https://issues.apache.org/jira/browse/MODPYTHON-220

Graham

On 04/03/2008, Luke Burden <luke at demonware.net> wrote:
> Hi all,
>
>  I get swamped with ImportErrors when using the latest module importer
>  with mod_python 3.3 / apache 2.2 / python 2.5.
>
>  The site structure is quite flat - all the python source files in:
>  /var/www/sitename/src/
>
>  And all the psps in:
>
>  /var/www/sitename/src/psps/
>
>  The apache configuration is nothing special, and is thus:
>
>  <Directory "/var/www/sitename/src">
>         SetHandler mod_python
>         PythonHandler mainhandler
>         PythonDebug On
>         PythonInterpreter sitename
>  </Directory>
>
>  Import statements from .psp files in the psps directory are what are failing.
>  So for example, /var/www/sitename/src/psps/page.psp might have a line,
>  "import model", hoping to get it's sweaty hands on
>  /var/www/sitename/src/model.py.  But an ImportError will occur, of the
>  form:
>
>  ======
>  Traceback (most recent call last):
>
>   File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line
>  1537, in HandlerDispatch
>     default=default_handler, arg=req, silent=hlist.silent)
>
>   File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line
>  1229, in _process_target
>     result = _execute_target(config, req, object, arg)
>
>   File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line
>  1128, in _execute_target
>     result = object(arg)
>
>   File "/var/www/sitename/src/mainhandler.py", line 290, in handler
>     return genpages.page(req)
>
>   File "/var/www/sitename/src/genpages.py", line 20, in page
>     template.run(vars=vars)
>
>   File "/usr/lib/python2.5/site-packages/mod_python/psp.py", line 243, in run
>     exec code in global_scope
>
>   File "/var/www/sitename/src/psps/page.psp", line 2, in <module>
>     import model
>
>  ImportError: No module named model
>  ======
>
>  The frustrating thing is, in the module cache dump, you can see
>  model.py has been loaded successfully already so it's in scope.
>
>  I've tried apache directives to add the src folder to the importer
>  path, but haven't had any success with that.
>  Any suggestions anyone?  Is there a better way of structuring modules
>  / psps to be mod_python 3.3 compatible?  Any advice really
>  appreciated, thanks.
>
>  - luke
>  _______________________________________________
>  Mod_python mailing list
>  Mod_python at modpython.org
>  http://mailman.modpython.org/mailman/listinfo/mod_python
>


More information about the Mod_python mailing list