Exception generating report on server accessed through https

Bug #1185418 reported by Gediminas Paulauskas on 2013-05-29
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SchoolTool
Critical
Gediminas Paulauskas

Bug Description

Trying to generating a report, exception occurs.

Server running Ubuntu 12.04 LTS
SchoolTool 2.4.0
Accessed through Apache VirtualHost configured to use SSL (as documented on cando.cteresource.org).

Exception

IOError: [Errno socket error] [Errno 1] _ssl.c:504: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
   handle_pageBegin args=()

Traceback

File "/usr/lib/python2.7/dist-packages/zope/publisher/publish.py", line 132, in publish
  result = publication.callObject(request, obj)
File "/usr/lib/python2.7/dist-packages/zope/app/publication/zopepublication.py", line 207, in callObject
  return mapply(ob, request.getPositionalArguments(), request)
File "/usr/lib/python2.7/dist-packages/zope/publisher/publish.py", line 107, in mapply
  return debug_call(obj, args)
Extra information: <schooltool.skin.flourish.zcml_content.StudentCompetencySectionReportPDFView_student_competency_section_report.pdf object at 0x7f3ae25c2950>
File "/usr/lib/python2.7/dist-packages/zope/publisher/publish.py", line 113, in debug_call
  return obj(*args)
File "/usr/lib/python2.7/dist-packages/schooltool/skin/flourish/report.py", line 161, in __call__
  data = self.renderPDF(rml)
File "/usr/lib/python2.7/dist-packages/schooltool/skin/flourish/report.py", line 110, in renderPDF
  stream = rml2pdf.parseString(xml, filename=filename or None)
File "/usr/lib/python2.7/dist-packages/z3c/rml/rml2pdf.py", line 41, in parseString
  doc.process(output)
File "/usr/lib/python2.7/dist-packages/z3c/rml/document.py", line 286, in process
  self.doc.multiBuild(self.flowables)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 960, in multiBuild
  self.build(tempStory, **buildKwds)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 877, in build
  self.clean_hanging()
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 510, in clean_hanging
  self.handle_flowable(self._hanging)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 757, in handle_flowable
  f.apply(self)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 140, in apply
  getattr(doc,arn)(*args)
File "/usr/lib/python2.7/dist-packages/reportlab/platypus/doctemplate.py", line 535, in handle_pageBegin
  self.pageTemplate.onPage(self.canv,self)
File "/usr/lib/python2.7/dist-packages/z3c/rml/template.py", line 146, in drawOnCanvas
  drawing.process()
File "/usr/lib/python2.7/dist-packages/z3c/rml/directive.py", line 109, in process
  self.processSubDirectives()
File "/usr/lib/python2.7/dist-packages/z3c/rml/directive.py", line 102, in processSubDirectives
  directive.process()
File "/usr/lib/python2.7/dist-packages/z3c/rml/canvas.py", line 304, in process
  kwargs = dict(self.getAttributeValues(attrMapping=self.attrMapping))
File "/usr/lib/python2.7/dist-packages/z3c/rml/directive.py", line 59, in getAttributeValues
  value = attr.bind(self).get()
File "/usr/lib/python2.7/dist-packages/z3c/rml/attr.py", line 100, in get
  return self.fromUnicode(value)
File "/usr/lib/python2.7/dist-packages/z3c/rml/attr.py", line 308, in fromUnicode
  fileObj = super(Image, self).fromUnicode(value)
File "/usr/lib/python2.7/dist-packages/z3c/rml/attr.py", line 292, in fromUnicode
  fileObj = self.open(value)
File "/usr/lib/python2.7/urllib.py", line 86, in urlopen
  return opener.open(url)
File "/usr/lib/python2.7/urllib.py", line 207, in open
  return getattr(self, name)(url)
File "/usr/lib/python2.7/urllib.py", line 436, in open_https
  h.endheaders(data)
File "/usr/lib/python2.7/httplib.py", line 954, in endheaders
  self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 814, in _send_output
  self.send(msg)
File "/usr/lib/python2.7/httplib.py", line 776, in send
  self.connect()
File "/usr/lib/python2.7/httplib.py", line 1161, in connect
  self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file)
File "/usr/lib/python2.7/ssl.py", line 381, in wrap_socket
  ciphers=ciphers)
File "/usr/lib/python2.7/ssl.py", line 143, in __init__
  self.do_handshake()
File "/usr/lib/python2.7/ssl.py", line 305, in do_handshake
  self._sslobj.do_handshake()

Changed in schooltool:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers