Php 具有多个名称空间的SOAP请求

Php 具有多个名称空间的SOAP请求,php,soap,soapui,Php,Soap,Soapui,我发送了一个POST请求,以从一家航运公司生成AWB。为了做到这一点,我必须通过SOAP API POST请求发布多个数据条目。下面的XML类似于所需的内容(我已经简化了,它要求的参数超过30个) 一串 SHPT2 如何实现同样的效果,我正在使用SoapClient并在“Shipping creation”标记之间发送一个参数数组,但我得到了下面的错误 格式化程序在尝试反序列化消息时引发异常:反序列化操作“Shipping_Creation”的请求消息正文时出错。应为命名空间“”中的结束元素

我发送了一个POST请求,以从一家航运公司生成AWB。为了做到这一点,我必须通过SOAP API POST请求发布多个数据条目。下面的XML类似于所需的内容(我已经简化了,它要求的参数超过30个)


一串
SHPT2
如何实现同样的效果,我正在使用SoapClient并在“Shipping creation”标记之间发送一个参数数组,但我得到了下面的错误

格式化程序在尝试反序列化消息时引发异常:反序列化操作“Shipping_Creation”的请求消息正文时出错。应为命名空间“”中的结束元素“Body”。从命名空间“”中找到元素“param1”。第2行,246号位置


我是SOAP新手,请帮我找到正确的方向,我甚至非常感谢上面的XML代码,因为它有助于更好地理解。

您不需要
name=“shipping\u Creation”
元素中的
SOAP-ENV:Envelope
属性。把它拿走


您已经在使用
ns2
引用元素中的名称空间,您不需要
SOAP-ENV:Envelope
元素中的
name=“shipping\u Creation”
属性。把它拿走


您已经用
ns2

引用了元素中的名称空间,谢谢craigcaulfield,您能告诉我如何使用PHP生成上述XML数据吗?您现在如何生成SOAP消息?这是您所做的,还是您从另一个来源收到的?我遵循了一个使用soap客户端的教程,但是该教程使用了没有名称空间的简单xml。我之前发布了一个问题,其中包含我的完整代码,在这里:谢谢craigcaulfield,你能告诉我如何使用PHP生成上述XML数据吗?你现在如何生成SOAP消息?这是您所做的,还是您从另一个来源收到的?我遵循了一个使用soap客户端的教程,但是该教程使用了没有名称空间的简单xml。我之前发布了一个问题,其中包含我的完整代码,请点击此处:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://schemas.datacontract.org/2004/07/PostaWebClient"
xmlns:ns2="http://tempuri.org/" name="Shipment_Creation">
    <SOAP-ENV:Body>
        <ns2:Shipment_Creation>
            <ns2:SHIPINFO>
                <ns1:ClientInfo>
                    <ns1:UserName>String</ns1:UserName>
                </ns1:ClientInfo>                
                <ns1:CodeShippmentType>SHPT2</ns1:CodeShippmentType>                 
            </ns2:SHIPINFO>
        </ns2:Shipment_Creation>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>