веб-сервис через старую версию Perl - PullRequest
0 голосов
/ 04 мая 2011

когда я использую обновленную версию perl (ofcourse, также обновляю версию soap :: lite), поэтому я успешно подключаюсь к своему серверу всеми необходимыми методами.когда я перешел, используя более старую версию perl (ofcourse, также более старую версию soap :: lite), конверт создавался по-другому, и у меня не получилось вызвать методы сервера, которые получили параметры.Нужно ли что-то менять в коде или только в модулях?Если изменение может быть сделано через код, то, что мне нужно изменить.на данный момент мой код выглядит так:

my $ws_url = '$url';
my $ws_uri = '$uri';
my $ws_xmlns = '$xmlns';            

eval
{
                  my $soap = SOAP::Lite
                  -> uri( $ws_uri)
                  -> on_action(sub{sprintf '%s', @_})
                  -> proxy($ws_url,timeout => 15);

                 my @params = ( SOAP::Data->name(Add => "$paramAdd"));
                 $response = $soap->EndUnit(@params);

                  if($response->fault)
                  {
                      # die raises an exception
                      print "=======fault happened=====\n";
                      die $response->faultstring;
                  }
                  else
                  {
                      print $response->result;
                      print "\n";
                  }
                        };
                        if ($@)
                        {
                          print "$@\n";
                          print "Failed \n";
                        };

Большое спасибо за вашу помощь!Ноа: -)

1 Ответ

0 голосов
/ 04 мая 2011

Посмотрите на изменения между версиями SOAP :: Lite, которые вы используете: Изменения

Кроме того, вы должны указать, какие версии Perl и SOAP :: Lite вы используете.говорить о ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...