def do_POST(self):
try:<EOL><INDENT>ct = self.headers['<STR_LIT>']<EOL>if ct.startswith('<STR_LIT>'):<EOL><INDENT>cid = resolvers.MIMEResolver(ct, self.rfile)<EOL>xml = cid.GetSOAPPart()<EOL>ps = ParsedSoap(xml, resolver=cid.Resolve)<EOL><DEDENT>else:<EOL><INDENT>length = int(self.headers['<STR_LIT>'])<EOL>ps = ParsedSoap(self.rfile.read(length))<EOL><DEDENT><DEDENT>except ParseException as e:<EOL><INDENT>self.send_fault(FaultFromZSIException(e))<EOL>return<EOL><DEDENT>except Exception as e:<EOL><INDENT>self.send_fault(FaultFromException(e, <NUM_LIT:1>, sys.exc_info()[<NUM_LIT:2>]))<EOL>return<EOL><DEDENT>_Dispatch(ps, self.server.modules, self.send_xml, self.send_fault,<EOL>docstyle=self.server.docstyle, nsdict=self.server.nsdict,<EOL>typesmodule=self.server.typesmodule, rpc=self.server.rpc)<EOL>
The POST command.