liu cong - 2009-01-19

I used xmlrpc++0.7 for xmlrpc client, connected to java and python servers.
Env: windows xp sp3, vs.net 2005.
Here were the problems:

1>
Compile error: macro EAGAIN and EINTR were not defined.
I defined the macros myself to work it out.
Source: XmlRpcSoket.cpp line:60

2>
The xml respose string from java server were not expected by xmlrpc++, it had more props in the xml node. that cause errors while parsing respose.
The xmlrpc++ xml parsing should be more compatible with xmlrpc protocol.
Source: XmlRpcClient line:25
My modification:
const char XmlRpcClient::METHODRESPONSE_APACHE_TAG[] = "<methodResponse xmlns:ex=\&quot;http://ws.apache.org/xmlrpc/namespaces/extensions\&quot;>"

3>
If xmlrpc++ client reconnected, it wound unregister from XmlRpcDispatch and register again, this condition ocurred when XmlRpcDispatch traversing menber _sources, and make the iterator invalidated, finally crashed this program.
Source: XmlRpcDispatch line:130,140