We have customers demand customed SOAP request. So we have to manually construct SOAP Envelope.
However, our customer's proposal has TWO methods calls inside one SOAP envelope. Before I say NO
to them, I want to make sure here, is that possible that you can call TWO methods in one SOAP Body?

The SOAP Envelope looks like the following code. Please pay attention to "<soap:Body> ...</soap:Body>"
block, Apache-SOAP treats Manifest and cBody as TWO methods, and also their isd service ids are not the
same in Deployment Descriptor file(Here are "http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd"
and "cb="http://mycompany.com/cbody.xsd").  So I built two methods Manifest and cBody, however, everytime
SOAP only call Manifest which is the first one. I have to delete "<eb:Manifest>...</eb:Manifest>" block then
method cBody was called. BTW, I use type of "mesage" calling for SOAP.

I studied so many examples and all are the ONE method call in ONE SOAP Envelope. So I wonder if it is possible
that make multiple method calls within ONE SOAP Envelope.

Thanks in advance,

-Daniel

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
                         xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd"
                         xmlns:ch="http://mycompany.com/cheader.xsd"
                         xmlns:cb="http://mycompany.com/cbody.xsd"
                         xmlns:xlink="http://www.w3.org/1999/xlink"
                         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                         xmlns:xs="http://www.w3/org/2001/XMLSchema"
                         xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/
                                                          http://www.oasis-open.org/committees/ebxml-msg/schema/envelope.xsd
                                                          http://mycompany.com/cheader.xsd
                                                          http://mycompany.com/cbody.xsd">
<soap:Header>
    <eb:MessageHeader eb:version="2.0" soap:mustUnderstand = "1">
       <eb:From>L.A</eb:From>
       <eb:To>N.Y</eb:To>
        ......
     </eb:MessageHeader>
     <ch:cHeader>
          ......
     </ch:cHeader>
</soap:Header>
<soap:Body>
    <eb:Manifest eb:id="ID000001" eb:version="2.0">
         <eb:Reference xlink:href="">"cid:project"" xlink:type="simple" xlink:role=""http://mycompany.com/roles/Poject_Description/" />
          ......
     </eb:Manifest>
     <cb: cBody>
         <cb: Name>John</cb:Name>
         <cb:Address>
             .......
         </cb:Address>
          ........
      </cb:cBody>
</soap:Body>
</soap:Envelope>


    

Reply via email to