XML-RPC - не может упорядочивать рекурсивные словари

У меня есть простой пример отправки словаря через xml-rpc:

 class CTest(object):
    def __init__(self):
        self.node1 = {'data':'zek', 'parent':{},  'children':[]}
        self.node2 = {'data':'bill', 'parent':{}, 'children':[]}
        self.node1['children'].append(self.node2)
        self.node2['parent'] = self.node1

    def getNode(self):
        return self.node1

У меня есть два словаря : node2 является потомком node1, и в то же время node2 имеет ссылку на node1 в качестве родительской переменной. Таким образом, это рекурсивный словарь. Когда я пытаюсь отправить node1 через XML-RPC, я получаю следующее исключение:

#Command to execute xml-rpc dump method for serialization
test = CTest()
xmlrpclib.dumps((test,), 'Node Object')
#Exception
raise TypeError, "cannot marshal recursive dictionaries"

Можно ли отправить node1 через XML-RPC (без изменения структуры словаря)?

Спасибо.

5
задан zekifh 23 May 2011 в 16:13
поделиться