Send Zope maillist submissions to zope@zope.org To subscribe or unsubscribe via the 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. New Zope classes announced for San Diego, California & Denver, Co lorado (Gary Graham) 2. New Zope Training Dates Announced for San Diego, California and Denver, Colorado (Gary Graham) 3. Re: dtml-calendar question (I GOT IT!!!!!!!!) (R. David Murray) 4. Re: Zope with two platforms. (R. David Murray) 5. Zope on old hardware?? (Steve Nicholson) 6. Re: Precondition (R. David Murray) 7. Re: Vocabulary?? (R. David Murray) 8. Zope in single thread mode during DTML rendering (Dieter Maurer) 9. Confusing "sqlvar" error message (Dieter Maurer) 10. Re: ZCatalog attachments? (Dieter Maurer) 11. Re: Pluggable brains aren't seen by first-nnn in <dtml-in>? (Dieter Maurer) 12. Re: Solution Suggestions? (Dieter Maurer) 13. Re: Less than helpful traceback (Dieter Maurer) 14. Re: REPOST: README.txt Tab (Erik Enge) 15. Re: Python Product Tutorial (Erik Enge) 16. server instability: ZODB corruption? (Guido A.J. Stevens) 17. Using MailHost with an SMTP server that wants authentication (Jean Jordaan) 18. riddle me this Batman, coded copy/paste syntax? (Darran Edmundson) 19. Troubles with ZOracleDA successfully resolved (Pedro Vega) 20. Python Class trickyness (Erik Enge) 21. Re: ZCatalog attachments? (Phil Harris) 22. (Fwd) Re: [Zope] Pluggable brains aren't seen by first-nnn in - SOLUTION (Brad Clements) 23. Problems adding Properties to ZClass (Erich Seifert) --__--__-- Message: 1 From: Gary Graham <gary@digicool.com> To: "'zope@zope.org'" <zope@zope.org> Subject: [Zope] New Zope classes announced for San Diego, California & Denver, Co lorado lorado Date: Fri, 4 Aug 2000 18:42:13 -0400 Digital Creations has scheduled 2 new Zope Training dates and locations. The dates are September 25-28, 2000 for Zope 101 & 201 in San Diego, California and also October 2-5, 2000 for Zope 101 & 201 in Denver, Colorado. See http://www.digicool.com/Solutions/Training/ for details. --Gary Gary Graham gary@digicool.com Director, Sales & Marketing Digital Creations Fredericksburg, Virginia mobile: 540.840.3813 office: 540.371.6909 ext 117 fax: 540.371.1201 private eFax: 781.394.7868 ---------------------------------------------------- Creators of Zope: The Open Source Application / Content Management Server www.zope.org www.digicool.com --__--__-- Message: 2 Date: Fri, 4 Aug 2000 18:58:07 -0400 From: Gary Graham <gary@digicool.com> Subject: [Zope] New Zope Training Dates Announced for San Diego, California and Denver, Colorado To: Zope Annoucements <zope@zope.org> Organization: Micro Applications New Zope training dates were announced today for San Diego, California and Denver, Colorado. See the Zope training page at http://www.digicool.com/Solutions/Training/ for details. --Gary Gary Graham gary@digicool.com Director, Sales & Marketing Digital Creations Fredericksburg, Virginia mobile: 540.840.3813 office: 540.371.6909 ext 117 fax: 540.371.1201 private eFax: 781.394.7868 ---------------------------------------------------- Creators of Zope: The Open Source Application / Content Management Server www.zope.org www.digicool.com --__--__-- Message: 3 Date: Fri, 4 Aug 2000 21:11:06 -0400 (EDT) From: "R. David Murray" <bitz@bitdance.com> To: tom smith <tom@othermedia.com> cc: zope <zope@zope.org> Subject: Re: [Zope] dtml-calendar question (I GOT IT!!!!!!!!) On Fri, 4 Aug 2000, tom smith wrote:
notice the startDateString=StartDateString...which I thought the <dtml-let would've handled, anyway....this seems to have fixed it
can anyone tell me why?
ZSQL methods do not pick variables up out of the name space because the possability of unintended collision with database variables is considered too high. So ZSQL forces you to be fairly explicit about which variables you are passing. --RDM --__--__-- Message: 4 Date: Fri, 4 Aug 2000 21:58:47 -0400 (EDT) From: "R. David Murray" <bitz@bitdance.com> To: Francisco Assis Rosa <rosa@dynamicdiagrams.com> cc: zope@zope.org Subject: Re: [Zope] Zope with two platforms. On Fri, 4 Aug 2000, Francisco Assis Rosa wrote:
We would like to be able to have new developments on products to be passed from the development platform to the staging platform and to have new content to be passed from the staging platform to the development platform.
I wonder if you could put your content in a mountable storage and just periodically copy that storage down to the development machine, and similarly periodically copy the master storage (containing the ZClasses) up from the development machine. If your products are Python products you wouldn't even need a mountable storage.
Also, how would you see schema versioning How could we for instance deal with objects generated from a product if the product schema changes ?
Zope uses the __setstate__ method for handling this case in Python products. I think there's a howto somewhere but I'm not sure. If not you can find examples of calling it in the Zope sources. For ZClasses the objects get all their info from the ZClass, so you generally don't run into upgrade problems (though people have run into trouble with properties they have tried to delete hanging around on existing instances). --RDM --__--__-- Message: 5 Reply-To: <Steve.Nicholson@yoursolutions.com> From: "Steve Nicholson" <Steve.Nicholson@yoursolutions.com> To: <zope@zope.org> Subject: [Zope] Zope on old hardware?? Date: Sat, 5 Aug 2000 03:27:26 +0100 charset="iso-8859-1" Hi I'm looking at running Linux 6.1 and zope on a dual processor P90 Dell powerEdge server, 128Mb RAM. Is this a viable proposition for hosting, I'm not anticipating millions of hits?? I realise it's not the fastest thing in town but for a good price it gives me a RAID drive for reliability. What sort of load will it handle, hits etc? Does Zope take advantage of the Dual processors? What improvement is there over one processor? This box can be upgraded to P166's what would be the improvement? Is anyone out there running Linux on Dell EX590-2, can I expect lots of problems or easy to set-up? Pointers to sites with more information would be appreciated. I haven't got it yet, so want to find out more before I waste to much time/energy/money on it. Thanks for any help/advice you can offer. Steve. --__--__-- Message: 6 Date: Fri, 4 Aug 2000 22:11:55 -0400 (EDT) From: "R. David Murray" <bitz@bitdance.com> To: RC Compaan <roche@up-front.co.za> cc: Zope <zope@zope.org> Subject: Re: [Zope] Precondition On Fri, 4 Aug 2000, RC Compaan wrote:
What does the "Precondition" property of the file class refer to?
As far as I can tell from a quick scan of the source, the precondition is an object that is called just before the file object is rendered. It can raise an exception, in which case the object will not get rendered. I could swear I read that documented somewhere, but I can't find it. Someone should submit a doc patch for the API help pane. I'd do it, but I haven't gotten around to learning how the help system works yet so I don't know what file to patch <grin>. --RDM --__--__-- Message: 7 Date: Fri, 4 Aug 2000 22:15:26 -0400 (EDT) From: "R. David Murray" <bitz@bitdance.com> To: Sven Hohage <sven.hohage@zeitspringer.de> cc: zope@zope.org Subject: Re: [Zope] Vocabulary?? On Fri, 4 Aug 2000, Sven Hohage wrote:
think I've missed something. What is the feature "Vocabulary"??Just a hint please!
A Vocabulary allows you to associate an arbitrary method of parsing input text into words for the purposes of cataloging and searching in text indexes. The default Vocabulary uses the original Splitter.c word parser, which is very English centric. --RDM --__--__-- Message: 8 From: Dieter Maurer <dieter@handshake.de> Date: Fri, 4 Aug 2000 23:00:11 +0200 (CEST) To: zope@zope.org Subject: [Zope] Zope in single thread mode during DTML rendering A collegue of mine succeeded today to implement an infinite DTML loop. That happens ... However, during this loop, Zope did not respond to any request. Effectively, it was in single thread mode. Zope 2.1.6 Binary Distribution for Sparc Solaris 2.6 ZOracle DA, DCOracle, Oracle 8.1.6 After several minutes, Zope reported an "infinite recursion in document template" and the world awoke from its sleep. I was unable to reproduce this at home, though: Zope 2.1.6 Source Distribution on Linux 2 No database connections. Hugh, I have been lying: I just removed the "-D" from the Linux start script, and Zope blocked during the infinite loop. The behaviour is not related to the "-D" set or unset. It just blocks sometimes and at other times, it does not. Dieter --__--__-- Message: 9 From: Dieter Maurer <dieter@handshake.de> Date: Fri, 4 Aug 2000 22:25:51 +0200 (CEST) To: zope@zope.org Subject: [Zope] Confusing "sqlvar" error message Today, I analysed a confusing error message from "dtml-sqlvar". SQL query template: .... <dtml-sqlvar "_[name]" type=string> .... reported: "missing input variable: _[name]" Of cause, I did not expect that such an input variable should be necessary and I suspected the DTML parser not to see the "..." around "_[name]". After analysis, the explanation was simple: SQLVar.render is a bit stupid in its error handling: try: expr=self.expr if type(expr) is type(''): v=md[expr] else: v=expr(md) except: if args.has_key('optional') and args['optional']: return 'null' raise 'Missing Input', 'Missing input variable, <em>%s</em>' % name This error handling is only senseful for "type(expr) == type('')", i.e. for plain variable access. For true expressions, the original exception would be *much* more useful. In my case, unwrapping the "try ... except ..." produced "KeyError: FOLLUP_UP", an obvious type (FOLLOW_UP rather than FOLLUP_UP). Thus, the above exception handling should become: except: if args.has_key('optional') and args['optional']: return 'null' if type(self.expr) != type(''): raise raise 'Missing Input', 'Missing input variable, <em>%s</em>' % name I will put it into the collector. Dieter --__--__-- Message: 10 From: Dieter Maurer <dieter@handshake.de> Date: Fri, 4 Aug 2000 22:06:41 +0200 (CEST) To: Simon Coles <simon@nipltd.com> Cc: zope@zope.org Subject: Re: [Zope] ZCatalog attachments? Simon Coles writes:
We have binary files stored in Zope, for example Word documents (but could be any of a variety of document types).
We would like to be able to index and search the contents of these files using ZCatalog. So if a Word file contains the word "Fred", then any search for "Fred" would include that file in the list of documents returned. Someone else already told you, that you must create a parameterless method (it need not necessary be named "PrincipiaSearchSource") that returns the files content.
You may not need to keep the rendered version around but may be able to extract the plain text on demand. I think, there is a "word.dll" that provides access to MS Word from applications. Alternatively, you could control Word via COM. Dieter --__--__-- Message: 11 From: Dieter Maurer <dieter@handshake.de> Date: Fri, 4 Aug 2000 22:10:27 +0200 (CEST) To: bkc@murkworks.com Cc: zope@zope.org Subject: Re: [Zope] Pluggable brains aren't seen by first-nnn in <dtml-in>? Brad Clements writes:
However first-eventday is ALWAYS true, however when I print &dtml- eventday; the output value is always the same for each row, so first- eventday shouldn't be true on any row except the first.
Almost surely, the "in" tag does not call a callable object (because it does not expect, they could be callable). You, therefore, get the method itself. It is identical for all records. Dieter --__--__-- Message: 12 From: Dieter Maurer <dieter@handshake.de> Date: Sat, 5 Aug 2000 10:16:53 +0200 (CEST) To: Craig <craig@tool.net> Cc: zope@zope.org Subject: Re: [Zope] Solution Suggestions? Craig writes:
... special "Tips" objects in Zope ...
It seems, this is an ideal task for a Catalog Aware ZClass. On zope.org, you will find tutorials for ZClass and ZCatalog. Dieter --__--__-- Message: 13 From: Dieter Maurer <dieter@handshake.de> Date: Sat, 5 Aug 2000 10:21:54 +0200 (CEST) To: "Spicklemire, Jerry" <Jerry.Spicklemire@IFLYATA.COM> Cc: "'zope@zope.org'" <zope@zope.org> Subject: Re: [Zope] Less than helpful traceback Spicklemire, Jerry writes:
Any thoughts about how to find out what the erro message (below) means? If I could just find out what exactly is not being found, it would help alot, but there's no hint.
Zope has encountered an error while publishing this resource.
Resource not found
.... Troubleshooting Suggestions
.... For more detailed information about the error, please refer to the HTML source for this page.
For unknown (but strange) reasons, at least earlier Zope versions (up to 2.1.6), sometimes place the URL of the missing resource into an HTML comment. Therefore, you will not see it in rendered problem report, only in its HTML source. Thus, follow the hint: tell your browser you want to see the HTML source of the error report. Dieter --__--__-- Message: 14 Date: Sat, 5 Aug 2000 11:23:35 +0200 (CEST) From: Erik Enge <erik@src.no> To: Robert_J_Roberts@rl.gov cc: zope@zope.org Subject: Re: [Zope] REPOST: README.txt Tab On Fri, 4 Aug 2000 Robert_J_Roberts@rl.gov wrote:
I'll re-ask the question:
How do I get the README tab to appear in a product?
In the Squishdot Product I discovered this: Readme = Document('', __name__='') Readme.__roles__ = None This one seems to add a README tab. If you have a README.txt file in your Products directory it displays it. --__--__-- Message: 15 Date: Sat, 5 Aug 2000 11:24:55 +0200 (CEST) From: Erik Enge <erik@src.no> To: Loren Stafford <lstaffor@dynalogic.com> cc: zope@zope.org, Erik Enge <erik@enge.net> Subject: Re: [Zope] Python Product Tutorial On Fri, 4 Aug 2000, Loren Stafford wrote:
I don't know of any tutorial. ZScheduler creates a container (a subclass of Catalog in fact), so you might use that code as a starting point. It doesn't put other objects in the container, tho.
Thanks, but I'm really interested in how I would add other objects. I guess if I dig deep enough, I'll find it. :-) --__--__-- Message: 16 To: zope@zope.org Cc: Paul J Stevens <paul@nfg.nl> Subject: [Zope] server instability: ZODB corruption? Organization: Net Facilities Group *** http://www.nfg.nl From: gyst@nfg.nl (Guido A.J. Stevens) Date: 05 Aug 2000 14:22:30 +0200 I'm hunting down an arcane problem in one of our Zope sites and find myself hitting new and wildly diverse problems every day. I hope somebody can point me in the direction of some solution strategies. Main suspect is a corrupted Data.fs.in file. How can I audit and repair it? problem A: access denied vs. KeyError ============================ For starters, we built a website with a lot of custom programming. I created the NFGnav product http://www.zope.org/Members/gyst/NFGnav and my partner built a collection of ZClasses. All this was Tested And Working Fine (TM). Since some weeks, part of the site gives an 'access denied' error. We had to shut down that subtree. Strange thing is, it also gives access denied for the manager/owner logins of the site - that's me and I really have access to everything. What is even stranger, is that when I logon as superuser, I get a KeyError instead of an access denied error. => Question: which parts of zope would be prone to denying access to a privileged user, while generating KeyErrors for the superuser? problem B: hanging zope thread zombies all zope sites ======================================== While debugging this problem, I found a strange correlation with another problem we're having: zope threads consuming 99.9% CPU. Now and again, a zope thread hangs. All zope sites are dead. I have to not only restart zope; I have to stop zope, restart apache, and start zope again to get rid of the hanging thread and get the zope sites alive again. As soon as I start digging around in the buggy site, the number of thread crashes jumps up. In combination with the problems we're having with that site itself, this suggests two possible causes: 1) ZODB curruption. We've had a complete server crash 3 weeks ago and it is quite possible the ZODB isn't 100% healthy. In my zope installation I found a utility 'bbb.py' to audit data storage files. Alas, it is of no use: | zeno:/usr/lib/zope/utilities# python bbb.py /var/lib/zope/import/www.intratuin.nl.zexp | | The input file is not a ZODB 2 database file. | This script only works with ZODB 2 (BoboPOS) data or export files. => Question: is there another utility for checking and repairing object stores? 2) Another possible cause would be an infinite loop in one of our custom scripts. To try and debug this I wanted to import a copy of the offending site into one of our testlab machines. However, on importing the zexp file I got: <STRONG>Error Type: TypeError</STRONG><BR> <STRONG>Error Value: ('len() of unsized object', <class Shared.DC.ZRDB.DA.SQL at 845bd28>, None)</STRONG><BR> <!-- Traceback (innermost last): File /usr/lib/zope/lib/python/ZPublisher/Publish.py, line 214, in publish_module File /usr/lib/zope/lib/python/ZPublisher/Publish.py, line 179, in publish File /usr/lib/zope/lib/python/Zope/__init__.py, line 202, in zpublisher_exception_hook (Object: ApplicationDefaultPermissions) File /usr/lib/zope/lib/python/ZPublisher/Publish.py, line 165, in publish File /usr/lib/zope/lib/python/ZPublisher/mapply.py, line 160, in mapply (Object: manage_importObject) File /usr/lib/zope/lib/python/ZPublisher/Publish.py, line 102, in call_object (Object: manage_importObject) File /usr/lib/zope/lib/python/OFS/ObjectManager.py, line 478, in manage_importObject (Object: ApplicationDefaultPermissions) File /usr/lib/zope/lib/python/ZODB/ExportImport.py, line 284, in importFile TypeError: (see above) I get the same error if I export another part of our production zope installation and try to import it to another test machine. Which points back into the direction of a file corruption again, doesn't it? => So, what can I do about it? :*CU# -- *** Guido A.J. Stevens *** mailto:gyst@nfg.nl *** *** Net Facilities Group *** tel:+31.43.3618933 *** *** Postbus 1143 *** fax:+31.43.3560502 *** *** 6201 BC Maastricht *** http://www.nfg.nl *** Liefde en emoties, haat en afkeer zitten erin verstopt. Zoals mensen cyborgs zijn, is het technische ding altijd een hybride. Dat maakt zowel mensen als dingen zo fascinerend. [Achterhuis, ISBN 90-263-1524-4, p.391] --__--__-- Message: 17 From: Jean Jordaan <Jean@mosaicsoftware.com> To: "'zope@zope.org'" <zope@zope.org> Subject: [Zope] Using MailHost with an SMTP server that wants authentication Date: Sat, 5 Aug 2000 15:50:38 +0200 charset="iso-8859-1" Hi Zopers Looking at the attributes of the dtml-sendmail tag, I don't see any way of conveying authentication data to the smtphost. Our setup here (using Exchange) requires a username/password to send. Any way of coping with this? -- Jean Jordaan -- technical writer -- Mosaic Sofware --__--__-- Message: 18 From: Darran Edmundson <dee124@rsphy1.anu.edu.au> Subject: [Zope] riddle me this Batman, coded copy/paste syntax? To: zope@zope.org Date: Sun, 6 Aug 2000 01:15:24 +1000 (EST) Reply-To: Darran.Edmundson@anu.edu.au The Zope quick reference lists the following methods for the stock folder object: manage_copyObjects(self, ids, [REQUEST, RESPONSE]) manage_cutObjects(self, ids, [REQUEST]) manage_delObjects(self, [ids, REQUEST]) manage_pasteObjects(self, [cb_copy_data, REQUEST]) For the life of me I can't get copy|cut and paste to work even for the simplest of examples. I've tried snippets like the following (embedded within a DTML method in a folder) but to no avail: <dtml-call "manage_copyObjects(['subobjectid']"> <dtml-call "manage_pasteObjects()"> <dtml-call "manage_copyObjects([_['subobjectid']])"> <dtml-call "manage_pasteObjects()"> Can someone shed some light on my misunderstanding? Cheers, Darran. --__--__-- Message: 19 From: "Pedro Vega" <pvega@clientes.euskaltel.es> To: <Zope@zope.org> Subject: [Zope] Troubles with ZOracleDA successfully resolved Date: Sat, 5 Aug 2000 19:04:18 +0200 charset="iso-8859-1" All the problem was an permissions issue; Pedro Vega --__--__-- Message: 20 To: zope@zope.org Subject: [Zope] Python Class trickyness From: Erik Enge <erik@enge.net> Date: 05 Aug 2000 18:49:29 +0200 Good evening. I know how to make a Python Class, which is a container. But how do I make another Class which can only be added from the container-class I have created. Know what I mean? The last class should only show up in the "Available Objects"-list if the user is in a instance of the first class. Did this make any sense? Thanks for any answers. :-) --__--__-- Message: 21 From: "Phil Harris" <phil.harris@zope.co.uk> To: "Dieter Maurer" <dieter@handshake.de>, "Simon Coles" <simon@nipltd.com> Cc: <zope@zope.org> Subject: Re: [Zope] ZCatalog attachments? Date: Sat, 5 Aug 2000 19:35:14 +0100 charset="iso-8859-1" All, Doing the text pulling from COM is *SLOW* to say the least, You'd probabnly be better converting them to RTF and then using something like OmniMark to convert to XML. That way you'd have the best of both worlds, including something you can render to HTML when zDOM/zXSLT becomes a reality. I already do this and it's fast enough at the conversion, a 500k doc takes about 2 seconds. hth Phil phil.harris@zope.co.uk ----- Original Message ----- From: Dieter Maurer <dieter@handshake.de> To: Simon Coles <simon@nipltd.com> Cc: <zope@zope.org> Sent: Friday, August 04, 2000 9:06 PM Subject: Re: [Zope] ZCatalog attachments?
Simon Coles writes:
We have binary files stored in Zope, for example Word documents (but could be any of a variety of document types).
We would like to be able to index and search the contents of these files using ZCatalog. So if a Word file contains the word "Fred", then any search for "Fred" would include that file in the list of documents returned. Someone else already told you, that you must create a parameterless method (it need not necessary be named "PrincipiaSearchSource") that returns the files content.
You may not need to keep the rendered version around but may be able to extract the plain text on demand. I think, there is a "word.dll" that provides access to MS Word from applications. Alternatively, you could control Word via COM.
Dieter
_______________________________________________ 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: 22 From: "Brad Clements" <bkc@murkworks.com> Organization: MurkWorks, Incorporated. To: zope@zope.org Date: Sat, 5 Aug 2000 14:50:24 -0400 Subject: [Zope] (Fwd) Re: [Zope] Pluggable brains aren't seen by first-nnn in - SOLUTION Reply-to: bkc@murkworks.com On 4 Aug 2000, at 22:10, Dieter Maurer wrote:
Brad Clements writes:
However first-eventday is ALWAYS true, however when I print &dtml- eventday; the output value is always the same for each row, so first-
eventday shouldn't be true on any row except the first.
Almost surely, the "in" tag does not call a callable object (because it does not expect, they could be callable). You, therefore, get the method itself. It is identical for all records.
So true, the solution is to define an __init__ class in the brain class, then use that to populate "self". class PackageEvent: """Package Event Pluggable Brain""" def __init__(self): """initialize""" self.__dict__['eday'] = self.eventday() def eventday(self): return DateTime(apply(time.mktime,self.eventtime.tuple()[:3]+(0,0,0,0,0,-1 ))) Now 'first-eday' works. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com AOL-IM: BKClements --__--__-- Message: 23 Date: Sat, 05 Aug 2000 20:59:00 +0200 From: Erich Seifert <e.seifert@gmx.net> To: zope@zope.org Subject: [Zope] Problems adding Properties to ZClass Hi, I'm having problems with adding Properties to a ZClass propertysheet. I always get an IndexError (no traceback, sorry) when I've hit the Add button. There are no special characters in the name ('Daten'). Does someone know what could be the problem? Thanks in advance Eric --__--__-- _______________________________________________ Zope maillist - Zope@zope.org --__--__---- End of Zope Digest