Модераторы: ginnie, korob2001
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отключение типов на серверной стороне SOAP::Lite, Как отключить автотипизацию в SOAP::Lite 
:(
    Опции темы
Zester
Дата 25.12.2012, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 25.12.2012

Репутация: нет
Всего: нет



Подскажите, как отключить автотипизацию тегов в ответном сообщении сервера веб-службы (SOAP::Lite)?

На SOAP-клиенте отключаю автотипизацию так:
Код

use SOAP::Lite; # Библиотека SOAP

# Настроить SOAP
my $soap = SOAP::Lite
  -> ns('http://localhost/AnPackage', 'ns4')
  -> proxy('http://localhost/cgi-bin/AnService.cgi');

# Отключить простановку XML-типов в тегах сообщений
$soap->autotype(0);


На SOAP-сервере как это сделать не знаю. smile 
PM MAIL   Вверх
Zester
Дата 27.12.2012, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 25.12.2012

Репутация: нет
Всего: нет



Связался через форум PerlMonks.org со специалистами по Perl.
В процессе длинной дискуссии на английском языке ситуация прояснилась.
В общем, отвечу сам себе:
Да, на SOAP-сервере отключить типы в RESPONSe можно. Например, так:

Код

My::CGI::Handler->dispatch_to('AnPackage')->handle;

BEGIN {
    package My::CGI::Handler;
    use vars qw(@ISA);
    @ISA = qw(SOAP::Transport::HTTP::CGI);

    sub handle {
        my $self = shift;
        $self->serializer->autotype(0);
и т.д.....................

т.е. достаточно конструкции 
Код

$self->serializer->autotype(0);
, чтобы
вот такой ответ:
Код

<soap:Body>
  <createRequestResponse xmlns="http://localhost/AnPackage" soapenc:arrayType="xsd:anyType[3]" xsi:type="soapenc:Array">
    <requestNumber xsi:type="xsd:string">1-13</requestNumber>
  </createRequestResponse>
</soap:Body>


превратился в такой:
Код

<soap:Body>
  <createRequestResponse xmlns="http://localhost/AnPackage">
    <requestNumber>1-13</requestNumber>
  </createRequestResponse>
</soap:Body>

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0953 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.