Bugs item #836157, was opened at 2003-11-05 00:53
Message generated for change (Comment added) made by cito
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=104866&aid=836157&group_id=4866
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: WebKit
Group: None
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: Toyotomi Hideyoshi (kaishaku)
Assigned to: Nobody/Anonymous (nobody)
Summary: HTTPRequest serverSidePath does not accept absolute sitepath
Initial Comment:
req.serverSidePath accepts relative site paths fine, but
does not work with an absolute site path.
This :
req.serverSidePath('/index.psp')
Will return :
'\index.psp'
Instead of the expected absolute path.
My solution, possibly incorrect for some installations but
works for me, is as follows :
if path:
if path[0]=='/' or path[0]=='\\':
return os.path.normpath
(self._environ['DOCUMENT_ROOT']+path)
else:
return
os.path.normpath(os.path.join(os.path.dirname
(self._serverSidePath), path))
else:
return self._serverSidePath
The 2nd if and it's return statement are the addition.
The whole serverSidePath now looks like this. I have
been using this for months. This functionality is fully
common to web development platforms I depend on.
# ----------------------------------------------------
-----------------
# kaishaku fix
def serverSidePath(self, path=None):
""" Returns the absolute server-side path
of the request. If the optional
path is passed in, then it is joined with the server side
directory to form a path relative to the
object.
"""
if not hasattr(self, '_serverSidePath'):
app = self._transaction.application()
self._serverSidePath,
self._serverSideContextPath, self._contextName =
app.serverSideInfoForRequest(self)
if path:
if path[0]=='/' or path[0]=='\\':
return os.path.normpath
(self._environ['DOCUMENT_ROOT']+path)
else:
return
os.path.normpath(os.path.join(os.path.dirname
(self._serverSidePath), path))
else:
return self._serverSidePath
# ----------------------------------------------------
-----------------
----------------------------------------------------------------------
>Comment By: Christoph Zwerschke (cito)
Date: 2006-07-07 23:42
Message:
Logged In: YES
user_id=193957
An absolute path is now treated as if it was a relative one,
so you will always get a file system path back. This is
simply the concatentation of the current server side path
and the passed path and may be different from the server
side path if the passed path would be evaluated as a URL
(with adapter, context etc.). Fixed in SVN, will go into
Webware 0.9.2.
----------------------------------------------------------------------
Comment By: Toyotomi Hideyoshi (kaishaku)
Date: 2004-02-16 19:51
Message:
Logged In: YES
user_id=559878
I attached the code so it's easier to read, see the
attachment instead of trying to decipher the code mutilated
by sourceforge in the original message.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=104866&aid=836157&group_id=4866
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Webware-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/webware-devel