On Sun, Aug 9, 2009 at 11:52 AM, Yarko Tymciurak <yark...@gmail.com> wrote:

> you already have web2py in the path (at startup) - why not use:
>
> from applications.myapp.modules.w2popenid import Web2pyFetcher


or for that matter, so it is more portable between apps,  you could put it
in applications/openid, and import from modules there...

>
>
> This is simple and reliable.
>
> Also (to ask the obvious)  did you put an __init__.py (even if empty) in
> your modules folder?
>
>
>
>
> On Sun, Aug 9, 2009 at 11:45 AM, Jonathan Lundell <jlund...@pobox.com>wrote:
>
>>
>> On Aug 9, 2009, at 1:49 AM, Bottiger wrote:
>>
>> >
>> > Massimo, it is in the path because above there is the following line:
>> >
>> > sys.path.append('applications/%s/modules' % request.application)
>> >
>> > And it does work if you first request a page from "provider" before
>> > using the "cas" application, so its definately a timing issue rather
>> > than a path/import issue.
>>
>> Use an absolute path, maybe? Can the cwd change?
>>
>> And test sys.path to make sure it's not there. Still not 100% thread-
>> safe, but as a practical matter not much risk
>>
>> >
>> > On Aug 9, 1:03 am, mdipierro <mdipie...@cs.depaul.edu> wrote:
>> >> I think, this should not work
>> >>
>> >> from w2popenid import Web2pyFetcher
>> >>
>> >> because w2popenid is not in path. Twy
>> >>
>> >> exec('from applications.%s.modules.w2popenid import Web2pyFetcher' %
>> >> request.application)
>> >>
>> >> On Aug 9, 2:12 am, Bottiger <bottig...@gmail.com> wrote:
>> >>
>> >>> I have been trying to create an OpenID version of Auth.
>> >>
>> >>> I stumbled upon a very puzzling behavior that I think may be an
>> >>> underlying consequence of using exec. I do not know for sure though
>> >>> because the bug is very strange.
>> >>
>> >>> First the setup. I am using hcvst's openid provider so I can test
>> >>> locally.
>> >>
>> >>> However, if I try to use it by using the OpenID auth:
>> http://127.0.0.1:8000/cas/default/user/login
>> >>
>> >>> then the provider address:
>> http://127.0.0.1:8000/provider/openid/id/test
>> >>
>> >>> will complain:
>> >>
>> >>>   File "C:/Users/admin/Desktop/web2py/applications/provider/
>> >>> controllers/openid.py", line 7, in <module>
>> >>>     from w2popenid import Web2pyFetcher
>> >>> ImportError: cannot import name Web2pyFetcher
>> >>
>> >>> Obviously, w2popenid does exist, and Web2pyFetcher is in the file
>> >>> but
>> >>> web2py chokes! But then I figured out if I restarted the server and
>> >>> then first visited:
>> >>
>> >>> http://127.0.0.1:8000/provider/openid/id/test
>> >>
>> >>> Then it worked just fine!
>> >>
>> >>> So I am wondering if anyone can explain this bizarre behavior.
>> >>
>> >>> Note: the "cas" application version of w2popenid does not have a
>> >>> Web2pyFetcher but the "provider" one does. This does not excuse
>> >>> Web2Py
>> >>> though.
>> >>
>> >>> Source Code:http://www.codexon.com/temp/bug.zip
>> > >
>>
>>
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to