[Zope3-Users] substitute for deprecated response.write()?
Adam Summers
adam at 4js.com.au
Wed Dec 28 11:45:21 EST 2005
Hi,
I am red faced (and blurry-eyed, its 1am here)- I found the answer
in the archives, in September:
On Fri, Sep 16, 2005 at 11:50:19AM -0400, Stephan Richter wrote:
>> Just return the data; it is handled properly now.
>
>
Adam Summers wrote:
> Hi,
>
> I was having a look at Phillipp's fabulous book (thanks!), and came
> across the code for publishing a PDF document to the browser (this is
> slightly modified from the book):
>
> from zope.app import zapi
> from zope.app.publisher.browser import BrowserView
>
> from ccard.pdf.interfaces import IPDFPresentation
>
> class PDFView(BrowserView):
>
> def __call__(self):
> pdf = zapi.getViewProviding(self.context, IPDFPresentation,
> self.request)
> filename = zapi.name(self.context) + '.pdf'
> response = self.request.response
> response.setHeader('Context-Disposition', 'attachment; filename=%s'
> % filena
> me)
> response.setHeader('Content=Type', 'application/pdf')
> response.setHeader('Content-Length', len(pdf.data))
> response.write(pdf.data)
>
> However, these days I get the error:
>
> 2005-12-28T15:29:56 ERROR SiteError
> http://localhost:8080/++skin++Boston/t2/Cred
> itCard/pdf
> Traceback (most recent call last):
> File "/home/Adam/z3/Zope3/src/zope/publisher/publish.py", line 138,
> in publish
> result = publication.callObject(request, object)
> File
> "/home/Adam/z3/Zope3/src/zope/app/publication/zopepublication.py", line 1
> 61, in callObject
> return mapply(ob, request.getPositionalArguments(), request)
> File "/home/Adam/z3/Zope3/src/zope/publisher/publish.py", line 113,
> in mapply
> return debug_call(object, args)
> File "/home/Adam/z3/Zope3/src/zope/publisher/publish.py", line 119,
> in debug_c
> all
> return object(*args)
> File "/home/Adam/z3/products/ccard/pdf/browser.py", line 15, in __call__
> response.write(pdf.data)
> AttributeError: 'BrowserResponse' object has no attribute 'write'
>
> What is the correct technique, now that BrowserResponse does not have
> write()
>
> TIA, and Happy New Year
> Adam
>
>
>
> _______________________________________________
> Zope3-users mailing list
> Zope3-users at zope.org
> http://mail.zope.org/mailman/listinfo/zope3-users
More information about the Zope3-users
mailing list