Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Won't Fix
-
Affects Version/s: 1.1
-
Fix Version/s: 1.2
-
Component/s: None
-
Labels:None
-
Environment:Mac OS X Intel 10.4.7, Apache Tomcat 5.5.17, Java 1.5.0_06
-
Number of attachments :
Description
I have a method that takes a complex type as a parameter. If I try to test it by creating a raw SOAP message and posting it (instead of using a generated Java proxy class), I have to repeat the namespace, and use a prefix, on the complex type. For example:
<?xml version='1.0' encoding='UTF-8'?>
<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
<soap:Body>
<createObject xmlns='http://www.soasta.com/services/repository'>
<rp:oObject xmlns:rp='http://www.soasta.com/services/repository' rp:name="sub" rp:path="/" rp:type="folder" >
<rp:Body>foo</rp:Body>
</rp:oObject>
</createObject>
</soap:Body>
</soap:Envelope>
Notice that the <oObject> element simply reproduces the namespace on the parent <createObject> element, and adds a prefix.
If I leave the namespace out on the <oObject> element, or if I try to repeat it as a default namespace instead of using the "rp" prefix, then the type is not marshaled correctly and I get a null body on the server side.
Lest you think that it is because "Body" is already a SOAP element, I tried with others too and same problem ![]()
Attaching the Aegis mapping file for the complex type.