gsoap xml
最近又碰到新的问题。就是gsoap生成一个复杂类型ns3_message
class SOAP_CMAC ns3__MessageBody
{
public:
std::vector<char * >__any; /* SOAP 1.2 RPC return element (when namespace qualified) */
struct soap *soap; /* transient */
public:
virtual int soap_type() const { return 8; } /* = unique id SOAP_TYPE_ns3__MessageBody */
virtual void soap_default(struct soap*);
virtual void soap_serialize(struct soap*) const;
virtual int soap_put(struct soap*, const char*, const char*) const;
virtual int soap_out(struct soap*, const char*, int, const char*) const;
virtual void *soap_get(struct soap*, const char*, const char*);
virtual void *soap_in(struct soap*, const char*, const char*);
ns3__MessageBody() { ns3__MessageBody::soap_default(NULL); }
virtual ~ns3__MessageBody() { }
};
其中std::vector<char*>是输入xml串,但是服务端总是返回错误消息:<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"><s:Header><a:Action s:mustUnderstand="1">urn:ihe:iti:2007:RegistryStoredQueryResponse</a:Action></s:Header><s:Body><tns:RegistryResponse status="urn:oasis:names:tc:ebxml-regrep:ResponseStatusType:Failure" xmlns:tns="urn:oasis:names:tc:ebxml-regrep:xsd:rs:3.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"><tns:RegistryErrorList highestSeverity=""><tns:RegistryError codeContext="在 XML 声明之前,不会出现任何字符。 第 2 行,位置为 720。" errorCode="XDSRegistryError" severity="urn:oasis:names:tc:ebxml-regrep:ErrorSeverityType:Error"/></tns:RegistryErrorList></tns:RegistryResponse></s:Body></s:Envelope>
请问哪位大侠有过类似的问题,急求指点