[Twisted-Python] XmlStream and addObserver - root element's name?

Marcin Gliński marcin at ascii-art.pl
Wed Dec 17 06:25:10 EST 2008


There's a problem I can't find an answer to. I'd like to design Xml
based protocol.
I've found XmlStream, read doc and found addObserver method. I wrote
simple code:

class XmlTest(xmlstream.XmlStream):
    # (...)
    def connectionMade(self):
        self.addObserver("/frame", self.frameHandler)
        # (...)

    # (...)

    def frameHandler(self, data):
        print "Wilma, I'm Home!"

When I send XML with frame element as a root:


FrameHandler isn't executed, but if I put frame element inside some
other root element:


Then my handler is activated. Why? First, I thought maybe my XPath
knowledge is wrong,
so I checked few tutorials[1] and they told me there's something wrong with
addObserver method. How to make it working?

(Hi, I'm new here :)

More information about the Twisted-Python mailing list