Michel Pelletier wrote:
-----Original Message----- From: Tim Hawes [mailto:tim.hawes@ncmail.net] Sent: Monday, April 19, 1999 3:55 PM To: michel@digicool.com Cc: zope@zope.org Subject: Re: [Zope] URL problems
fact that new images can not be created straight-forwardly, because the url for a new image is skewed as thus: http://foo.bar.net/Zope/production/.?%3Amethod=manage_addDTMLD
Removing the "." between "production/" and the "?" by hand works, but this is simply an 'out of the question' answer for something to distribute enterprise wide.
A customer of ours, who uses Netscape Server throughout their system, has run into this problem. This is a bug in Netscape Server. When NS sees a the . in the URL, it barfs, and the request never even gets to Zope. Note that, according to the RFC, a . in a URL is perfectly legal, therefore this is definately a NS problem.
I hate to wax philosophic here, but this is where open source software kicks commercial software down to expensive junk.
I could not agree more, however, the successfulness of any software product will be based on how well the software integrates with what is already out there. Many companies have already invested in the expensive junk, and when they are introduced to open source software, the transition is much more possible if open source is compatible with what they have already purchased. This prevents expensive overhauls to the new system (any major software overhauls, free or not, can be very expensive when you start talking 'bottom line').
The easy solution is to use a standards compliant server, and not Netscape. Given Netscape's current market situation it may be a while before they ever fix this.
The hard solution is to go through all of the Zope files, and change every form action that is "." to <!--#var URL1--> and all ".."s to <!--#var URL2-->
Note, this is not tested, and may not even work.
-Michel
Michel, Going through and editing files seemed to be the "more likely" candidate in my case, so from the Zope directory, I issued: grep 'FORM ACTION=\"..\"' `find ./`|grep -v '#'|less Nothing showed up. So then I do a: grep 'FORM ACTION=\".\"' `find ./`|grep -v '#'|less Two files show up. Two instances in ./lib/python/OFS/main.dtml and one in ./lib/python/OFS/renameForm.dtml I changed the FORM ACTION="." to FORM ACTION=<!--#var URL1--> and restarted pcgi. It worked! Can this information along with the editing that needs to be done on nscgi-auth.c for it to compile for Enterprise 3.x be posted somewhere where others can get to it? It would be nice to have this documented. And it would be nice if this solution changing "." to <!--#var URL1--> (works for other servers) could be made to the Zope distribution. Thanks! -- Tim Hawes tim.hawes@ncmail.net