2013-07-17 3 views
0

Мне сказали, что мой заголовок мыло должно быть так:Являются ли эти 2 заголовка мыла одинаковыми?

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ws="http://ws.dgpys.deloitte.com"> 
<soap:Header> 
    <axis2:ServiceGroupId xmlns:axis2="http://ws.apache.org/namespaces/axis2"> 
     urn:uuid:FA7EB13C84D91BC34B1373986557015 
    </axis2:ServiceGroupId> 
</soap:Header> 
<soap:Body> 
    ... 
</soap:Body> 

Мой заголовок мыло:

<?xml version=\"1.0\" encoding=\"UTF-8\"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns1=\"http://ws.dgpys.deloitte.com\"> 
<SOAP-ENV:Header> 
    <ns1:ServiceGroupId> 
     urn:uuid:FA7EB13C84D91BC34B1373986557015 
    </ns1:ServiceGroupId> 
</SOAP-ENV:Header> 
<SOAP-ENV:Body> 
    ... 
</SOAP-ENV:Body> 

Шахта не работает. Я искал решение, но ничего не нашел. Как я могу это исправить? Или какие темы я должен изучить?

+1

Вы пробовали тот, который предложил ваш продюсер? – StephenTG

+1

Нет, я не смог создать заголовок производителя. Я использую php и когда я использую setSoapHeaders ($ header); он создает мой soapheader –

+0

Muhammed, как вы можете исправить проблему? Пожалуйста, посмотрите мой вопрос: http://stackoverflow.com/questions/28737554/difference-between-two-soap-requests. Я не мог исправить проблему. – Bora

ответ

1

Нет, ваш http://schemas.xmlsoap.org/soap/envelope/ is SOAP 1.1 и запрошен http://www.w3.org/2003/05/soap-envelope/, SOAP 1.2 пространство имен.

Не запутаться в soap/SOAP-ENV или axis/ns1, они просто префиксов.

Также ваше первое сообщение, похоже, отсутствует в объявлении префикса пространства имен axis2, но я полагаю, что xmlns:ws="http://ws.dgpys.deloitte.com" предназначен для чтения xmlns:axis2="http://ws.dgpys.deloitte.com".

Если поставщик просит отправить SOAP 1.2, используйте пространство имен SOAP 1.2 и формат сообщения. Вот почему релевантный код должен присутствовать в вашем вопросе, но вам необходимо указать instantiate your SoapClient like this:

$client = new SoapClient("some.wsdl", array('soap_version' => SOAP_1_2)); 
+0

Не создает никаких проблем при создании тега вместо тегов? –

+0

Нет, это просто [префиксы пространства имен] (http://www.w3.org/TR/REC-xml-names/#NT-PrefixedName). – CodeCaster

Смежные вопросы