1
0
Fork 0

- base for WSDL-Webservice

git-svn-id: file:///home/www/usr01/svn/gnuviechadmin/gnuviech.info/gnuviechadmin/trunk@178 a67ec6bc-e5d5-0310-a910-815c51eb3124
This commit is contained in:
Jan Dittberner 2006-03-07 22:26:55 +00:00
parent 9692371a57
commit 650c4928c3
6 changed files with 700 additions and 4 deletions

32
backend/src/SOAPServer.py Normal file
View file

@ -0,0 +1,32 @@
#!/usr/bin/python
#
# (c) 2006 Jan Dittberner <jan@dittberner.info>
# $Id$
#
from ZSI.ServiceContainer import ServiceContainer
from ZSI.dispatch import SOAPRequestHandler
from gnuviechadminCommon.gnuviechadmin_services_server import *
service = gnuviechadmin()
class mySOAPRequestHandler(SOAPRequestHandler):
'''
Own SOAP request handler implementation.
'''
def do_GET(self):
'''
Process the HTTP GET method, delivers service's WSDL.
'''
self.send_xml(service._wsdl)
def AsServer(port=80, services=(), RequestHandlerClass=SOAPRequestHandler):
address = ('', port)
sc = ServiceContainer(address, RequestHandlerClass=RequestHandlerClass)
for service in services:
path = service.getPost()
sc.setNode(service, path)
sc.serve_forever()
if __name__ == '__main__':
AsServer(port=8080, services=[service], RequestHandlerClass=mySOAPRequestHandler)