Fix namespace in SOAP fault child elements.
[shibboleth/xmltooling.git] / xmltooling / soap / impl / SOAPImpl.cpp
index 2b33a47..62315ca 100644 (file)
@@ -36,6 +36,7 @@ using namespace soap11;
 using namespace xmltooling;
 using namespace std;
 using xmlconstants::SOAP11ENV_NS;
+using xmlconstants::SOAP11ENV_PREFIX;
 
 #if defined (_MSC_VER)
     #pragma warning( push )
@@ -183,10 +184,10 @@ namespace {
 
     protected:
         void processChildElement(XMLObject* childXMLObject, const DOMElement* root) {
-            PROC_TYPED_CHILD(Faultcode,SOAP11ENV_NS,false);
-            PROC_TYPED_CHILD(Faultstring,SOAP11ENV_NS,false);
-            PROC_TYPED_CHILD(Faultactor,SOAP11ENV_NS,false);
-            PROC_TYPED_CHILD(Detail,SOAP11ENV_NS,false);
+            PROC_TYPED_CHILD(Faultcode,NULL,false);
+            PROC_TYPED_CHILD(Faultstring,NULL,false);
+            PROC_TYPED_CHILD(Faultactor,NULL,false);
+            PROC_TYPED_CHILD(Detail,NULL,false);
             AbstractXMLObjectUnmarshaller::processChildElement(childXMLObject,root);
         }
     };
@@ -409,3 +410,13 @@ const XMLCh Header::LOCAL_NAME[] =                      UNICODE_LITERAL_6(H,e,a,
 const XMLCh Header::TYPE_NAME[] =                       UNICODE_LITERAL_6(H,e,a,d,e,r);
 const XMLCh Header::ACTOR_ATTRIB_NAME[] =               UNICODE_LITERAL_5(a,c,t,o,r);
 const XMLCh Header::MUSTUNDERSTAND_ATTRIB_NAME[] =      UNICODE_LITERAL_14(m,u,s,t,U,n,d,e,r,s,t,a,n,d);
+
+static const XMLCh _CLIENT[] =                          UNICODE_LITERAL_6(C,l,i,e,n,t);\r
+static const XMLCh _SERVER[] =                          UNICODE_LITERAL_6(S,e,r,v,e,r);\r
+static const XMLCh _MUSTUNDERSTAND[] =                  UNICODE_LITERAL_14(M,u,s,t,U,n,d,e,r,s,t,a,n,d);\r
+static const XMLCh _VERSIONMISMATCH[] =                 UNICODE_LITERAL_15(V,e,r,s,i,o,n,M,i,s,m,a,t,c,h);\r
\r
+QName Faultcode::CLIENT(SOAP11ENV_NS,_CLIENT,SOAP11ENV_PREFIX);\r
+QName Faultcode::SERVER(SOAP11ENV_NS,_SERVER,SOAP11ENV_PREFIX);\r
+QName Faultcode::MUSTUNDERSTAND(SOAP11ENV_NS,_MUSTUNDERSTAND,SOAP11ENV_PREFIX);\r
+QName Faultcode::VERSIONMISMATCH(SOAP11ENV_NS,_VERSIONMISMATCH,SOAP11ENV_PREFIX);\r