I am trying to create a simple ZClass as per Chapter 12 of _The Zope Book_. I can create the ZClass, but I cannot add one to my folders. When I go to the root folder and select "Zoo Exhibit" from the "Select type to add..." list, it asks for the id. (So my auto-generated ZooExhibit_addForm DTML Method is working.) But when I click on the "Add" button, thus [theoretically] invoking the auto-generated ZooExhibit_add DTML Method, I get the following "Site Error" page displayed to me as simple text -- that is, the HTML is not rendered by my browser, I actually see the raw HTML code in my right-side browser frame: --------------------------------------------------------- <TABLE BORDER="0" WIDTH="100%"> <TR VALIGN="TOP"> <TD WIDTH="10%" ALIGN="CENTER"> </TD> <TD WIDTH="90%"> <H2>Site Error</H2> <P>An error was encountered while publishing this resource. </P> <P><STRONG>NameError</STRONG></P> Sorry, a site error occurred.<p> <!-- Traceback (innermost last): File /usr/lib/python2.1/site-packages/ZPublisher/Publish.py, line 223, in publish_module File /usr/share/zope/lib/python/Products/Localizer/__init__.py, line 53, in new_publish File /usr/lib/python2.1/site-packages/ZPublisher/Publish.py, line 187, in publish File /usr/share/zope/lib/python/Zope/__init__.py, line 226, in zpublisher_exception_hook (Object: ZooExhibit_factory) File /usr/lib/python2.1/site-packages/ZPublisher/Publish.py, line 171, in publish File /usr/lib/python2.1/site-packages/ZPublisher/mapply.py, line 160, in mapply (Object: ZooExhibit_add) File /usr/lib/python2.1/site-packages/ZPublisher/Publish.py, line 112, in call_object (Object: ZooExhibit_add) File /usr/share/zope/lib/python/OFS/DTMLMethod.py, line 199, in __call__ (Object: ZooExhibit_add) File /usr/lib/python2.1/site-packages/DocumentTemplate/DT_String.py, line 546, in __call__ (Object: ZooExhibit_add) File /usr/lib/python2.1/site-packages/DocumentTemplate/DT_With.py, line 133, in render (Object: ZooExhibit.createInObjectManager(REQUEST['id'], REQUEST)) File /usr/lib/python2.1/site-packages/DocumentTemplate/DT_Util.py, line 231, in eval (Object: ZooExhibit.createInObjectManager(REQUEST['id'], REQUEST)) (Info: REQUEST) File <string>, line 2, in f (Object: guarded_getitem) NameError: global name 'ZooExhibit' is not defined --> <HR NOSHADE> <P>Troubleshooting Suggestions</P> <UL> <LI>The URL may be incorrect.</LI> <LI>The parameters passed to this resource may be incorrect.</LI> <LI>A resource that this resource relies on may be encountering an error.</LI> </UL> <P>For more detailed information about the error, please refer to the HTML source for this page. </P> <P>If the error persists please contact the site maintainer. Thank you for your patience. </P> </TD></TR> </TABLE> --------------------------------------------------------- Notice the NameError: global name 'ZooExhibit' is not defined I don't know what this means or why it's not working. I believe I have followed the instructions in the tutorial exactly. It's not a permissions thing because I have tried both (a) giving the Manager account the ability to "Add Zoo Exhibit", and (b) changing the "ZooExhibit_factory" permission to be "Add Documents, Images, and Files", with no change in behavior. I would be very grateful if somebody could advise me on how to troubleshoot this problem. Here is my system info: [dereks@dereks dereks]$ rpm -qa | grep -i zope Zope-zserver-2.4.3-1 Zope-2.4.3-1 [dereks@dereks dereks]$ cat /etc/mandrake-release Mandrake Linux release 8.1 (Vitamin) for i586 [dereks@dereks dereks]$ rpm -q python python-devel python-2.1.1-3mdk python-devel-2.1.1-3mdk Thank You, Derek Simkowiak