From: Stefan S. <ste...@tu...> - 2001-04-28 18:21:53
|
OS: OS/2 Warp 4 Fixpack 11 Python: 2.0 Webserver: Apache 1.3.19 Webclient: Netscape 4.61 Adapter: WebKit.cgi AppServers: AsyncThreadedAppServer and ThreadedAppServer All programs run on the same computer. - Though Python for OS/2 has an asyncore module, AsyncThreadedAppServer doesn't work fully. The example pages are served but I also get the following kind of traceback on the console: BEGIN REQUEST Sat Apr 28 19:54:03 2001 receiving request from <socket object, fd=5, family=2, type=1, protocol=0> received 2486 bytes request has keys: format, time, environ, input request uri = /webware/WebKit/WebKit.cgi//Examples/Time Exception in thread Thread-6: Traceback (most recent call last): File "Lib/threading.py", line 376, in __bootstrap self.run() File "Lib/threading.py", line 364, in run apply(self.__target, self.__args, self.__kwargs) File "WebKit/AsyncThreadedAppServer.py", line 149, in threadloop rh.handleRequest() #this is all there is to it File "WebKit/AsyncThreadedAppServer.py", line 262, in handleRequest MainRelease.release() AttributeError: release (no END REQUEST) Looking at the code I guess that comes because SelectRelease in SelectRelease.py can't be instantiated, causing the MainRelease = lambda:() statement in AsyncThreadedAppServer.py to be executed. Following observations regard the ThreadedAppServer which seems to work better. (At least it doesn't throw exceptions at the console ;-) ) - If I type http://localhost/webware/WebKit/WebKit.cgi as URL in the browser the Welcome example page is served. However, the URL is rewritten by the browser as http://localhost/webware/WebKit/WebKit.cgi// (with two slashed appended). This doesn't happen with an equivalent setup on Solaris 2.7 (Apache 3.1.19, Netscape 4.74, WebKit.cgi, AsyncThreadedAppServer). - If I select Time from the sidebar I get the page; the URL then reads http://localhost/webware/WebKit/WebKit.cgi//Examples/Time - After selecting the Admin context: http://localhost/webware/WebKit/WebKit.cgi/Admin// and the password query. This URL remains after authorization. - After selecting Config in the top area of the sidebar: http://localhost/webware/WebKit/WebKit.cgi/Admin//Config - Choosing the Examples context again results in the URL http://localhost/webware/WebKit/WebKit.cgi/Admin/Examples/ and consequently, a message 404 Not found: /webware/WebKit/WebKit.cgi/Admin/Examples/ Any ideas? Thanks in advance :-) . Stefan |
From: Jay L. <js...@js...> - 2001-04-29 13:56:24
|
OK, it sounds like the biggest issue you're having is with paths. We do all the path determination stuff by finding out what platform we're running on with a call to os.name(). What do you get for that on OS/2? Jay On 28 Apr 2001 20:21:47 +0200, Stefan Schwarzer wrote: > OS: OS/2 Warp 4 Fixpack 11 > Python: 2.0 > Webserver: Apache 1.3.19 > Webclient: Netscape 4.61 > Adapter: WebKit.cgi > AppServers: AsyncThreadedAppServer and ThreadedAppServer > All programs run on the same computer. > > - Though Python for OS/2 has an asyncore module, AsyncThreadedAppServer > doesn't work fully. The example pages are served but I also get the > following kind of traceback on the console: > > BEGIN REQUEST > Sat Apr 28 19:54:03 2001 > receiving request from <socket object, fd=5, family=2, type=1, protocol=0> > received 2486 bytes > request has keys: format, time, environ, input > request uri = /webware/WebKit/WebKit.cgi//Examples/Time > Exception in thread Thread-6: > Traceback (most recent call last): > File "Lib/threading.py", line 376, in __bootstrap > self.run() > File "Lib/threading.py", line 364, in run > apply(self.__target, self.__args, self.__kwargs) > File "WebKit/AsyncThreadedAppServer.py", line 149, in threadloop > rh.handleRequest() #this is all there is to it > File "WebKit/AsyncThreadedAppServer.py", line 262, in handleRequest > MainRelease.release() > AttributeError: release > > (no END REQUEST) > > Looking at the code I guess that comes because SelectRelease in > SelectRelease.py can't be instantiated, causing the > MainRelease = lambda:() statement in AsyncThreadedAppServer.py to > be executed. > > Following observations regard the ThreadedAppServer which seems to > work better. (At least it doesn't throw exceptions at the console ;-) ) > > - If I type http://localhost/webware/WebKit/WebKit.cgi as URL in the > browser the Welcome example page is served. However, the URL is > rewritten by the browser as > http://localhost/webware/WebKit/WebKit.cgi// (with two slashed > appended). > > This doesn't happen with an equivalent setup on Solaris 2.7 (Apache > 3.1.19, Netscape 4.74, WebKit.cgi, AsyncThreadedAppServer). > > - If I select Time from the sidebar I get the page; the URL then reads > http://localhost/webware/WebKit/WebKit.cgi//Examples/Time > > - After selecting the Admin context: > http://localhost/webware/WebKit/WebKit.cgi/Admin// and the password > query. This URL remains after authorization. > > - After selecting Config in the top area of the sidebar: > http://localhost/webware/WebKit/WebKit.cgi/Admin//Config > > - Choosing the Examples context again results in the URL > http://localhost/webware/WebKit/WebKit.cgi/Admin/Examples/ and > consequently, a message > 404 Not found: /webware/WebKit/WebKit.cgi/Admin/Examples/ > > Any ideas? Thanks in advance :-) . > > Stefan > > > > _______________________________________________ > Webware-discuss mailing list > Web...@li... > http://lists.sourceforge.net/lists/listinfo/webware-discuss |
From: Stefan S. <ste...@tu...> - 2001-04-29 20:36:19
|
Hello Jay On 29 Apr 2001, Jay Love wrote: > OK, it sounds like the biggest issue you're having is with paths. We do > all the path determination stuff by finding out what platform we're > running on with a call to os.name(). What do you get for that on OS/2? os.name == 'os2' Stefan |
From: Stefan S. <ste...@tu...> - 2001-04-29 20:46:04
|
Hello Jay On Sun, 29 Apr 2001, Stefan Schwarzer wrote: > On 29 Apr 2001, Jay Love wrote: > > OK, it sounds like the biggest issue you're having is with paths. We do > > all the path determination stuff by finding out what platform we're > > running on with a call to os.name(). What do you get for that on OS/2? > > os.name == 'os2' An additinal note, if that's important. In the port that I have here: os.sep == '/' os.altsep == '\\' # i. e. a single backslash ;) Stefan |