@classmethod<EOL><INDENT>def processRequest(cls, ps, **kw):<DEDENT>
resource = kw['<STR_LIT>']<EOL>request = kw['<STR_LIT>']<EOL>root = _get_element_nsuri_name(ps.body_root)<EOL>for key,method in inspect.getmembers(resource, inspect.ismethod):<EOL><INDENT>if (getattr(method, '<STR_LIT>', False) and method.root == root):<EOL><INDENT>break<EOL><DEDENT><DEDENT>else:<EOL><INDENT>raise RuntimeError('<STR_LIT>' %root)<EOL><DEDENT>try:<EOL><INDENT>req = ps.Parse(method.requesttypecode)<EOL><DEDENT>except Exception as ex:<EOL><INDENT>raise<EOL><DEDENT>try:<EOL><INDENT>rsp = method.responsetypecode.pyclass()<EOL><DEDENT>except Exception as ex:<EOL><INDENT>raise<EOL><DEDENT>try:<EOL><INDENT>req,rsp = method(req, rsp)<EOL><DEDENT>except Exception as ex:<EOL><INDENT>raise<EOL><DEDENT>return rsp<EOL>
invokes callback that should return a (request,response) tuple.
        representing the SOAP request and response respectively.
        ps -- ParsedSoap instance representing HTTP Body.
        request -- twisted.web.server.Request