سؤال

ولقد تابعت الدروس لإقامة أباتشي مع mod_wsgi إلى واجهة cherrypy وجعل الموقع على التوالي من ذلك. هذا هو بلدي "myapp.wsgi"، وفتح HTTP: // المضيف المحلي / يعمل كبيرة. فتح HTTP: // المضيف المحلي / القرد / يعود في الواقع النص بدلا من الصابون ردا على ذلك، و <لأ href = "HTTP: //localhost/ape/service.wsdl" يختلط = "نوفولو noreferrer"> HTTP: //localhost/ape/service.wsdl بإرجاع رمز الخطأ 500 HTTP. ماذا أفعل خطأ في الحصول على هذه الخدمة SOAP بسيطة لتشغيل؟ كيف يمكنني الحصول عليه للعودة WSDL صالحة؟ يتبع قانون بلدي أدناه

وهتاف

ونيك

import atexit, threading, cherrypy,sys
from soaplib.wsgi_soap import SimpleWSGISoapApp
from soaplib.service import soapmethod
from soaplib.serializers.primitive import String, Integer, Array

sys.stdout = sys.stderr
cherrypy.config.update({'environment': 'embedded'})

class Root(object):
    def index(self):
        return 'Hello World!'
    index.exposed = True

    @soapmethod(_returns=String)
    def ape(self):
       return 'Ape!!'
    ape.exposed = True

application = cherrypy.Application(Root(), None)
هل كانت مفيدة؟

المحلول

وأنا مجرد اختبار هذا بنفسي من خلال استبدال السطر الأخير من الملف الخاص بك مع

cherrypy.quickstart(Root(), "/")

ووانها عملت على ما يرام بالنسبة لي. أقترح يحاول هذا ورؤية ما إذا كان يعمل للكم. إذا فعلت ذلك ثم عليك أن تعرف أنه من قضية تتعلق تشغيله تحت أباتشي / mod_wsgi وليس مشكلة متأصلة مع التعليمات البرمجية.

نصائح أخرى

وايلي هو الصحيح. انها ليست كافية لجعل مجرد مثيل التطبيق. لديك لتركيبها على cherrypy.tree، الذي التشغيل السريع () لا بالنسبة لك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top