2012-02-23 4 views
0

Я использую объект Zend_Soap_Client для отправки запроса на мыло в другое приложение здесь является формат XML, который он посылает на сервер:SOAP возвращая ошибочный ответ XML

<?xml version="1.0" encoding="UTF-8"?> 
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="urllocation" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://www.w3.org/2003/05/soap-encoding"><env:Body><ns1:isAccountActive env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"><param0 xsi:type="xsd:string">thisisatest</param0></ns1:isAccountActive></env:Body></env:Envelope> 

Я использую его на другие серверы SOAP, которые у меня есть, и, кажется, работают нормально, но один из серверов ответил на вопрос «Недопустимый XML», поэтому мне действительно интересно, почему он не будет работать только на этом сервере. Любые идеи очень приветствуются.

Дополнительные детали:

Я пытался commentout код, который вызывает метод с сервера вот код:

$client = new Zend_Soap_Client(null, 
      array(
       'uri'=>'http://'.$user->customconfigs['alumniuri'], 
       'encoding'=>'UTF-8', 
       'location'=>'http://'.$user->customconfigs['alumnilocation'] 
      ) 
     ); 
     echo "Location: {$user->customconfigs['alumnilocation']} - uri: {$user->customconfigs['alumniuri']}"; 
     $alumniactive = $client->isAccountActive($token); 

на комментирование:

$alumniactive = $client->isAccountActive($token); 

ошибка исчезла. Это те же самые коды из моих других приложений, и она отлично работает оттуда.

+0

Возможно, речь идет скорее о сервере, если все остальные работают нормально?) Что такое сервер, и работает ли он с любыми другими клиентами в вашем распоряжении? – raina77ow

+0

Да, это больше на сервере, и тот же код используется для всех других серверов. Я не могу размещать местоположение сервера здесь для целей безопасности, но одни и те же логики используются на всех других серверах, которые я создал. Возможно, есть какие-либо настройки или часть XML-кода, которые я отправляю, что может вызвать проблему, и я действительно пытаюсь понять, откуда она может быть. –

+0

@ raina77ow для вашего вопроса, если он будет работать на других клиентах во время утилизации, да, это сработало бы только на этот раз, я действительно расстроен, отслеживая, откуда эта проблема. –

ответ

0

После долгого поиска ответа на этот вопрос я, наконец, нашел проблему ... этот код фактически расположен на компоненте joomla, который я использовал uri, так же, как и у меня, из местоположения, которое будет включать символ «&», который является незаконным по стандарту xml, удаляя этот символ из моего xml, заставит сервер SOAP принять запрос как действительный. :)

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