нужно написать web-сервисы на основе SOAP. В качестве клиента используется 1С 7.7 и 8.0
Собственно, вопросов несколько.
1) Делал ли вообще кто такое когда-нибудь? Если да, какие библиотеки использовал?
Я выбрал soaplib, т.к. она, похоже, единственная пока не заглохла. К тому же, позволяет автоматически генерить wsdl схему. Однако проблема в том, что очень скромная документация, мало того, даже примеры из документации без напильника не всегда работают. Может, поделитесь опытом? дадите советы и ссылки, если есть?
2) Написал тестовый сервис
import soaplib
from soaplib.core.service import soap, DefinitionBase
from soaplib.core.model.primitive import String
from soaplib.core.server import wsgi
class Test1C(DefinitionBase):
@soap(String,_returns=String)
def testsoap(self,instr):
if instr=='TEST':
outstr = 'Success'
else:
outstr = 'Fail'
return outstr
soap_application = soaplib.core.Application([Test1C], 'test')
application = wsgi.Application(soap_application)
Пробовал на 3 soap-клиентах, из suds на питоне, из C#, а также онлайн клиент http://soapclient.com/soaptest.html, везде сервис работает, а из 1С всегда возвращает “Fail”, независимо от входной строки. К сожалению, не владею языком 1С и клиента пишу не я, поэтому подробности про клиент не скажу. Надеюсь, кто-нибудь укажет на ошибку.
3) в soaplib генерация схемы автоматическая и я не нашел средств, как влиять на генерацию. Кто подскажет?
P.S. Новичок в SOAP и wsdl, поэтому есть подозрение, что просто схема генерится не совсем корректно