PATCH: Proper namespaces handling in DJabberd
Daniel Ruoso
daniel at ruoso.com
Fri Jun 12 13:38:38 UTC 2009
Em Qua, 2009-06-10 às 14:51 -0700, Martin Atkins escreveu:
> While I agree that there are some bugs here, it seems like even if we
> did preserve the prefixes your faultcode and faultstring elements would
> be in the wrong namespace, because the default namespace within the XMPP
> stream is jabber:client, jabber:server or whatever.
> Is there something else we need to do here to make faultcode and
> faultstring work as expected? I'm not really familiar with SOAP iself,
> let alone SOAP over XMPP, so if I'm misunderstanding what's going on
> here please let me know... I just want to make sure that we are indeed
> addressing all of the prefix-related problems.
Ok, that's something that can be worked out simply by adding xmlns="",
which reverts the default namespace to unqualified, as can be seen in
the xml-names spec[1]
The attribute value in a default namespace declaration
MAY be empty. This has the same effect, within the scope
of the declaration, of there being no default namespace.
So the example message becomes:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://soap..." xmlns="">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Bla bla bla</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
and then faultcode and faultstring becomes unqualified.
[1] http://www.w3.org/TR/xml-names/#defaulting
More information about the Djabberd
mailing list