Ignore:
Timestamp:
Jul 16, 2008 11:28:14 AM (16 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master, version-1.30, version-2.00, version-3.01, version-3.02
Children:
0c0b13c
Parents:
0a47d52
Message:

parsing SOAP faults (finally)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/fedd_client.py

    r0a47d52 rbb3769a  
    1313from xmlrpclib import ServerProxy, Error, dumps, loads
    1414from ZSI import SoapWriter
     15from ZSI.TC import QName, String, URI, AnyElement, UNBOUNDED, Any
     16from ZSI.wstools.Namespaces import SOAP
     17from ZSI.fault import FaultType, Detail
    1518
    1619import xmlrpclib
     
    2023
    2124from optparse import OptionParser, OptionValueError
     25
     26import parse_detail
    2227
    2328# Turn off the matching of hostname to certificate ID
     
    269274if opts.debug > 1: print >>sys.stderr, msg
    270275
     276print FaultType.typecode;
     277
    271278if opts.transport == "soap":
    272279    loc = feddServiceLocator();
     
    292299        sys.exit("Malformed response (XMLPRC?): %s" % e)
    293300    except ZSI.FaultException, e:
    294         sys.exit("Fault: %s" % e)
     301        print dir(e.fault.detail[0])
     302        print e.fault.detail[0].RequestAccessFaultBody.get_element_code()
     303        d = unpack_soap(e.fault.detail[0].get_element_RequestAccessFaultBody())
     304        f = unpack_soap(e.fault.detail[0])
     305        print "unpack ", d
     306        print "unpack ", f
     307        sys.exit("Fault: %s %s" % (str(e.fault.code), str(e.fault.string)))
    295308
    296309
Note: See TracChangeset for help on using the changeset viewer.