Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import logging
- from rpclib.application import Application
- from rpclib.decorator import rpc
- from rpclib.interface.wsdl import Wsdl11
- from rpclib.protocol.soap import Soap11
- from rpclib.service import ServiceBase
- from rpclib.model.primitive import Integer
- from rpclib.model.primitive import String
- from rpclib.model.complex import ComplexModel
- from rpclib.server.wsgi import WsgiApplication
- class data_response(ComplexModel):
- first = String
- second = Integer
- class testf_response(ComplexModel):
- state = String
- data = data_response
- class testt(ServiceBase):
- @rpc(String, String, _returns=testf_response)
- def testf(self, first, second):
- result = testf_response()
- result.state = "ff"
- result.data = data_response()
- result.data.first = "test"
- result.data.second = 2
- return result
- if __name__=='__main__':
- try:
- from wsgiref.simple_server import make_server
- except ImportError:
- print "Error: example server code requires Python >= 2.5"
- logging.basicConfig(level=logging.DEBUG)
- logging.getLogger('rpclib.protocol.xml').setLevel(logging.DEBUG)
- application = Application([testt], 'testt', interface=Wsdl11(), in_protocol=Soap11(), out_protocol=Soap11())
- server = make_server('127.0.0.1', 8080, WsgiApplication(application))
- print "listening to http://127.0.0.1:8080"
- print "wsdl is at: http://localhost:8080/?wsdl"
- server.serve_forever()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement