Consultor Eletrônico



Kbase P137925: A duplicate namespace declaration is incorrectly placed into a SOAP Request Header
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/28/2008
Status: Unverified

SYMPTOM(s):

A duplicate namespace declaration is incorrectly placed into a SOAP Request Header

The same namespace is declared twice within the SOAP Request Header

FACT(s) (Environment):

This is not always the case depending on the structure of the SOAP Header
OpenEdge 10.1x
OpenEdge 10.2A
All Supported Operating Systems

CAUSE:

Bug# OE00178237

FIX:

Even though not best practice, as a workaround combine the use of CREATE-NODE-NAMESPACE and CREATE-NODE. Here is a code snippet that illustrates this:
/*********************************/
hXdoc:CREATE-NODE-NAMESPACE(hSecurityNode,
"http://ams/",
"ns0:AuthHeader",
"ELEMENT").

hXdoc:CREATE-NODE(hXnoderef1,
"ns0:Username",
"ELEMENT").

hXdoc:CREATE-NODE(hXtext,
"",
"TEXT").
hXtext:NODE-VALUE = "name".
hXnoderef1:APPEND-CHILD(hXtext).

hSecurityNode:APPEND-CHILD(hXnoderef1).

hXdoc:CREATE-NODE(hXnoderef1,
"ns0:Password",
"ELEMENT").

hXdoc:CREATE-NODE(hXtext,
"",
"TEXT").
hXtext:NODE-VALUE = "password".
hXnoderef1:APPEND-CHILD(hXtext).

hSecurityNode:APPEND-CHILD(hXnoderef1).
/*********************************/