New submission from David Durham <[EMAIL PROTECTED]>:

I went to /portal_skins/kupu_plone and edited kupucollection.xml.  I receive the
following error:


AttributeError  Python 2.4.4: /usr/local/bin/python
Tue May 6 12:40:37 2008

A problem occurred in a Python script. Here is the sequence of function calls
leading up to the error, in the order they occurred.
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/Paste-1.5-py2.4.egg/paste/cgitb_catcher.py
 in __call__(self=<paste.cgitb_catcher.CgitbMiddleware object>, 
environ={'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 
'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<built-in method start_response of mod_wsgi.Adapter 
object>)
   41     def __call__(self, environ, start_response):
   42         try:
   43             app_iter = self.app(environ, start_response)
   44             return self.catching_iter(app_iter, environ)
   45         except:
app_iter undefined, self = <paste.cgitb_catcher.CgitbMiddleware object>,
self.app = <paste.httpexceptions.HTTPExceptionHandler object>, environ =
{'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE':
'CGI/1.1', 'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, start_response = <built-in method start_response of mod_wsgi.Adapter 
object>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/Paste-1.5-py2.4.egg/paste/httpexceptions.py
 in __call__(self=<paste.httpexceptions.HTTPExceptionHandler object>, 
environ={'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 
'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<built-in method start_response of mod_wsgi.Adapter 
object>)
  630                            []).append(HTTPException)
  631         try:
  632             return self.application(environ, start_response)
  633         except HTTPException, exc:
  634             return exc(environ, start_response)
self = <paste.httpexceptions.HTTPExceptionHandler object>, self.application =
<repoze.retry.Retry instance>, environ = {'DOCUMENT_ROOT':
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, start_response = <built-in method start_response of mod_wsgi.Adapter 
object>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.retry-0.6-py2.4.egg/repoze/retry/__init__.py
 in __call__(self=<repoze.retry.Retry instance>, environ={'DOCUMENT_ROOT': 
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1', 
'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<built-in method start_response of mod_wsgi.Adapter 
object>)
   24         while 1:
   25             try:
   26                 result = self.application(environ, 
self.buffer_start_response)
   27             except ConflictError, why:
   28                 if environ.get('wsgi.errors'):
result undefined, self = <repoze.retry.Retry instance>, self.application =
<repoze.tm.TM instance>, environ = {'DOCUMENT_ROOT':
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, self.buffer_start_response = <bound method Retry.buffer_start_response of
<repoze.retry.Retry instance>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.tm-0.8-py2.4.egg/repoze/tm/__init__.py
 in __call__(self=<repoze.tm.TM instance>, environ={'DOCUMENT_ROOT': 
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1', 
'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<bound method Retry.buffer_start_response of 
<repoze.retry.Retry instance>>)
   12         transaction.begin()
   13         try:
   14             result = self.application(environ, start_response)
   15         except:
   16             self.abort()
result undefined, self = <repoze.tm.TM instance>, self.application =
<repoze.vhm.middleware.VHMFilter instance>, environ = {'DOCUMENT_ROOT':
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, start_response = <bound method Retry.buffer_start_response of
<repoze.retry.Retry instance>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.vhm-0.6-py2.4.egg/repoze/vhm/middleware.py
 in __call__(self=<repoze.vhm.middleware.VHMFilter instance>, 
environ={'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 
'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<bound method Retry.buffer_start_response of 
<repoze.retry.Retry instance>>)
   51             environ['repoze.vhm.virtual_root'] = root_header
   52  
   53         return self.application(environ, start_response)
   54  
   55 def make_filter(app, global_conf):
self = <repoze.vhm.middleware.VHMFilter instance>, self.application =
<repoze.errorlog.ErrorLog instance>, environ = {'DOCUMENT_ROOT':
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, start_response = <bound method Retry.buffer_start_response of
<repoze.retry.Retry instance>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.errorlog-0.5-py2.4.egg/repoze/errorlog/__init__.py
 in __call__(self=<repoze.errorlog.ErrorLog instance>, 
environ={'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 
'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<bound method Retry.buffer_start_response of 
<repoze.retry.Retry instance>>)
   83             environ['repoze.errorlog.entryid'] = identifier
   84             try:
   85                 return self.application(environ, start_response)
   86             except self.ignored_exceptions:
   87                 # just reraise an ignored exception
self = <repoze.errorlog.ErrorLog instance>, self.application =
<repoze.obob.publisher.ObobPublisher instance>, environ = {'DOCUMENT_ROOT':
'/sites/beta.jgsullivan.com-http-80', 'GATEWAY_INTERFACE': 'CGI/1.1',
'HTTP_ACCEPT':
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'HTTP_ACCEPT_ENCODING':
'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 'en-us,en;q=0.5', 'HTTP_CONNECTION':
'keep-alive', 'HTTP_COOKIE':
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300',
...}, start_response = <bound method Retry.buffer_start_response of
<repoze.retry.Retry instance>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.obob-0.3-py2.4.egg/repoze/obob/publisher.py
 in __call__(self=<repoze.obob.publisher.ObobPublisher instance>, 
environ={'DOCUMENT_ROOT': '/sites/beta.jgsullivan.com-http-80', 
'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT': 
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.7', 
'HTTP_ACCEPT_ENCODING': 'gzip,deflate', 'HTTP_ACCEPT_LANGUAGE': 
'en-us,en;q=0.5', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 
'tree-s="eJzTyCkw5NLIKTDiClZ3hALXJE9bda4CY67ERD0A...1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)',
 'HTTP_HOST': 'beta.jgsullivan.dev.jgsullivan.com', 'HTTP_KEEP_ALIVE': '300', 
...}, start_response=<bound method Retry.buffer_start_response of 
<repoze.retry.Retry instance>>)
  162 
  163                 helper.before_invoke(published)
  164                 result = helper.invoke(published)
  165 
  166                 status, headers, body_iter = helper.map_result(result)
result undefined, helper = <repoze.zope2.z2bob.Zope2ObobHelper instance>,
helper.invoke = <bound method Zope2ObobHelper.invoke of
<repoze.zope2.z2bob.Zope2ObobHelper instance>>, published = <bound method
ExternalEditor.index_html of <Prod...rnalEditor.ExternalEditor.ExternalEditor
object>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.zope2-0.3.7-py2.4.egg/repoze/zope2/z2bob.py
 in invoke(self=<repoze.zope2.z2bob.Zope2ObobHelper instance>, published=<bound 
method ExternalEditor.index_html of 
<Prod...rnalEditor.ExternalEditor.ExternalEditor object>>)
  395                          handle_class = dont_publish_class,
  396                          context = request,
  397                          bind=1)
  398 
  399         return result
bind undefined
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/repoze.zope2-0.3.7-py2.4.egg/repoze/zope2/mapply.py
 in mapply(object=<bound method ExternalEditor.index_html of 
<Prod...rnalEditor.ExternalEditor.ExternalEditor object>>, positional=(), 
keyword=<HTTPRequest, URL=None>, debug=None, maybe=1, missing_name=<function 
missing_name>, handle_class=<function dont_publish_class>, 
context=<HTTPRequest, URL=None>, bind=1)
   92         args.append(v)
   93 
   94     args=tuple(args)
   95     if debug is not None: return debug(object,args,context)
   96     else: return object(*args)
object = <bound method ExternalEditor.index_html of
<Prod...rnalEditor.ExternalEditor.ExternalEditor object>>, args = (<HTTPRequest,
URL=None>, RepozeHTTPResponse(''), None)
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/ploneproducts-3.1.1-py2.4.egg/Products/ExternalEditor/ExternalEditor.py
 in index_html(self=<Products.ExternalEditor.ExternalEditor.ExternalEditor 
object>, REQUEST=<HTTPRequest, URL=None>, RESPONSE=RepozeHTTPResponse(''), 
path=None)
  201             # of response headers should happen there, if possible.
  202             try:
  203                 body = ob.manage_FTPget()
  204             except TypeError: # some need the R/R pair!
  205                 body = ob.manage_FTPget(REQUEST, RESPONSE)
body undefined, ob = <FSPageTemplate at
/jgsi/portal_skins/kupu_plone/kupucollection.xml>, ob.manage_FTPget = <bound
method FSPageTemplate.manage_FTPget of
<F...jgsi/portal_skins/kupu_plone/kupucollection.xml>>
 
/sites/beta.jgsullivan.com-http-80/lib/python2.4/site-packages/zopelib-2.10.5.0-py2.4-linux-i686.egg/Products/PageTemplates/ZopePageTemplate.py
 in manage_FTPget(self=<FSPageTemplate at 
/jgsi/portal_skins/kupu_plone/kupucollection.xml>)
  360         "Get source for FTP download"
  361         result = self.read()
  362         return result.encode(self.output_encoding)
  363 
  364     security.declareProtected(view_management_screens, 'html')
result = u'<tal:block define="charset here/portal_propertie...s>\n
</uploadbutton>\n </items>\n\n</collection>\n', result.encode = <built-in method
encode of unicode object>, self = <FSPageTemplate at
/jgsi/portal_skins/kupu_plone/kupucollection.xml>, self.output_encoding 
undefined

AttributeError: output_encoding
      args = ('output_encoding',)

----------
messages: 99
nosy: ddurham
priority: bug
status: unread
title: editing a file in ZMI fails

__________________________________
Repoze Bugs <[EMAIL PROTECTED]>
<http://bugs.repoze.org/issue36>
__________________________________
_______________________________________________
Repoze-dev mailing list
Repoze-dev@lists.repoze.org
http://lists.repoze.org/listinfo/repoze-dev

Reply via email to