Author Archives: pavelpat

SOAP-сервисы, Spyne и наследование Spyne-моделей

В проекте, который я разрабатываю, используется библиотека Spyne.

Это очень мощная, гибкая, продуманная библиотека, но с документацией существуют некоторые проблемы. Впрочем, документация хорошая, но в тот момент, когда нужно сделать что-то, что в ней не описано, начинается суровое гугление, а затем, после ненайденных ответов, начинается суровая отладка по локоть в метаклассах и six.

Continue reading

DjCelery и долгие задачи

Сегодня столкнулся с проблемой: часть задач отправлялась в celery, но не выполнялись, причем в rabbitmq-очередях была пустота – т.е. задачи были уже забраны в celery но не были выполнены, а в таблице celery_taskmeta эти задачи имели состояние PENDING.

Continue reading

Python, Spyne и lxml: PCDATA invalid Char value

Недавно столкнулся с проблемой – SOAP-сервис, работающий на Spyne, отдавал примерно такую ошибку:

<?xml version='1.0' encoding='UTF-8'?>
<senv:Envelope xmlns:senv="http://schemas.xmlsoap.org/soap/envelope/">
    <senv:Body>
        <senv:Fault>
            <faultcode>senv:Client.XMLSyntaxError</faultcode>
            <faultstring>PCDATA invalid Char value X, line Y, column Z</faultstring>
            <faultactor></faultactor>
        </senv:Fault>
    </senv:Body>
</senv:Envelope>

Continue reading