[Zope] Delivery failure notification

Mail Delivery System postmaster@UWCMCM1M.UWCM.AC.UK
Tue, 23 Apr 2002 17:03:29 GMT0BST


--Part_Boundary-616B08
Content-type: Text/plain; charset=US-ASCII
Content-description: Mail delivery failure report
Content-disposition: Inline

With reference to your message with the subject:
   "Zope digest, Vol 1 #2063 - 22 msgs"

The local mail transport system has reported the following problems
it encountered while trying to deliver your message:

-------------------------------------------------------------------
   User mail.zope.co.uk not known at this site.
-------------------------------------------------------------------

Your mail message is being returned to you in the next part of this
message.

Should you need assistance, please mail postmaster@UWCMCM1M.UWCM.AC.UK .

--Part_Boundary-616B08
Content-type: Message/RFC822
Content-description: Contents of original mail message

Received: from UWCMCM1M/SpoolDir by UWCMCM1M.UWCM.AC.UK (Mercury 1.48)
  for <Wmljan.STF.MEDIA.DACS.CM@UWCMCM1M.UWCM.AC.UK>;  23 Apr 02 17:03:18 GMT0BST
Resent-from: Wmljan.STF.MEDIA.DACS.CM@UWCMCM1M.UWCM.AC.UK
Resent-to: mail.zope.co.uk
Resent-Date: Tue, 23 Apr 2002 17:03:18 GMT0BST
X-Autoforward: 1
Return-path: <zope-admin@zope.org>
Received: from stork2.cf.ac.uk (131.251.0.30) by UWCMCM1M.UWCM.AC.UK (Mercury 1.48) with ESMTP;
    23 Apr 02 17:02:46 GMT0BST
Received: from mail.python.org ([63.102.49.29])
	by stork2.cf.ac.uk with esmtp (Exim 3.22 #1)
	id 1702ke-00064n-00
	for nichollsja@cf.ac.uk; Tue, 23 Apr 2002 17:02:44 +0100
Received: from localhost.localdomain ([127.0.0.1] helo=mail.python.org)
	by mail.python.org with esmtp (Exim 4.02)
	id 1702jc-0002Ib-00; Tue, 23 Apr 2002 12:01:40 -0400
Date: Tue, 23 Apr 2002 12:00:07 -0400
Message-ID: <20020423160007.7724.94551.Mailman@mail.python.org>
From: zope-request@zope.org
Subject: Zope digest, Vol 1 #2063 - 22 msgs
Reply-to: zope@zope.org
X-Mailer: Mailman v2.0.10 (101270)
MIME-version: 1.0
Content-type: text/plain
To: zope@zope.org
Sender: zope-admin@zope.org
Errors-To: zope-admin@zope.org
X-BeenThere: zope@zope.org
X-Mailman-Version: 2.0.10 (101270)
Precedence: bulk
List-Help: <mailto:zope-request@zope.org?subject=help>
List-Post: <mailto:zope@zope.org>
List-Subscribe: <http://lists.zope.org/mailman/listinfo/zope>,
	<mailto:zope-request@zope.org?subject=subscribe>
List-Id: Users of the Z Object Publishing Environment <zope.zope.org>
List-Unsubscribe: <http://lists.zope.org/mailman/listinfo/zope>,
	<mailto:zope-request@zope.org?subject=unsubscribe>
List-Archive: <http://lists.zope.org/pipermail/zope/>

Send Zope mailing list submissions to
	zope@zope.org

To subscribe or unsubscribe via the World Wide Web, visit
	http://lists.zope.org/mailman/listinfo/zope
or, via email, send a message with subject or body 'help' to
	zope-request@zope.org

You can reach the person managing the list at
	zope-admin@zope.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Zope digest..."


Today's Topics:

   1. Problem with dtml-sendmail (Markus Stoll)
   2. pb with the function getProperty (William GARCIA)
   3. Re: Re: [Zope-dev] Separate staging and development areas for a product (Oliver Bleutgen)
   4. Re: setting up a ZClass - base class of PropertyManager?  plus weird gradual broken product messages (Steve Spicklemire)
   5. Storing Images  in PostgreSQL (nico@beehive.de)
   6. Problem in ZOPE-MySQL connectivity..dll mismatch problem (Surajit Sengupta)
   7. Problems with Zope and Apache (J.C.Mcnulty@open.ac.uk)
   8. Re: Help with Page Counter (Python script), please (Maik Jablonski)
   9. Re: pb with the function getProperty (Maik Jablonski)
  10. Re: Ref: to my mail python-MySQL interface (Chris Withers)
  11. Xron Security help (Peter Bengtsson)
  12. Re: Inserting a variable in a context.manage statement in Python (tim)
  13. Re: pb with the function getProperty (William GARCIA)
  14. Re: Storing Images  in PostgreSQL (Andreas Heckel)
  15. Re: pb with the function getProperty (hans)
  16. Re: Storing Images  in PostgreSQL (nico@beehive.de)
  17. Re: DCOracle 2 Problem (Matthew T. Kromer)
  18. Re: setting up a ZClass - base class of PropertyManager?  plus weird gradual broken product messages (A M Thomas)
  19. Re: referencing tuples (Thomas B. Passin)
  20. Re: Problems with External Methods when starting Zope at boot time, Mac OS X (Kilian Koepsell)
  21. Re: unquote_plus NOT working in an EM ? (Florent Guillaume)
  22. FW: [Zope] Re: [Zope-dev] Separate staging and development areas for a product (Ted Skolnick)

--__--__--

Message: 1
From: "Markus Stoll" <markus.stoll@junidas.de>
To: <Zope@zope.org>
Date: Tue, 23 Apr 2002 11:18:53 +0200
Subject: [Zope] Problem with dtml-sendmail

we wrote an email form that performs a POST
on a python script. This python script calls
a dtml-method with the <dtml-sendmail>.

The dtml-sendmail does not find the MailHost
if it is not in the same folder. So I have to create
a separate MailHost in the same folder and everything is=20
fine. Acquisition otherwise works fine, the
standard_html_header is found and included.

So why does Acuqisition not work for dtml-sendmail?

Any ideas?

Markus




--__--__--

Message: 2
Date: Tue, 23 Apr 2002 11:18:14 +0200
To: zope@zope.org
From: William GARCIA <wgarcia@esrf.fr>
Subject: [Zope] pb with the function getProperty


--=====================_10785078==_.ALT
Content-Type: text/plain; charset="us-ascii"; format=flowed

I would like to display a list of  images (ids) located in a folder and 
which property State equals to 'private'
Here is the code I wrote :
       <dtml-in expr="objectIds(['Image'])">
          <dtml-if "_['sequence-item'].getProperty('State')='private'">
             <dtml-var sequence-item><br>
          </dtml-if>
       </dtml-in>

Zope generate the next error :
Error Type: AttributeError
Error Value: getProperty

If somebody can help me ?
Thanks

GARCIA William

--=====================_10785078==_.ALT
Content-Type: text/html; charset="us-ascii"

<html>
I would like to display a list of&nbsp; images (ids) located in a folder
and which property State equals to 'private'<br>
Here is the code I wrote :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;dtml-in
expr=&quot;objectIds(['Image'])&quot;&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;dtml-if
&quot;_['sequence-item'].getProperty('State')='private'&quot;&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;dtml-var sequence-item&gt;&lt;br&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/dtml-if&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/dtml-in&gt;<br><br>
Zope generate the next error :<br>
<b>Error Type: AttributeError<br>
Error Value: getProperty<br><br>
</b>If somebody can help me ?<br>
Thanks<br><br>
GARCIA William<br>
</html>

--=====================_10785078==_.ALT--




--__--__--

Message: 3
Date: Tue, 23 Apr 2002 11:12:22 +0200
From: Oliver Bleutgen <myzope@gmx.net>
To: John Schinnerer <johnschinnerer@yahoo.com>
CC: zope@zope.org
Subject: Re: [Zope] Re: [Zope-dev] Separate staging and development areas for a product

John Schinnerer wrote:
> Aloha,
> 
> <snip>...
> 
>>... but I really need my development
>>version accessible to the internet, too.  And it would be nice to
>>have three versions so I could have a separate testing version 
>>public, as well.
>>
> 
>>What should someone like me do in order to develop a product that is
>>also in use on my server?  What do other independent developers do?
>>
> 
> Zope 'version' objects (Ch. 3, zope book, near the end) supposedly
> address some of your issues (which are similar to some of mine - I too
> would like to have fully functional preview/test sites available on my
> live server).  I haven't tried versions yet, though, because...
> 
> What the zope book info on versions doesn't say (and I haven't found
> elsewhere either) is how (or if it's even possible) to access a version
>>from outside the management interface - that is, as a client would see
> it in their browser, so it can be tested before changes are committed
> to the 'public' version.  If I can't do that, and do it transparently,
> versions don't do me any good.  There'd have to be some URL trickery
> somewhere to serve up a version without breaking buckets 'o links...

When you enter a version, you just get a cookie named 'Zope-Version'
with the path to your version as a value. You can see it for yourself if 
you configure the browser to ask before accepting cookies and look at 
the cookie details.
In Zope 2.3.3, and I suspect in any zope after that also, it's possible 
to just set this cookie, and the browser is in that version. Therefore 
the permission 'join/leave versions' is quite useless IMO.
The upside is that you need just a short code snippet (setting that 
cookie) to let anyone (including anonymous) enter any version.
Downsides are obvious and manyfold.


cheers,
oliver





--__--__--

Message: 4
Date: Mon, 22 Apr 2002 21:52:19 -0500
Subject: Re: [Zope] setting up a ZClass - base class of PropertyManager?  plus weird gradual broken product messages
Cc: Steve Spicklemire <steve@spvi.com>, zope@zope.org
To: A M Thomas <am@virtueofthesmall.com>
From: Steve Spicklemire <steve@spvi.com>


On Monday, April 22, 2002, at 09:39  PM, A M Thomas wrote:

> Thanks, Steve,
>
> I prefer PropertyManager to property sheets at the moment for a couple
> of reasons: 1) I don't have to "group" my properties, I don't have to
> remember what property is in what sheet, I don't have to use quite so
> long a command to update the properties, and

So.. only use a single propertysheet. Long command.. yeah... it's a long 
command. ;-)

> 2) If I create an instance
> of a ZClass with a propertysheet, it seems to always define the
> properties, and I want to inherit them from a parent object unless I
> specifically define them in the new object.  I may be missing something,
> but I seemed to get this effect, and that's why I switched to using
> PropertyManager.

Hmmm... the property sheet only gives the class a value for the named 
properties. This "class" value gets used if the instance doesn't have a 
value of it's own. You can give the class value some "special" value 
(e.g., 'uninitialized') if you want to check an instance to see if 
you've set a custom value for that instance.

>
> I understand why one would be nervous about ZClasses.  It is a pain not
> to be able to change base classes easily!  Deleting instances and
> starting over will probably not be an option in the future, though, as
> my product will be used in some live sites, but I may still have to make
> significant changes.
>

Too bad. ;-) If you *need* ZClasses for some reason, you can also make a 
Python base class, and subclass from that. Then you can change the base 
class of your Python class later quite easily. You could even make this 
Python class subclass from PropertyManager if you decide that's really 
what you're after.

good luck!
-steve

> Thanks hugely for the response!
> Am
>
> Steve Spicklemire wrote:
>>
>> Hi Am,
>>
>> ZClasses have "propertsheets" already.. so you shouldn't really need to
>> inherit from PropertyManager. Also.. changing ZClasses by deleting and
>> recreating is a sort of "last ditch" scenario and likely to cause
>> problems. You're probably better off deleting all your old instances 
>> and
>> starting over. This is one of the "major problems" with ZClasses that
>> makes so many developers nervous about them. Having said all that, I
>> still find them useful in conjunction with a product like ZPatterns 
>> that
>> permits you to keep the actual data/relations in SQL or LDAP or 
>> whatever.
>>
>> -steve
>>
>> On Saturday, April 20, 2002, at 03:52 PM, A M Thomas wrote:
>>
>>> Hello there, and thank you very much in advance for any help.
>>>
>>> I'm working on my Zope (2.5.0) product through the management 
>>> interface,
>>> and realized that if I just created a ZClass with base classes of
>>> ObjectManager and CatalogAware, I couldn't add properties to it :(  
>>> So,
>>> I went to re-create my ZClass - and discovered that PropertyManager
>>> isn't in the list of selectable base classes.  Why is this?  Is there
>>> some way I can inherit directly from PropertyManager?
>>>
>>> I went ahead and created it with an additional base class of
>>> DTMLDocument, since it's got PropertyManager as one of its base 
>>> classes,
>>> but this isn't what I really want -- in addition to being slightly
>>> inelegant, now the manage_findForm method doesn't appear in the
>>> available methods for creating Views.
>>>
>>> Must I create my product in Python only to get PropertyManager 
>>> cleanly?
>>> Would this even work?  And would converting be easy?
>>>
>>> Also, I noticed a curious effect: I re-created my ZClass by moving all
>>> the methods into a temp ZClass, renaming the add and addform methods,
>>> and saving out the Class ID, then deleting the ZClass and the 
>>> remaining
>>> constructor objects (Permission, and Factory).  Then I created a new
>>> ZClass with the same name as the old one, and put in the saved 
>>> ClassID,
>>> replaced the new Add and Addform methods with my original ones (by
>>> deleting the new ones and renaming the original ones back to their
>>> original names), and pasting in the methods again.
>>>
>>> However, old instances of this ZClass _gradually_ started showing
>>> "broken product" messages.  First one, then overnight, two more - and
>>> the first one didn't seem to change immediately.  They shouldn't be
>>> broken anyway, right?  Is there some known issue about deleting and
>>> re-creating ZClasses in a product?  To make matters even more
>>> interesting, now one of them isn't broken anymore.  Yes, I've 
>>> re-created
>>> this ZClass more than once today, and this isn't a good diagnostic
>>> report, I know, but I just wanted to know if anyone knew what might be
>>> going on based on similar past experience.
>>>
>>> Thanks,
>>> Am
>>>
>>>
>>>
>>> _______________________________________________
>>> Zope maillist  -  Zope@zope.org
>>> http://lists.zope.org/mailman/listinfo/zope
>>> **   No cross posts or HTML encoding!  **
>>> (Related lists -
>>>  http://lists.zope.org/mailman/listinfo/zope-announce
>>>  http://lists.zope.org/mailman/listinfo/zope-dev )




--__--__--

Message: 5
Date: Tue, 23 Apr 2002 12:09:32 +0200 (CEST)
From: <nico@beehive.de>
To: zope@zope.org
Subject: [Zope] Storing Images  in PostgreSQL

Hello,

I am trying to store images in a PostgreSQL 7.2 database using the Psycopg
database adapter, running Zope 2.5.0 on redhat linux.
I found a tip at
http://lists.initd.org/pipermail/psycopg/2001-June/000200.html and tried
it out. Unfortunately I get an error like "Can't parse object
'Gif123/'..."

Is there any documentation on how to store images in a PostgreSQL database
from Zope ?

cheers,
nico 




--__--__--

Message: 6
From: "Surajit Sengupta" <surajit@ontrackindia.com>
To: <andy@dustman.net>, <zope@zope.org>
Date: Tue, 23 Apr 2002 16:19:43 +0530
Subject: [Zope] Problem in ZOPE-MySQL connectivity..dll mismatch problem

This is a multi-part message in MIME format.

------=_NextPart_000_002A_01C1EAE2.AD989110
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hello,
    I'm using ZOPE Version 2.0, which is using the Python 2.1.2. Now I =
want to make a connectivity of ZOPE with MySQL.
    I've =20
    I'm using in Windows 2000 platform
  1.. Downloaded the Python-MySQL Interface(Version 0.9.0) [MySQLdb]
  2.. Downloaded the ZOPE MySQL database Adapter (Version 2.0.8) =
[ZMySQLDA]
  3..  Built MySQLdb(0.9.0)
  4.. Installed MySQLdb(0.9.0)
  5.. Inflated ZMySQLDA in required directory
=20
***Problems found : dll version mismatch
After running the ZOPE server: Following errors are generated

2002-04-23T06:49:32 ERROR(200) Zope Could not import Products.MySQLdb

Traceback (innermost last):

  File C:\PROGRA~1\Zope\lib\python\OFS\Application.py, line 531, in =
import_product

  File MySQLdb\__init__.py, line 27, in ?

ImportError: Module use of python20.dll conflicts with this version of =
Python.

=20

                Anticipations :=20

In C:\Program Files\Zope\bin there is python21.dll which I think the =
latest dll which the python exe of our ZOPE version is using. After =
putting it to the c:\winnt\system32 and registering it, the same error =
is coming.  During the run of Zope server __init__ of ZMySQLDA  is =
importing _mysql.pyd which is generating the error as it is searching =
for python20.dll(NOT python21.dll). I have a python20.dll also in my =
c:\winnt\system32, its version also does not match with the python exe =
our ZOPE version is using.=20

I don't know what to do

Help required

Regards
Surajit

------=_NextPart_000_002A_01C1EAE2.AD989110
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.2920.0" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hello,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp; I'm using ZOPE =
Version 2.0,=20
which is using the Python 2.1.2. Now I want to make a connectivity of =
ZOPE with=20
MySQL.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp; I've&nbsp; =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>&nbsp;&nbsp;&nbsp; I'm using in Windows =
2000=20
platform</DIV>
<OL style=3D"MARGIN-TOP: 0in" type=3D1>
  <LI class=3DMsoNormal=20
  style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt">Downloaded the=20
  Python-MySQL Interface(Version 0.9.0) [<B><SPAN=20
  style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA">MySQLdb]</SPAN></B></SPAN></B></LI>
  <LI class=3DMsoNormal=20
  style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt">Downloaded the =
ZOPE MySQL=20
  database Adapter (Version 2.0.8) [<B><SPAN=20
  style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: =
AR-SA">ZMySQLDA</SPAN></B>]</SPAN></B></SPAN></B></LI>
  <LI class=3DMsoNormal=20
  style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt">&nbsp;<B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt">Built=20
  MySQLdb(0.9.0)</SPAN></B></SPAN></B></SPAN></B></LI>
  <LI class=3DMsoNormal=20
  style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA">Installed=20
  MySQLdb(0.9.0)</SPAN></B></SPAN></B></SPAN></B></SPAN></B></LI>
  <LI class=3DMsoNormal=20
  style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><B><SPAN=20
  style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA"><B><SPAN=20
  style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA">Inflated=20
  ZMySQLDA in required=20
  =
directory</SPAN></B></SPAN></B></SPAN></B></SPAN></B></SPAN></B></LI></OL=
>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><FONT=20
face=3D"Times New Roman">&nbsp;</DIV>
<H1 class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><U>***Problems =
found :=20
dll version mismatch<?xml:namespace prefix =3D o ns =3D=20
"urn:schemas-microsoft-com:office:office" /><o:p></o:p></U></H1>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in">After running =
the ZOPE=20
server: Following errors are generated</P>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list =
.5in">2002-04-23T06:49:32=20
ERROR(200) Zope Could not import Products.MySQLdb</P>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in">Traceback =
(innermost=20
last):</P>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"mso-spacerun: yes">&nbsp; </SPAN>File=20
C:\PROGRA~1\Zope\lib\python\OFS\Application.py, line 531, in =
import_product</P>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"mso-spacerun: yes">&nbsp; </SPAN>File MySQLdb\__init__.py, line =
27, in=20
?</P>
<P class=3DMsoBodyTextIndent=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in">ImportError: =
Module use=20
of python20.dll conflicts with this version of Python.</P>
<P class=3DMsoNormal=20
style=3D"MARGIN-LEFT: 0.5in; mso-list: l0 level1 lfo1; tab-stops: list =
.5in"><SPAN=20
style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: =
12.0pt">&nbsp;<o:p></o:p></SPAN></P>
<P class=3DMsoNormal style=3D"mso-list: l0 level1 lfo1; tab-stops: list =
.5in"><SPAN=20
style=3D"FONT-SIZE: 10pt; mso-bidi-font-size: 12.0pt"><SPAN=20
style=3D"mso-tab-count: =
1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;=20
</SPAN><B>Anticipations : <o:p></o:p></B></SPAN></P>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA">In=20
C:\Program Files\Zope\bin there is <B>python21.dll </B>which I think the =
latest=20
dll which the python exe of our ZOPE version is using. After putting it =
to the=20
c:\winnt\system32 and registering it, the same error is coming.<SPAN=20
style=3D"mso-spacerun: yes">&nbsp; </SPAN>During the run of Zope server=20
<B>__init__</B> of <B>ZMySQLDA </B><SPAN=20
style=3D"mso-spacerun: yes">&nbsp;</SPAN>is importing _mysql.pyd which =
is=20
generating the error as it is searching for python20.dll(NOT =
python21.dll). I=20
have a python20.dll also in my c:\winnt\system32, its version also does =
not=20
match with the python exe our ZOPE version is using. </SPAN></DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA"></SPAN>&nbsp;</DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA">I=20
don't know what to do</SPAN></DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in"><SPAN=20
style=3D"FONT-FAMILY: 'Times New Roman'; FONT-SIZE: 10pt; =
mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 'Times New Roman'; =
mso-ansi-language: EN-US; mso-fareast-language: EN-US; =
mso-bidi-language: AR-SA"></SPAN>&nbsp;</DIV>
<DIV class=3DMsoNormal style=3D"mso-list: l0 level1 lfo1; tab-stops: =
list .5in">Help=20
required</DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in">&nbsp;</DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list .5in">Regards</DIV>
<DIV class=3DMsoNormal=20
style=3D"mso-list: l0 level1 lfo1; tab-stops: list =
.5in">Surajit</FONT></DIV></FONT></BODY></HTML>

------=_NextPart_000_002A_01C1EAE2.AD989110--




--__--__--

Message: 7
From: J.C.Mcnulty@open.ac.uk
To: zope@zope.org
Date: Tue, 23 Apr 2002 12:29:28 +0100
Subject: [Zope] Problems with Zope and Apache

I was wondering if someone could help me. I am running Zope 2.5.1b2 with CMF
1.1 (python 2.1). I want to upgrade to CMF 1.2 but when I do and try to
publish an item I get the following error:

Error Type: TypeError
Error Value: hasReplies() takes exactly 2 arguments (1 given).

Publishing a document works fine on CMF 1.1 but this error occurs under 1.2.

I have got one step further to solving the problem. The error message does
not appear if you publish through the management screen (Zserver) but does
occur is you are running it through a browser (Apache). Has anyone else had
this problem?

Any help or guidance would be a great help.

Thanks

James



--__--__--

Message: 8
Date: Tue, 23 Apr 2002 13:38:06 +0200
From: Maik Jablonski <maik.jablonski@uni-bielefeld.de>
To: "Uwe Schuerkamp" <uwe.schuerkamp@nionex.net>
Cc: zope@zope.org
Subject: Re: [Zope] Help with Page Counter (Python script), please

On Tue, 23 Apr 2002 09:44:12 +0200 "Uwe Schuerkamp"
<uwe.schuerkamp@nionex.net> wrote:

> I'm trying to implement a simple page request counter by checking for
> a property named "requestCount" in a DTML method, adding the property
> if not found, incrementing it otherwise and returning the new value.
> 
> I'm using the following python script: 
> 
> request = container.REQUEST
> 
> o = container.index_html
> this script lives in the top level of my Zope installation. 
> 
> When I try to get a hit counter by including the script output as a
> DTML-var like this:
> 
> <dtml-var incRequestCount>
> 
> in any subfolder the property of the Zope root folder is incremented
> (where the Python script lives), but not the container of the current
> object / container / folder whatever.

you should use 'context' instead of 'container'. have a look at the
description of the python-script-bindings (bindings-tab)...

request = context.REQUEST
...
o = context.index_html

greetings, maik.



--__--__--

Message: 9
Date: Tue, 23 Apr 2002 13:40:39 +0200
From: Maik Jablonski <maik.jablonski@uni-bielefeld.de>
To: "William GARCIA" <wgarcia@esrf.fr>
Cc: zope@zope.org
Subject: Re: [Zope] pb with the function getProperty

On Tue, 23 Apr 2002 11:18:14 +0200 "William GARCIA" <wgarcia@esrf.fr> wrote:

>           <dtml-if "_['sequence-item'].getProperty('State')='private'">

you must use == instead of = for comparisions in python.

 <dtml-if "_['sequence-item'].getProperty('State')=='private'">

-mj



--__--__--

Message: 10
Date: Tue, 23 Apr 2002 12:43:35 +0100
From: Chris Withers <chrisw@nipltd.com>
Organization: New Information Paradigms
To: Surajit Sengupta <surajit@ontrackindia.com>
CC: zope@zope.org
Subject: Re: [Zope] Ref: to my mail python-MySQL interface

Why are you posting in HTML to a non-HTML list?

If you'd bothered to search the various archives you'd probably have the answer to this
already :-(

> Surajit Sengupta wrote:
> 
>   File MySQLdb\__init__.py, line 27, in ?
> ImportError: No module named _mysql

...probably means you haven't actually compiled MySQLdb!

Google is such a wonderful tool, why not use it?

cheers,

Chris



--__--__--

Message: 11
From: Peter Bengtsson <mail@peterbe.com>
Reply-To: mail@peterbe.com
To: zope@zope.org
Date: Tue, 23 Apr 2002 14:44:37 +0200
Subject: [Zope] Xron Security help

Dear all Xron masters,

I have a Xron method that works fine as Manager. If I hit the Trigger id does 
what it is supposed to.
But as cron script it doesn't work; probably because you need to Manager or 
something. 
If I visit the Xron not being logged in like this:

"mozilla 
http://host:8050/gskolan/Style/2002/suckImage_xron/manage_triggerXronEvent"

It asks for authentication but the method itself doesn't require it. I double 
checked that by dtml-commenting the whole script and replace it with "HELLO 
WORLD". Still asking for authentication.
What security settings do I need to do?
Zope 2.5.0 linux python 2.1 Xron 0.0.10

Cheers, Peter



--__--__--

Message: 12
From: tim <tim@sitefusion.co.uk>
Date: Tue, 23 Apr 2002 14:33:41 +0100 (BST)
Subject: Re: [Zope] Inserting a variable in a context.manage statement in Python
To: <pydan@danshafer.com>, <zope@zope.org>

> c = REQUEST.get('clearing_id','')
> context.manage_addFolder(c) # this works
> # Now what I want to do is add a document to the folder
> # If I include a hard-coded value for the folder name I just created as a
> test, it works
> # But this doesn't:
> context.c.manage_addDocument('NewDoc')

I think you should be able to do either of (both untested):

getattr(context, c).manage_addDocument('NewDoc')
context[c].manage_addDocument('NewDoc')

As far as I understand, your version doesn't work because you are telling
python/zope to look for the c string object that is an attribute of context,
instead of telling it to get hold of the attribute of context that is called
whatever str(c) returns.

hth

tim






--__--__--

Message: 13
Date: Fri, 03 May 2002 15:33:28 +0200
To: zope@zope.org
From: William GARCIA <wgarcia@esrf.fr>
Subject: Re: [Zope] pb with the function getProperty


--=====================_26100109==_.ALT
Content-Type: text/plain; charset="us-ascii"; format=flowed

At 11:18 23/04/2002 +0200, you wrote:
>I would like to display a list of  images (ids) located in a folder and 
>which property State equals to 'private'
>Here is the code I wrote :
>       <dtml-in expr="objectIds(['Image'])">
>          <dtml-if "_['sequence-item'].getProperty('State')=='private'">
>             <dtml-var sequence-item><br>
>          </dtml-if>
>       </dtml-in>
>
>Zope generate the next error :
>Error Type: AttributeError
>Error Value: getProperty

>In order to answer the reply of Maik Jablonski (it was just a forbid, the 
>problem is not due to the comparaison operator ==
>I don't know how to proceed, perhaps can I find a soltuion with a Python 
>script
>
>If somebody can help me ?
>Thanks
>
>GARCIA William


--=====================_26100109==_.ALT
Content-Type: text/html; charset="us-ascii"

<html>
At 11:18 23/04/2002 +0200, you wrote:<br>
<blockquote type=cite class=cite cite>I would like to display a list
of&nbsp; images (ids) located in a folder and which property State equals
to 'private'<br>
Here is the code I wrote :<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;dtml-in
expr=&quot;objectIds(['Image'])&quot;&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;dtml-if
&quot;_['sequence-item'].getProperty('State')=='private'&quot;&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;dtml-var sequence-item&gt;&lt;br&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/dtml-if&gt;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/dtml-in&gt;<br><br>
Zope generate the next error :<br>
<b>Error Type: AttributeError<br>
Error Value: getProperty<br>
</b></blockquote><br>
<blockquote type=cite class=cite cite>In order to answer the reply of
Maik Jablonski (it was just a forbid, the problem is not due to the
comparaison operator ==<br>
I don't know how to proceed, perhaps can I find a soltuion with a Python
script<br>
<b><br>
</b>If somebody can help me ?<br>
Thanks<br><br>
GARCIA William</blockquote><br>
</html>

--=====================_26100109==_.ALT--




--__--__--

Message: 14
Date: Tue, 23 Apr 2002 13:32:16 +0200
From: Andreas Heckel <andreas@easyleading.org>
Reply-To: andreas@easyleading.org
To: nico@beehive.de
CC: zope@zope.org
Subject: Re: [Zope] Storing Images  in PostgreSQL

nico@beehive.de wrote:
> 
> Hello,
> 
> I am trying to store images in a PostgreSQL 7.2 database using the Psycopg
> database adapter, running Zope 2.5.0 on redhat linux.
> I found a tip at
> http://lists.initd.org/pipermail/psycopg/2001-June/000200.html and tried
> it out. Unfortunately I get an error like "Can't parse object
> 'Gif123/'..."
> 
> Is there any documentation on how to store images in a PostgreSQL database
> from Zope ?

You need a postgres DA that supports commands for handling postgres
Large Objects (loimport,getlo,unlink ...)

As far as I know popy tries to store binary data into a bytea field ...
don't know if it works.  

-- 
_______________________________________________________________________
Andreas Heckel                                  andreas@easyleading.org



--__--__--

Message: 15
Date: Tue, 23 Apr 2002 15:49:12 +0100
From: hans <hans@beehive.de>
To: William GARCIA <wgarcia@esrf.fr>
CC: zope@zope.org
Subject: Re: [Zope] pb with the function getProperty

William GARCIA wrote:

>    Part 1.1Type: Plain Text (text/plain)

plz no html mails
At 11:18 23/04/2002 +0200, you wrote:
>I would like to display a list of  images (ids) located in a folder and

>which property State equals to 'private'
>Here is the code I wrote :
>       <dtml-in expr="objectIds(['Image'])">
>          <dtml-if
"_['sequence-item'].getProperty('State')=='private'">
>             <dtml-var sequence-item><br>
>          </dtml-if>
>       </dtml-in>
>
>Zope generate the next error :
>Error Type: AttributeError
>Error Value: getProperty

>In order to answer the reply of Maik Jablonski (it was just a forbid,
the
>problem is not due to the comparaison operator ==
>I don't know how to proceed, perhaps can I find a soltuion with a
Python
>script

http://www.zope.org/Documentation/ZopeBook/AppendixB.stx
tells us
objectIds(type=None) This method returns a list of the ids of the
contained
      objects.

very clearly, an id does not have an attribute "getProperty"
(an Image-object has).
-------------------------------------------------------------
Who's got only a hammer sees the world as a nail
hans augustin  (software developer)           hans@beehive.de
beehive elektronische medien GmbH       http://www.beehive.de
phone: +49 30 847-82 0                  fax: +49 30 847-82 299





--__--__--

Message: 16
Date: Tue, 23 Apr 2002 15:51:36 +0200 (CEST)
From: <nico@beehive.de>
To: Andreas Heckel <andreas@easyleading.org>
cc: zope@zope.org
Subject: Re: [Zope] Storing Images  in PostgreSQL

hi andreas,

thanks!
I do not use popy DA but Psycopg DA that supports commands for handling
postgres large objects. I uploaded an image from the file system into my
sql table using lo_import in a ZSQL mehtod. What I don't know is, how to
store an image using a simple input form similiar to upload an image into
the ZODB. Furthermore, I did not found any documentation on how to get
the image from the database table to display it in DTML. Once I get it
running, I should write a how-to. :-)

nico 


On Tue, 23 Apr 2002, Andreas Heckel wrote:

> nico@beehive.de wrote:
> > 
> > Hello,
> > 
> > I am trying to store images in a PostgreSQL 7.2 database using the Psycopg
> > database adapter, running Zope 2.5.0 on redhat linux.
> > I found a tip at
> > http://lists.initd.org/pipermail/psycopg/2001-June/000200.html and tried
> > it out. Unfortunately I get an error like "Can't parse object
> > 'Gif123/'..."
> > 
> > Is there any documentation on how to store images in a PostgreSQL database
> > from Zope ?
> 
> You need a postgres DA that supports commands for handling postgres
> Large Objects (loimport,getlo,unlink ...)
> 
> As far as I know popy tries to store binary data into a bytea field ...
> don't know if it works.  
> 
> -- 
> _______________________________________________________________________
> Andreas Heckel                                  andreas@easyleading.org
> 




--__--__--

Message: 17
Date: Tue, 23 Apr 2002 10:22:33 -0400
From: "Matthew T. Kromer" <matt@zope.com>
To: Sean Abrahams <sa@sfsu.edu>
CC: zope@zope.org
Subject: Re: [Zope] DCOracle 2 Problem

Sean Abrahams wrote:

>All right, I made DCOracle2-PR1 and copied the dco2.so to my
>/usr/lib/python2.1/site-packages/ directory.
>
>I go into python to test it out, here's what I get:
>
>Python 2.1.3 (#1, Apr 11 2002, 00:19:11)
>[GCC 2.95.4 20011002 (Debian prerelease)] on linux2
>Type "copyright", "credits" or "license" for more information.
>
>>>>import dco2
>>>>db = dco2.connect("xxxxx", "xxxxx", "xxxxx")
>>>>dbc = db.cursor()
>>>>dbc.execute("select * from table")
>>>>
>Traceback (most recent call last):
>  File "<stdin>", line 1, in ?
>TypeError: an integer is required
>
>
>
>Any ideas?
>
>Thanks,
>Sean
>

My guess is a column which was supposed to have a date in it has a NULL 
date... not sure though.

I'm going to upload rel 1.1 this morning, which has some fixes in it.

-- 
Matt Kromer
Zope Corporation  http://www.zope.com/ 






--__--__--

Message: 18
Date: Tue, 23 Apr 2002 10:29:17 -0400
From: A M Thomas <am@virtueofthesmall.com>
Organization: Virtue of the Small
To: Steve Spicklemire <steve@spvi.com>
CC: zope@zope.org
Subject: Re: [Zope] setting up a ZClass - base class of PropertyManager?  plus weird gradual broken product messages

Hi Steve,

Thanks for the follow up!

I have to respond about property sheets again... what I want is to take
advantage of the famous "acquisition" mechanism, but I want my class
instances to acquire from their _containing objects_ rather than from
their class property sheet values.  They seem to be inheriting from the
property sheet values even if the value is "blank" in the property
sheet.

Is there some way to control this, other than testing each thing? 
Creating an "undefined" value is not really going to work here; I've got
a whole bunch of different properties, some are selections, some boolean
(hard to set an undefined value for those), some text...  I could, of
course, define an additional property for each property already defined,
that specifies whether the property should come from the containing
object (true by default), but isn't the whole acquisition model supposed
to make this unneccessary?

I'm trying to do things the "right" way within Zope, but I'm still not
sure what that is for what I'm trying to accomplish.  I'm starting to
suspect that the ZClass approach may not be the best for what I want.

Many thanks,
Am

Steve Spicklemire wrote:
> > 2) If I create an instance
> > of a ZClass with a propertysheet, it seems to always define the
> > properties, and I want to inherit them from a parent object unless I
> > specifically define them in the new object.  I may be missing something,
> > but I seemed to get this effect, and that's why I switched to using
> > PropertyManager.
> 
> Hmmm... the property sheet only gives the class a value for the named
> properties. This "class" value gets used if the instance doesn't have a
> value of it's own. You can give the class value some "special" value
> (e.g., 'uninitialized') if you want to check an instance to see if
> you've set a custom value for that instance.
>





--__--__--

Message: 19
From: "Thomas B. Passin" <tpassin@mitretek.org>
To: <zope@zope.org>
Subject: Re: [Zope] referencing tuples
Date: Tue, 23 Apr 2002 10:40:56 -0400

Have your method return a dictionary instead of a list of tuples.  Then you
can directly access an item by its key.  A tuple is not indexed except by
position, so you can't jump into the middle by using a key.

It's probably a non-issue, though.  The length of your list would have to be
pretty large for there to be a noticable delay because you have to look
through the list.  Still, a dictionary is what you want.

Cheers,

Tom P

[Dianne Van Dulken]
>
> I was wondering if what I am trying to do is possible, or not.
>
> I have a method that returns a list of tuple pairs eg:
>
> [(firstname, Di), (lastname, van Dulken), (address, ...) ] etc.
>
> I have no problem looping through this to get the sequence-item,
> sequence-key information:
>
> <dtml-in "getDetails(_.None, _, status='Active')">
>  <dtml-in sequence-item>
>   <dtml-var sequence-key> = <dtml-var sequence-item>
>  </dtml-in>
>  <hr>
> </dtml-in>
>
> works fine.
>
> BUT, I really only want (on this page, the method is used on other pages)
to
> know a couple of the tuple details in the list.
> I know I can get this by looping through the whole sequence and using
>
> <dtml-if "sequence-key == 'firstname'">
>
> but that seems an incredibly slow and clunky way of referencing it to me.
> Is there anyway I can reference the tuple value by the tuple key without
> having to loop through them that way?  I've tried getitem('firstname') and
> sequence-var-firstname, but neither of these work.  I couldn't find any
one
> else asking this, so I assume it is too basic for normal people to query
on.
>
> I also know I can reference THE tuple I am after by using sequence-item[1]
> (or whatever), but that rather removes the whole point of having name
> variables.





--__--__--

Message: 20
Date: Tue, 23 Apr 2002 16:54:45 +0200
From: Kilian Koepsell <kilian@koepsell.de>
To: zope@zope.org
Cc: Andreas Reuleaux <reuleaux@web.de>
Subject: Re: [Zope] Problems with External Methods when starting Zope at boot time, Mac OS X

On Tue, Apr 23, 2002 at 05:38:18AM +0200, Andreas Reuleaux wrote:
> To: zope@zope.org
> Subject: Re: [Zope] Problems with External Methods when starting Zope at boot time, Mac OS X
>
> the zope pkg from fink (which uses python2.1 from fink unstable
> as you privately mailed me) works great by the way
> 

thank you for the feedback. it will make it's way into the binary distro soon...

cheers,
  kilian



--__--__--

Message: 21
To: zope@zope.org
From: Florent Guillaume <fg@nuxeo.com>
Subject: Re: [Zope] unquote_plus NOT working in an EM ?
Date: Tue, 23 Apr 2002 15:37:53 +0000 (UTC)
Organization: Nuxeo

In an external method, do not use "print" but "return".

Florent

Doyon, Jean-Francois <Jean-Francois.Doyon@CCRS.NRCan.gc.ca> wrote:
> Hello,
> 
> Anybody know why if I have:
> 
> from urllib import urlopen, urlencode, unquote_plus
> 
> and then something like:
> 
> print unquote_plus(innerlist[1])
> 
> the string WILL NOT come out unquoted for some reason? When I run a test
> from the CLI, no problem, but when inside an External Method, nothing
> happens!
> 
> Help! :)
> 
> Thanks a bunch,
> 
> Jean-François Doyon
> Internet Service Development and Systems Support
> GeoAccess Division
> Canadian Center for Remote Sensing
> Natural Resources Canada
> http://atlas.gc.ca
> Phone: (613) 992-4902
> Fax: (613) 947-2410
> 
> 
> 
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists - 
>  http://lists.zope.org/mailman/listinfo/zope-announce
>  http://lists.zope.org/mailman/listinfo/zope-dev )
> 


-- 
Florent Guillaume, Nuxeo (Paris, France)
+33 1 40 33 79 87  http://nuxeo.com  mailto:fg@nuxeo.com



--__--__--

Message: 22
From: "Ted Skolnick" <ted.skolnick@reis.com>
To: <Zope@zope.org>
Subject: FW: [Zope] Re: [Zope-dev] Separate staging and development areas for a product
Date: Tue, 23 Apr 2002 11:40:38 -0400



-----Original Message-----
From: Ted Skolnick [mailto:ted.skolnick@reis.com]
Sent: Tuesday, April 23, 2002 11:40 AM
To: 'Oliver Bleutgen'
Subject: RE: [Zope] Re: [Zope-dev] Separate staging and development
areas for a product


Hi,
Ted here. I started this thread a while back, and came up with a solution
that works for me.   I hope it is helpful for others too.  If u find a flaw
in it, please let me know.

Goal:
To run both a dev and staging environment on one Zope.  This must work with
external methods, and modules imported by those external methods (i.e. file
based products).  In other words, I will have files with the same name on
the system in different directories.

What I did:
1) Created my dev project
The external methods reside in
/usr/zope/lib/python/Products/dev/Extensions
Python files that r imported by those external method modules also reside in
that same directory (or a package within there).

2) Made a copy of dev, both in Zope and on file system, called it staging.
Now all the same files exist in
/usr/zope/lib/python/Products/staging/Extensions as well.
(don't forget ur __init__.py files in all dirs!)

3) Update the external method path's in the Zope mgmt. interface.  Lets say
I had an external method module called myfuncs.py .  In dev the external
module path is dev.myfuncs, while in staging I need to make it
staging.myfuns.   So, there is no code changes between dev and staging.  The
only changes r in the zope mgmt interface for hooking up the external method
paths.

4) The interesting part:
If u just do the above, it will not work.  The reason is that external
methods use the ExternalMethod product, which in turn uses Extensions.py.
When u invoke an external method, it is loaded with an exec command from
within Extensions.py.   As a result, it is loaded within the context of
Extensions.py and can not import other modules from the directory that
actually contains ur external method.  At first I fixed this by adding to my
python path.  But if u do that, u can only import either dev or staging
files, whichever comes first in the python path.   So....  I hacked
Extensions.py with a very small change.
Instead of allowing Extensions.py to do an exec, I made it do an import to
load the module so that my dev and staging modules will be loaded from the
context of their own directories, and will therefore import modules from
their own directory.  In this way dev external methods import modules from
the Products/dev/Extensions directory, and staging will import from
Products/staging/Extensions/.

The hack could be more robust, but it is very short, and is getting me back
on the road to staging...

code excerpt from Extensions.py.....

Starting at line 140:

    else:
        try: execsrc=open(p)
        except: raise "Module Error", (
            "The specified module, <em>%s</em>, couldn't be opened."
            % module)
        #m={}  <<<<<<<<<<<<<< Commented out the old way of loading module
        #exec execsrc in m   <<<<<<<<<<<<<< Commented out the old way of
loading module

        # >>>> Start of my new stuff
        modNameParts = split( module, "." )
        module = "Products." + modNameParts[0] + ".Extensions." +
modNameParts[1]
        exec ( "import " + module + " as m" )
	  # >>>> End of my new stuff

    funcToRetrieve = "m." + name
    try: r= eval( funcToRetrieve ) #<<<<<<< I replaced this line too.. usde
to say r = m[name]

-Ted




-----Original Message-----
From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of
Oliver Bleutgen
Sent: Tuesday, April 23, 2002 5:12 AM
To: John Schinnerer
Cc: zope@zope.org
Subject: Re: [Zope] Re: [Zope-dev] Separate staging and development
areas for a product


John Schinnerer wrote:
> Aloha,
>
> <snip>...
>
>>... but I really need my development
>>version accessible to the internet, too.  And it would be nice to
>>have three versions so I could have a separate testing version
>>public, as well.
>>
>
>>What should someone like me do in order to develop a product that is
>>also in use on my server?  What do other independent developers do?
>>
>
> Zope 'version' objects (Ch. 3, zope book, near the end) supposedly
> address some of your issues (which are similar to some of mine - I too
> would like to have fully functional preview/test sites available on my
> live server).  I haven't tried versions yet, though, because...
>
> What the zope book info on versions doesn't say (and I haven't found
> elsewhere either) is how (or if it's even possible) to access a version
>>from outside the management interface - that is, as a client would see
> it in their browser, so it can be tested before changes are committed
> to the 'public' version.  If I can't do that, and do it transparently,
> versions don't do me any good.  There'd have to be some URL trickery
> somewhere to serve up a version without breaking buckets 'o links...

When you enter a version, you just get a cookie named 'Zope-Version'
with the path to your version as a value. You can see it for yourself if
you configure the browser to ask before accepting cookies and look at
the cookie details.
In Zope 2.3.3, and I suspect in any zope after that also, it's possible
to just set this cookie, and the browser is in that version. Therefore
the permission 'join/leave versions' is quite useless IMO.
The upside is that you need just a short code snippet (setting that
cookie) to let anyone (including anonymous) enter any version.
Downsides are obvious and manyfold.


cheers,
oliver




_______________________________________________
Zope maillist  -  Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists -
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )





--__--__--

_______________________________________________
Zope maillist  -  Zope@zope.org



End of Zope Digest

--Part_Boundary-616B08--