私は動作中の web.py アプリケーションと動作中の Spyne アプリケーションを持っています。特定の URL に一致するときに、spyne アプリへの web.py ルート リクエストを作成したいと思います。
web.py docs に従ってラッパーを試しましたが、うまくいきませんでした。
myspyne.py で:
import logging
logging.basicConfig(level=logging.DEBUG)
from spyne.application import Application
from spyne.decorator import srpc
from spyne.service import ServiceBase
from spyne.model.primitive import Integer
from spyne.model.primitive import Unicode
from spyne.model.complex import Iterable
from spyne.protocol.soap import Soap11
class HelloWorldService(ServiceBase):
@srpc(Unicode, Integer, _returns=Iterable(Unicode))
def say_hello(name, times):
for i in range(times):
yield 'Hello, %s' % name
application = Application([HelloWorldService],
tns='my.custom.ns',
in_protocol=Soap11(validator='lxml'),
out_protocol=Soap11())
myweb.py で:
urls = (
'/', 'index',
'/myspyne/(.*)', myspyne.application, # this does not work
)
class index:
def GET(self):
return "hello"
app = web.application(urls, globals(), autoreload=False)
application = app.wsgifunc()
if __name__ == '__main__':
app.run()