Handle form="unqualified" correctly, remove extraneous newline character
diff --git a/src/common/BasicTypeSerializer.cpp b/src/common/BasicTypeSerializer.cpp
index 56d54b4..b04ad3e 100644
--- a/src/common/BasicTypeSerializer.cpp
+++ b/src/common/BasicTypeSerializer.cpp
@@ -74,8 +74,10 @@
{
logEntryEngine("BasicTypeSerializer::serializeAsElement")
+ bool hasPrefix = (NULL != pPrefix && *pPrefix != 0x00);
+
m_sSZ = "<";
- if (NULL != pPrefix)
+ if (hasPrefix)
{
m_sSZ += pPrefix;
m_sSZ += ":";
@@ -85,8 +87,12 @@
if (NULL != pNamespace)
{
- m_sSZ += " xmlns:";
- m_sSZ += pPrefix;
+ m_sSZ += " xmlns";
+ if (hasPrefix)
+ {
+ m_sSZ += ":";
+ m_sSZ += pPrefix;
+ }
m_sSZ += "=";
m_sSZ += PLATFORM_DOUBLE_QUOTE_S;
m_sSZ += pNamespace;
@@ -109,7 +115,7 @@
* It is a null value not an empty value.
*/
m_sSZ = "<";
- if (NULL != pPrefix)
+ if (hasPrefix)
{
m_sSZ += pPrefix;
m_sSZ += ":";
@@ -118,8 +124,12 @@
if (NULL != pNamespace)
{
- m_sSZ += " xmlns:";
- m_sSZ += pPrefix;
+ m_sSZ += " xmlns";
+ if (hasPrefix)
+ {
+ m_sSZ += ":";
+ m_sSZ += pPrefix;
+ }
m_sSZ += "=";
m_sSZ += PLATFORM_DOUBLE_QUOTE_S;
m_sSZ += pNamespace;
@@ -135,7 +145,7 @@
m_sSZ += pSimpleType->serialize();
m_sSZ += "</";
- if (NULL != pPrefix)
+ if (hasPrefix)
{
m_sSZ += pPrefix;
m_sSZ += ":";
@@ -156,7 +166,7 @@
logEntryEngine("BasicTypeSerializer::serializeAsAttribute")
m_sSZ = ' ';
- if (pPrefix)
+ if (pPrefix && *pPrefix != 0x00)
{
m_sSZ += pPrefix;
m_sSZ += ':';
diff --git a/src/soap/SoapMethod.cpp b/src/soap/SoapMethod.cpp
index 7f23e2f..bf5f455 100644
--- a/src/soap/SoapMethod.cpp
+++ b/src/soap/SoapMethod.cpp
@@ -125,7 +125,7 @@
if(iStatus==AXIS_FAIL)
break;
- pSZ.serialize(">\n", NULL);
+ pSZ.serialize(">", NULL);
// push the current NS to the NS stack
pSZ.getNamespacePrefix(m_strUri.c_str());