Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

soaplite · SOAP::Lite for Perl (soaplite.com)

The Yahoo! Groups Product Blog

Check it out!

Group Information

  • Members: 1205
  • Category: Protocols
  • Founded: Jan 28, 2001
  • Language: English
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Message search is now enhanced, find messages faster. Take it for a spin.

Messages

Advanced
Messages Help
Messages 6592 - 6622 of 6629   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#6592 From: Mauro Gatti <mauro.list@...>
Date: Mon Jul 25, 2011 8:20 am
Subject: Installation problem
mauro.list
Send Email Send Email
 
Hi all,
I'm trying to install SOAP::Lite module via CPAN but I can't because I got the error reported.

Could You help me understand what's wrong?

Thank You

Regards

Mauro


cpan[1]> install SOAP::Lite
Going to read '/root/.cpan/Metadata'
  Database was generated on Mon, 25 Jul 2011 01:39:01 GMT
Running install for module 'SOAP::Lite'
Running make for M/MK/MKUTTER/SOAP-Lite-0.712.tar.gz
Checksum for /root/.cpan/sources/authors/id/M/MK/MKUTTER/SOAP-Lite-0.712.tar.gz ok
Scanning cache /root/.cpan/build for sizes
............................................................................DONE

  CPAN.pm: Going to build M/MK/MKUTTER/SOAP-Lite-0.712.tar.gz

We are about to install SOAP::Lite and for your convenience will provide
you with list of modules and prerequisites, so you'll be able to choose
only modules you need for your configuration.

XMLRPC::Lite, UDDI::Lite, and XML::Parser::Lite are included by default.
Installed transports can be used for both SOAP::Lite and XMLRPC::Lite.

Press <enter> to see the detailed list. 

Feature                       Prerequisites                Install?
----------------------------- ---------------------------- --------
Core Package                  [*] Scalar::Util             always 
                              [*] URI                             
                              [*] constant                        
                              [*] Test::More                      
                              [*] MIME::Base64                    
                              [*] Class::Inspector                
                              [*] XML::Parser (v2.23)             
                              [*] Task::Weaken                    
Client HTTP support           [*] LWP::UserAgent           always 
Client HTTPS support          [*] Crypt::SSLeay            [ yes ]
Client SMTP/sendmail support  [*] MIME::Lite               [ yes ]
Client FTP support            [ ] SOAP::Transport::FTP (v0.712) [ no ] 
Standalone HTTP server        [*] HTTP::Daemon             [ yes ]
Apache/mod_perl server        [ ] Apache                   [ no ] 
FastCGI server                [*] FCGI                     [ yes ]
POP3 server                   [*] MIME::Parser             [ yes ]
                              [*] Net::POP3                       
IO server                     [*] IO::File                 [ yes ]
MQ transport support          [ ] SOAP::Transport::MQ (v0.712) [ no ] 
JABBER transport support      [ ] SOAP::Transport::JABBER (v0.712) [ no ] 
MIME messages                 [*] MIME::Parser             [ yes ]
DIME messages                 [*] IO::Scalar (v2.105)      [ no ] 
                              [ ] DIME::Tools (v0.03)             
                              [ ] Data::UUID (v0.11)              
SSL Support for TCP Transport [ ] IO::Socket::SSL          [ no ] 
Compression support for HTTP  [*] Compress::Zlib           [ yes ]
MIME interoperability w/ Axis [ ] MIME::Parser (v6.106)    [ no ] 
--- An asterix '[*]' indicates if the module is currently installed.

Do you want to proceed with this configuration? [yes]
Checking if your kit is complete...
Looks good
Writing Makefile for SOAP::Lite
Writing MYMETA.yml
cp lib/SOAP/Packager.pm blib/lib/SOAP/Packager.pm
cp lib/XML/Parser/Lite.pm blib/lib/XML/Parser/Lite.pm
cp lib/SOAP/Transport/LOOPBACK.pm blib/lib/SOAP/Transport/LOOPBACK.pm
cp lib/XMLRPC/Transport/TCP.pm blib/lib/XMLRPC/Transport/TCP.pm
cp lib/SOAP/Transport/MAILTO.pm blib/lib/SOAP/Transport/MAILTO.pm
cp lib/Apache/SOAP.pm blib/lib/Apache/SOAP.pm
cp lib/SOAP/Schema.pod blib/lib/SOAP/Schema.pod
cp lib/SOAP/Test.pm blib/lib/SOAP/Test.pm
cp lib/Apache/XMLRPC/Lite.pm blib/lib/Apache/XMLRPC/Lite.pm
cp lib/XMLRPC/Transport/HTTP.pm blib/lib/XMLRPC/Transport/HTTP.pm
cp lib/SOAP/Transport/POP3.pm blib/lib/SOAP/Transport/POP3.pm
cp lib/SOAP/Deserializer.pod blib/lib/SOAP/Deserializer.pod
cp lib/SOAP/Server.pod blib/lib/SOAP/Server.pod
cp lib/SOAP/Data.pod blib/lib/SOAP/Data.pod
cp lib/SOAP/Transport/IO.pm blib/lib/SOAP/Transport/IO.pm
cp lib/SOAP/Lite/Utils.pm blib/lib/SOAP/Lite/Utils.pm
cp lib/UDDI/Lite.pm blib/lib/UDDI/Lite.pm
cp lib/SOAP/Client.pod blib/lib/SOAP/Client.pod
cp lib/SOAP/Header.pod blib/lib/SOAP/Header.pod
cp lib/SOAP/Constants.pm blib/lib/SOAP/Constants.pm
cp lib/SOAP/Lite/Packager.pm blib/lib/SOAP/Lite/Packager.pm
cp lib/XMLRPC/Transport/POP3.pm blib/lib/XMLRPC/Transport/POP3.pm
cp lib/SOAP/SOM.pod blib/lib/SOAP/SOM.pod
cp lib/SOAP/Lite/Deserializer/XMLSchema1999.pm blib/lib/SOAP/Lite/Deserializer/XMLSchema1999.pm
cp lib/XMLRPC/Lite.pm blib/lib/XMLRPC/Lite.pm
cp lib/SOAP/Transport.pod blib/lib/SOAP/Transport.pod
cp lib/SOAP/Lite/Deserializer/XMLSchema2001.pm blib/lib/SOAP/Lite/Deserializer/XMLSchema2001.pm
cp lib/SOAP/Trace.pod blib/lib/SOAP/Trace.pod
cp lib/IO/SessionData.pm blib/lib/IO/SessionData.pm
cp lib/XMLRPC/Test.pm blib/lib/XMLRPC/Test.pm
cp lib/SOAP/Transport/TCP.pm blib/lib/SOAP/Transport/TCP.pm
cp lib/SOAP/Utils.pod blib/lib/SOAP/Utils.pod
cp lib/IO/SessionSet.pm blib/lib/IO/SessionSet.pm
cp lib/SOAP/Lite/Deserializer/XMLSchemaSOAP1_2.pm blib/lib/SOAP/Lite/Deserializer/XMLSchemaSOAP1_2.pm
cp lib/SOAP/Transport/HTTP.pm blib/lib/SOAP/Transport/HTTP.pm
cp lib/SOAP/Serializer.pod blib/lib/SOAP/Serializer.pod
cp lib/SOAP/Lite/Deserializer/XMLSchemaSOAP1_1.pm blib/lib/SOAP/Lite/Deserializer/XMLSchemaSOAP1_1.pm
cp lib/SOAP/Transport/LOCAL.pm blib/lib/SOAP/Transport/LOCAL.pm
cp lib/SOAP/Fault.pod blib/lib/SOAP/Fault.pod
cp lib/SOAP/Lite.pm blib/lib/SOAP/Lite.pm
cp bin/SOAPsh.pl blib/script/SOAPsh.pl
/opt/data/perl-5.14.1/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/SOAPsh.pl
cp bin/stubmaker.pl blib/script/stubmaker.pl
/opt/data/perl-5.14.1/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/stubmaker.pl
cp bin/XMLRPCsh.pl blib/script/XMLRPCsh.pl
/opt/data/perl-5.14.1/bin/perl -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/XMLRPCsh.pl
Manifying blib/man1/SOAPsh.pl.1
Manifying blib/man1/stubmaker.pl.1
Manifying blib/man1/XMLRPCsh.pl.1
Manifying blib/man3/SOAP::Packager.3
Manifying blib/man3/UDDI::Lite.3
Manifying blib/man3/SOAP::Client.3
Manifying blib/man3/SOAP::Header.3
Manifying blib/man3/XML::Parser::Lite.3
Manifying blib/man3/SOAP::Constants.3
Manifying blib/man3/SOAP::Transport::LOOPBACK.3
Manifying blib/man3/SOAP::Lite::Packager.3
Manifying blib/man3/XMLRPC::Transport::TCP.3
Manifying blib/man3/XMLRPC::Transport::POP3.3
Manifying blib/man3/SOAP::SOM.3
Manifying blib/man3/XMLRPC::Lite.3
Manifying blib/man3/SOAP::Transport.3
Manifying blib/man3/SOAP::Test.3
Manifying blib/man3/SOAP::Schema.3
Manifying blib/man3/Apache::SOAP.3
Manifying blib/man3/Apache::XMLRPC::Lite.3
Manifying blib/man3/XMLRPC::Transport::HTTP.3
Manifying blib/man3/SOAP::Trace.3
Manifying blib/man3/SOAP::Transport::POP3.3
Manifying blib/man3/SOAP::Deserializer.3
Manifying blib/man3/SOAP::Data.3
Manifying blib/man3/SOAP::Server.3
Manifying blib/man3/XMLRPC::Test.3
Manifying blib/man3/SOAP::Utils.3
Manifying blib/man3/SOAP::Serializer.3
Manifying blib/man3/SOAP::Lite.3
Manifying blib/man3/SOAP::Fault.3
  MKUTTER/SOAP-Lite-0.712.tar.gz
  /usr/bin/make -- OK
Running make test
PERL_DL_NONLAZY=1 /opt/data/perl-5.14.1/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/098_pod.t t/02-payload.t t/096_characters.t t/015_UNIVERSAL_can.t t/012-cloneable.t t/01-core.t t/03-server.t t/099_pod_coverage.t t/05-customxml.t t/07-xmlrpc_payload.t t/08-schema.t t/097_kwalitee.t t/04-attach.t t/013-array-deserialization.t t/010-serializer.t t/06-modules.t t/014_UNIVERSAL_use.t t/XMLRPC/Lite.t t/SOAP/Serializer.t t/SOAP/Data.t t/SOAP/Schema/WSDL.t t/SOAP/Transport/LOCAL.t t/SOAP/Transport/HTTP.t t/SOAP/Transport/POP3.t t/SOAP/Transport/IO.t t/SOAP/Transport/MAILTO.t t/SOAP/Transport/HTTP/CGI.t t/SOAP/Lite/Packager.t t/SOAP/Lite/Deserializer/XMLSchema1999.t t/SOAP/Lite/Deserializer/XMLSchema2001.t t/SOAP/Lite/Deserializer/XMLSchemaSOAP1_1.t t/SOAP/Lite/Deserializer/XMLSchemaSOAP1_2.t t/XML/Parser/Lite.t t/IO/SessionData.t t/IO/SessionSet.t
t/01-core.t .................................. ok    
t/010-serializer.t ........................... ok      
t/012-cloneable.t ............................ ok  
t/013-array-deserialization.t ................ ok  
t/014_UNIVERSAL_use.t ........................ ok  
t/015_UNIVERSAL_can.t ........................ ok  
t/02-payload.t ............................... ok      
t/03-server.t ................................ ok    
t/04-attach.t ................................ ok    
t/05-customxml.t ............................. ok    
t/06-modules.t ............................... ok   
t/07-xmlrpc_payload.t ........................ ok  
t/08-schema.t ................................ ok    
t/096_characters.t ........................... skipped: (no reason given)
t/097_kwalitee.t ............................. skipped: (no reason given)
t/098_pod.t .................................. skipped: (no reason given)
t/099_pod_coverage.t ......................... skipped: (no reason given)
t/IO/SessionData.t ........................... ok  
t/IO/SessionSet.t ............................ ok  
t/SOAP/Data.t ................................ ok    
t/SOAP/Lite/Deserializer/XMLSchema1999.t ..... ok    
t/SOAP/Lite/Deserializer/XMLSchema2001.t ..... ok    
t/SOAP/Lite/Deserializer/XMLSchemaSOAP1_1.t .. ok    
t/SOAP/Lite/Deserializer/XMLSchemaSOAP1_2.t .. ok    
t/SOAP/Lite/Packager.t ....................... ok  
t/SOAP/Schema/WSDL.t ......................... ok  
t/SOAP/Serializer.t .......................... ok    
t/SOAP/Transport/HTTP.t ...................... 1/? Use of uninitialized value $endpoint in exists at /root/.cpan/build/SOAP-Lite-0.712-DRDFt3/blib/lib/SOAP/Transport/HTTP.pm line 168.
Use of uninitialized value $endpoint in exists at /root/.cpan/build/SOAP-Lite-0.712-DRDFt3/blib/lib/SOAP/Transport/HTTP.pm line 180.
Use of uninitialized value $endpoint in exists at /root/.cpan/build/SOAP-Lite-0.712-DRDFt3/blib/lib/SOAP/Transport/HTTP.pm line 183.
Use of uninitialized value $content in join or string at /opt/data/perl-5.14.1/lib/site_perl/5.14.1/HTTP/Message.pm line 523.
t/SOAP/Transport/HTTP.t ...................... ok   
t/SOAP/Transport/HTTP/CGI.t .................. ok  
t/SOAP/Transport/IO.t ........................ ok  
t/SOAP/Transport/LOCAL.t ..................... ok  
t/SOAP/Transport/MAILTO.t .................... ok    
t/SOAP/Transport/POP3.t ...................... ok  
t/XML/Parser/Lite.t .......................... 1/38 Can't use string ("1") as an ARRAY ref while "strict refs" in use at (re_eval 11) line 1.
# Looks like you planned 38 tests but ran 7.
# Looks like your test exited with 255 just after 7.
t/XML/Parser/Lite.t .......................... Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 31/38 subtests
t/XMLRPC/Lite.t .............................. ok  

Test Summary Report
-------------------
t/XML/Parser/Lite.t                        (Wstat: 65280 Tests: 7 Failed: 0)
  Non-zero exit status: 255
  Parse errors: Bad plan.  You planned 38 tests but ran 7.
Files=35, Tests=868,  4 wallclock secs ( 0.43 usr  0.10 sys +  3.91 cusr  0.41 csys =  4.85 CPU)
Result: FAIL
Failed 1/35 test programs. 0/868 subtests failed.
make: *** [test_dynamic] Error 255
  MKUTTER/SOAP-Lite-0.712.tar.gz
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports MKUTTER/SOAP-Lite-0.712.tar.gz
Running make install
  make test had returned bad status, won't install without force
Failed during this command:
 MKUTTER/SOAP-Lite-0.712.tar.gz               : make_test NO





#6593 From: "nic_soft" <nicssoft@...>
Date: Wed Aug 3, 2011 4:26 pm
Subject: Connecting to server getting “Could not connect to host” using PHP and SOAP Ligt
nic_soft
Send Email Send Email
 
Hello,

I am struggling to get some SOAP request working using SOAP Ligth and PHP on the
requesting side and PERL on the server I am requesting information from. I have
never worked with SOAP before.

When printing the trace, etc., the URL I am trying to connect to looks wired:
"http://192.168.1.101/otrs/rpc.pl". I guess that could be part of the problem
(but what do I know...). Here is the trace:



     Fault message: Could not connect to host
     Fault code: 0
     array(2) {
       [0]=>
       array(4) {
         ["function"]=>
         string(11) "__doRequest"
         ["class"]=>
         string(10) "SoapClient"
         ["type"]=>
         string(2) "->"
         ["args"]=>
         array(5) {
           [0]=>
           string(645) "
     userpasswordTicketObjectTicketCreateNumber
     "
           [1]=>
           string(35) "http://192.168.1.101/otrs/rpc.pl"
           [2]=>
           string(13) "Core#Dispatch"
           [3]=>
           int(1)
           [4]=>
           int(0)
         }
       }
       [1]=>
       array(6) {
         ["file"]=>
         string(54) "/Library/WebServer/Documents/SMICTestProject/index.php"
         ["line"]=>
         int(37)
         ["function"]=>
         string(10) "__soapCall"
         ["class"]=>
         string(10) "SoapClient"
         ["type"]=>
         string(2) "->"
         ["args"]=>
         array(2) {
           [0]=>
           string(8) "Dispatch"
           [1]=>
           array(4) {
             [0]=>
             string(8) "user"
             [1]=>
             string(11) "password"
             [2]=>
             string(12) "TicketObject"
             [3]=>
             string(18) "TicketCreateNumber"
           }
         }
       }
     }
     Fault trace: // Of some reason this ends up after the actual trace
     Fault line: 37

Here is the code that generates the exception:

         try {
     $client = new SoapClient(null, array(

         'location'  => "http://192.168.1.101/otrs/rpc.pl",
         'uri'       => "Core",
         'trace'     => 1,
         'login'     => "user",
         'password'  => "password",
         'style'     => SOAP_RPC,
         'use'       => SOAP_ENCODED
     ));


     $ticketnumber = $client->__soapCall("Dispatch", array("user", "password",
"TicketObject", "TicketCreateNumber"));
     //Here happens a lot of things, but since this code is never reached I skip
including it.

     } catch (SoapFault $fault) {
     //trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring:
{$fault->faultstring})", E_USER_ERROR);
     echo "Fault message: ".$fault->getMessage()."\n";
     echo "Fault code: ".$fault->getCode()."\n";
     echo "Fault trace: ".var_dump($fault->getTrace())."\n";
     echo "Fault line: ".$fault->getLine()."\n";
     echo "Bad SOAP request\n";
     echo "REQUEST:\n".$client->__getLastRequest()."\n";
     echo "RESPONSE:\n".$client->__getLastResponse()."\n";
     echo "</pre>";
     exit;
     }

What is the problem and what how can I fix it? Should I encode the URL...?

I included just what I thought was necessary, please let me know if I should add
something. There is absolutely nothing in any logs I can include here, which I
find strange itself.

I'm using OpenSUSE/Apache on the server side and OsX/Apache/PHP on the client
side.

Thank you in advance!

#6594 From: Jo Rhett <jrhett@...>
Date: Thu Aug 4, 2011 4:39 pm
Subject: Re: Connecting to server getting “Could not connect to host” using PHP and SOAP Ligt
jorhett
Send Email Send Email
 
This code is PHP, and you've sent it to the mailing list for the Perl SOAP::Lite module.

On Aug 3, 2011, at 9:26 AM, nic_soft wrote:

I am struggling to get some SOAP request working using SOAP Ligth and PHP on the requesting side and PERL on the server I am requesting information from. I have never worked with SOAP before.

When printing the trace, etc., the URL I am trying to connect to looks wired: "http://192.168.1.101/otrs/rpc.pl". I guess that could be part of the problem (but what do I know...). Here is the trace:

Fault message: Could not connect to host
Fault code: 0
array(2) {
[0]=>
array(4) {
["function"]=>
string(11) "__doRequest"
["class"]=>
string(10) "SoapClient"
["type"]=>
string(2) "->"
["args"]=>
array(5) {
[0]=>
string(645) "
userpasswordTicketObjectTicketCreateNumber
"
[1]=>
string(35) "http://192.168.1.101/otrs/rpc.pl"
[2]=>
string(13) "Core#Dispatch"
[3]=>
int(1)
[4]=>
int(0)
}
}
[1]=>
array(6) {
["file"]=>
string(54) "/Library/WebServer/Documents/SMICTestProject/index.php"
["line"]=>
int(37)
["function"]=>
string(10) "__soapCall"
["class"]=>
string(10) "SoapClient"
["type"]=>
string(2) "->"
["args"]=>
array(2) {
[0]=>
string(8) "Dispatch"
[1]=>
array(4) {
[0]=>
string(8) "user"
[1]=>
string(11) "password"
[2]=>
string(12) "TicketObject"
[3]=>
string(18) "TicketCreateNumber"
}
}
}
}
Fault trace: // Of some reason this ends up after the actual trace
Fault line: 37

Here is the code that generates the exception:

try {
$client = new SoapClient(null, array(

'location' => "http://192.168.1.101/otrs/rpc.pl",
'uri' => "Core",
'trace' => 1,
'login' => "user",
'password' => "password",
'style' => SOAP_RPC,
'use' => SOAP_ENCODED
));


$ticketnumber = $client->__soapCall("Dispatch", array("user", "password", "TicketObject", "TicketCreateNumber"));
//Here happens a lot of things, but since this code is never reached I skip including it.

} catch (SoapFault $fault) {
//trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
echo "Fault message: ".$fault->getMessage()."\n";
echo "Fault code: ".$fault->getCode()."\n";
echo "Fault trace: ".var_dump($fault->getTrace())."\n";
echo "Fault line: ".$fault->getLine()."\n";
echo "Bad SOAP request\n";
echo "REQUEST:\n".$client->__getLastRequest()."\n";
echo "RESPONSE:\n".$client->__getLastResponse()."\n";
echo "</pre>";
exit;
}

What is the problem and what how can I fix it? Should I encode the URL...?

I included just what I thought was necessary, please let me know if I should add something. There is absolutely nothing in any logs I can include here, which I find strange itself.

I'm using OpenSUSE/Apache on the server side and OsX/Apache/PHP on the client side.

Thank you in advance!


-- 
Jo Rhett
Net Consonance : consonant endings by net philanthropy, open source and other randomness


#6595 From: "lee.huddleston@..." <lee.huddleston@...>
Date: Tue Sep 6, 2011 9:08 am
Subject: Processing complex types server side
lee.huddlest...
Send Email Send Email
 
Hi, I see plenty of examples of building complex data types using SOAP::Lite
client side, but no real examples of processing these server side.

I need to process nested lists coming into the server.

1) How do I get access to the body of the request on the server side?
2) Are there any examples of picking apart nested lists?

Thanks for your help, L

#6596 From: "lee.huddleston@..." <lee.huddleston@...>
Date: Tue Sep 6, 2011 8:43 am
Subject: Content length > 512 bytes
lee.huddlest...
Send Email Send Email
 
Hi all, having an issue running SOAP Lite 0.71 under Glassfish 3.1.1. Whenever I
send a request in that has content length > 512 bytes the server does not appear
to see the request and client times out.

Not sure if this is a GF or SOAP Lite issue, but does anyone have any ideas?

Thanks, L

#6597 From: "lee.huddleston@..." <lee.huddleston@...>
Date: Tue Sep 13, 2011 4:00 pm
Subject: XML Content in CGI Server
lee.huddlest...
Send Email Send Email
 
Hi, can anyone tell me how to access the raw XML content in a CGI server please?

Thanks, Lee

#6598 From: "chfoerst@..." <chfoerst@...>
Date: Fri Sep 23, 2011 9:26 am
Subject: getting more info in faults when using SOAP::Transport::HTTP::Daemon
chfoerst...
Send Email Send Email
 
Dear all,

I have the following code :


use SOAP::Lite +trace => [fault =>  \&log_faults];

@ISA = qw(SOAP::Server::Parameters SOAP::Transport::HTTP::Daemon);
use SOAP::Transport::HTTP;

my $daemon = SOAP::Transport::HTTP::Daemon
  -> new (LocalPort => 9876, Reuse => 1, Listen => 10)
  -> on_action(sub {})
  -> dispatch_to('meth1','meth2', ...);

$daemon->handle;

sub log_faults{
  open FAULT, ">>fault.log";
  print FAULT Dumper \@_ ;
  close FAULT;
}


Now, when I get a message, which for example, has an error in it's xml structure, I get the following writen in my fault.log:

$VAR1 = [
          'Client',
          'Application failed during request deserialization:
           mismatched tag at line 128, column 11, byte 6158 at   /some/path/XML/Parser.pm line 187
',
          undef,
          'http://localhost:8088/'
        ];

The question now is, where can I get the faulty-XML messages, which causes this error, so that I can talk to the customer and tell him, that he should change his client-application ?

Is there any way to get the incoming message in the fault section?

Thanks.

Regards 
Christian 


#6600 From: "jeff172937" <jeff@...>
Date: Thu Nov 10, 2011 7:47 pm
Subject: need consulting to implement SOAP
jeff172937
Send Email Send Email
 
I.m looking for help to implement data transfer using perl SOAP.  We need to
connect to a state agency to transfer files.  Any help is appreciated.

Here's what we need.

•         The ProcessRoster web service's WSDL is located at:

https://www.state.tx.us/ProcessEdRoster/Service1.asmx?wsdl

•         The formats of the xml (request and response) is noted in the
attachments
•         Our authentication requires a security token.  Your application should
reference this from a config file (as I am sure this will periodically change). 
Please note the snippet of code (C# .Net) to instantiate the authentication
class and set the token:

WebReferenceName.ValidationSoapHeader hdr =
   new WebReferenceName.ValidationSoapHeader();
hdr.DevToken = "xx";


•         Instantiation and request of the web service (snippet of code):

WebReferenceName.Service1 ws =
   new WebReferenceName.Service1();
WebReferenceName.ProcessRoster("your xml request");

#6601 From: "Richter, Tobias" <Tobias.Richter@...>
Date: Mon Dec 12, 2011 10:19 am
Subject: How to add authHeader to soap request ?
Tobias.Richter@...
Send Email Send Email
 
Hi *,

I try to write a simple Perl SOAP Client for these services:

http://almdemo.polarion.com/polarion/ws/services/SessionWebService?wsdl
http://almdemo.polarion.com/polarion/ws/services/TrackerWebService?wsdl
http://almdemo.polarion.com/polarion/ws/services/ProjectWebService?wsdl


My script looks like this now:
---snip---
...
my $SessionWebServicesoap = SOAP::Lite
-> proxy($SessionWebServiceURI)
-> uri($SessionWebServiceURI);

my $TrackerWebServicesoap = SOAP::Lite
-> proxy($TrackerWebServiceURI)
-> uri($TrackerWebServiceURI);

my $ProjectWebServicesoap = SOAP::Lite
-> proxy($ProjectWebServiceURI)
-> uri($ProjectWebServiceURI);

my $response;

print "\n";

#get session
my $session = $SessionWebServicesoap->logIn(
         SOAP::Data->name('userName')->value($user),
         SOAP::Data->name('password')->value($password)
);
my $sessionID = $session->{'_content'}[2][0][4]{'sessionID'};
print "session is: ".$sessionID."\n";

my $authHeader = SOAP::Header->name('sessionID')->value($sessionID);

$response = $ProjectWebServicesoap->getProject("productbacklog");
die $response->faultstring if ($response->fault);
my $IObject = $response->result;
print $response->result, "\n";

$response = $TrackerWebServicesoap->createWorkItem($IObject,$authHeader);
die $response->faultstring if ($response->fault);
print $response->result, "\n";


exit;
---snap---


Unfortunately I always get the following error message:
session is: 9109123277697179703
Project=HASH(0x6b6c4e0)
com.polarion.platform.security.PermissionDeniedException: Permission
com.polarion.persistence.object.WorkItem.key.created.modify denied for user null
in context null at soap6.pl line 56.


Do you have an idea how to add the session ID to my SOAP-Request Header?

I think somebody had the same problem with python's suds here:
https://fedorahosted.org/suds/ticket/233


Thank you.

Best regards,
Tobias


This email is intended solely for the use of the individual to whom it is
addressed and may contain confidential and/or privileged material. Any views or
opinions presented are solely those of the author and do not necessarily
represent those of AGCO. If you are not the intended recipient, be advised that
you have received this email in error and that any use, dissemination,
forwarding, printing or copying of this email is strictly prohibited. Neither
AGCO nor the sender accepts any responsibility for viruses and it is your
responsibility to scan and virus check the e-mail and its attachment(s) (if
any).

#6602 From: Tobias Richter <tri@...>
Date: Mon Dec 12, 2011 9:48 am
Subject: How to add authHeader to Soap Request
tri@...
Send Email Send Email
 
Hi *,

I try to write a simple Perl SOAP Client for these services:

http://almdemo.polarion.com/polarion/ws/services/SessionWebService?wsdl
http://almdemo.polarion.com/polarion/ws/services/TrackerWebService?wsdl
http://almdemo.polarion.com/polarion/ws/services/ProjectWebService?wsdl


My script looks like this now:
---snip---
...
my $SessionWebServicesoap = SOAP::Lite
-> proxy($SessionWebServiceURI)
-> uri($SessionWebServiceURI);

my $TrackerWebServicesoap = SOAP::Lite
-> proxy($TrackerWebServiceURI)
-> uri($TrackerWebServiceURI);

my $ProjectWebServicesoap = SOAP::Lite
-> proxy($ProjectWebServiceURI)
-> uri($ProjectWebServiceURI);

my $response;

print "\n";

#get session
my $session = $SessionWebServicesoap->logIn(
	 SOAP::Data->name('userName')->value($user),
	 SOAP::Data->name('password')->value($password)
);
my $sessionID = $session->{'_content'}[2][0][4]{'sessionID'};
print "session is: ".$sessionID."\n";

my $authHeader = SOAP::Header->name('sessionID')->value($sessionID);

$response = $ProjectWebServicesoap->getProject("productbacklog");
die $response->faultstring if ($response->fault);
my $IObject = $response->result;
print $response->result, "\n";

$response = $TrackerWebServicesoap->createWorkItem($IObject,$authHeader);
die $response->faultstring if ($response->fault);
print $response->result, "\n";


exit;
---snap---


Unfortunately I always get the following error message:
session is: 9109123277697179703
Project=HASH(0x6b6c4e0)
com.polarion.platform.security.PermissionDeniedException: Permission
com.polarion.persistence.object.WorkItem.key.created.modify denied for
user null in context null at soap6.pl line 56.


Do you have a idea how to add the session ID to my SOAP-Request Header?

I think somebody had the same problem with python's suds here:
https://fedorahosted.org/suds/ticket/233



Thank you.
Tobias

#6603 From: Tobias Richter <tri@...>
Date: Mon Dec 12, 2011 6:59 pm
Subject: Re: How to add authHeader to Soap Request
tri@...
Send Email Send Email
 
Hi *,

sorry, about Double posting - I thought that my first message hasn't
transmitted correctly.

In the meantime I was able to solve the problem by myself:

---snip---
my $SessionWebServicesoap = SOAP::Lite

->readable(1)

->proxy($SessionWebServiceURI)

->uri($SessionWebServiceURI)

;

$SessionWebServicesoap->autotype(0);

my $SessionWebServicesoapSerializer = $SessionWebServicesoap->serializer();

$SessionWebServicesoapSerializer->register_ns(
'http://ws.polarion.com/session', 'ns1' );



my $ProjectWebServicesoap = SOAP::Lite

->readable(1)

->proxy($ProjectWebServiceURI)

->uri($ProjectWebServiceURI)

;

$ProjectWebServicesoap->autotype(0);

my $ProjectWebServicesoapSerializer = $ProjectWebServicesoap->serializer();

$ProjectWebServicesoapSerializer->register_ns(
'http://ws.polarion.com/session', 'ns1' );





my $TrackerWebServicesoap = SOAP::Lite

->readable(1)

->proxy($TrackerWebServiceURI)

->uri($TrackerWebServiceURI)

;

$TrackerWebServicesoap->autotype(0);

my $TrackerWebServicesoapSerializer = $TrackerWebServicesoap->serializer();

$TrackerWebServicesoapSerializer->register_ns(
'http://ws.polarion.com/session', 'ns1' );



my $response;



print "\n";



#get session

my $session = $SessionWebServicesoap->logIn(

	 SOAP::Data->name('userName')->value($user),

	 SOAP::Data->name('password')->value($password)

);

my $sessionID = $session->{'_content'}[2][0][4]{'sessionID'};

print "session is: ".$sessionID."\n";



my $authHeader = SOAP::Header->name('ns1:sessionID')->value($sessionID);



$response = $TrackerWebServicesoap->getWorkItemById("projectname",
"TEST-1", $authHeader);

die $response->faultstring if ($response->fault);

print Dumper($response->result);


---snap---

The important stuff is the "register_ns" and the "$authheader" part.
Now it works perfect and I can go forward with this script... :)

Maybe somebody will find this solution useful in future.


Best regards,
Tobias

#6604 From: Rich T_ <rtomasso@...>
Date: Wed Jan 11, 2012 9:19 pm
Subject: How do I force something other than 'xsi' for type prefix
rtomasso
Send Email Send Email
 
I'm having trouble getting a soap response to validate because there does not
seem to be an easy way to change the prefix of type attributes. Setting
$obj->type() to anything always uses xsi:type, which is fine for standard types,
but not for complex types defined in the wsdl. I tried setting prefix but that
didn't help.

I'd also like to be able to set the additional namespaces in the Envelope.

This has kept me busy for a few days, any help would be really appreciated.

#6605 From: Joseph Werner <telcodev@...>
Date: Wed Jan 11, 2012 10:29 pm
Subject: Re: How do I force something other than 'xsi' for type prefix
telcodev@...
Send Email Send Email
 
How are you building the data structure?  Can you show us any SOAP::Data class objects in your code?

On Wed, Jan 11, 2012 at 4:19 PM, Rich T_ <rtomasso@...> wrote:
 

I'm having trouble getting a soap response to validate because there does not seem to be an easy way to change the prefix of type attributes. Setting $obj->type() to anything always uses xsi:type, which is fine for standard types, but not for complex types defined in the wsdl. I tried setting prefix but that didn't help.

I'd also like to be able to set the additional namespaces in the Envelope.

This has kept me busy for a few days, any help would be really appreciated.




--
Best Regards,
[Joseph] Christian Werner Sr
C 360.920.7183
H 757.304.0502


#6606 From: "daniel.foerderer" <daniel.foerderer@...>
Date: Thu Feb 2, 2012 10:36 am
Subject: SOAP::lite classes, methods versus php-Soap-classes and methods
daniel.foerd...
Send Email Send Email
 
Hello
I have some php-Code to connect to a soap-Server and I'm trying to figure out
how I can do the same connection with SOAP::Lite.
I'm not able to find the corresponding classes and methods in SOAP::Lite.

Here is the php-Code:

$client
=
new SoapClient
     ("http://130.60.19.86/evasys_01/services/soapserver-v50.wsdl");

$header_input = array('Login' => "soap", 'Password' => "xxx" );
$soapHeaders = new SoapHeader('soapserver-v50.wsdl',
                               'Header',
                                $header_input);
$client->__setSoapHeaders( $soapHeaders );

I would be glad if somebody could help me.

Regards
Daniel

#6607 From: "whmoseley" <moseley@...>
Date: Wed Feb 8, 2012 9:13 am
Subject: When does an element get turned into an object?
whmoseley
Send Email Send Email
 
I'm using JIRA::Client which uses SOAP::Lite to fetch an "issue" from a JIRA
server.

My code was fetching the owner of the ticket as $ticket->{assignee}, and this
was a scalar.

Last Friday the code started to fail because $ticket->{assignee} was now
returning a "String" object.

It appears that the WSDL changed (along with the SOAP response).  When I ran the
code on the public JIRA server I received a scalar again.

The XML markup seems to have changed from this (on the public JIRA server):

<assignee xsi:type="xsd:string">andreyev</assignee>

Which deserializes like this (simple scalar):

$ perl -MData::Dumper -MSOAP::Lite -le 'local $/; print Data::Dumper::Dumper(
SOAP::Deserializer->deserialize( <> )->result->{assignee} )'  jira_test.xml
$VAR1 = 'andreyev';


To this structure:

<assignee xsi:type="ns2:String" xmlns:ns2="http://lang.java"><bytes
xsi:type="xsd:base64Binary">YmlsbEBpcGFyYWRpZ21sksisvbQ==</bytes><empty
xsi:type="xsd:boolean">false</empty></assignee>


Which deserializes like this:

  perl -MData::Dumper -MSOAP::Lite -le 'local $/; print Data::Dumper::Dumper(
SOAP::Deserializer->deserialize( <> )->result->{assignee} )'  issue.xml
$VAR1 = bless( {
                  'bytes' => 'bill@...',
                  'empty' => 0
                }, 'String' );

I rarely use SOAP, so this may be a dumb question:

Could  JIRA::Client have somehow seen this change and handled it automatically? 
Or is this just a non-compatible API change?

And what methods end on available on this "String" class?

Does SOAP::LIte just turn any complex element into an object?  I mean w/o the
WDSL how does SOAP::Lite know what this object should look like -- just by the
structure of the XML?

Here's the public WSDL, if curious:

https://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl

#6608 From: hedges-cpan-temp-1684@...
Date: Fri Feb 10, 2012 12:15 am
Subject: SOAP::Packager namespace conflict with the one from SOAP.pm
hedges-cpan-temp-1684@...
Send Email Send Email
 
I work with a large CPAN installation.  SOAP.pm also comes
with a SOAP::Packager module.  So, one or the other of them
breaks.  Can this be resolved in the next version by moving
everything fully under the SOAP::Lite::* namespace?

Thanks.

-Mark

#6609 From: matt@...
Date: Fri Feb 10, 2012 11:18 pm
Subject: Using SOAP::Lite->service Server Response Issue
usecgipm
Send Email Send Email
 
I am having an issue using SOAP::Lite->service and not being able to check for
faultstring or is_success like there is when I use SOAP::Lite->new

I am unable to use the service when I use SOAP::Lite->new, but have no issue
when using the service using SOAP::Lite->service. I need to be able to read the
server response just in case the service is down. When I dump out
$soap(Dumper($soap)) I notice that there is no SOAP::Transport object. Is there
any way to retrieve the server response?

I am using Perl connecting to an ASP service.

Thanks in advance.

#6610 From: Rich T_ <rtomasso@...>
Date: Thu Mar 8, 2012 6:34 pm
Subject: Get SOAP::Lite to stop inserting namesp1
rtomasso
Send Email Send Email
 
Have a server running SOAP::Lite (0.711) to manage soap requests and return
results as an apache service/handler. It's working close to perfect except for
this one nagging problem. The SOAP::Lite library keeps creating a namesp1
pointing to soaplite.com and assuming all my new types are part of that
namespace.

For example, this request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:util="http://util.com/API/SOAP/Utils">
    <soapenv:Header/>
    <soapenv:Body>
       <util:getSLAs>
             <util:sla_ids>100</util:sla_ids>
       </util:getSLAs>
    </soapenv:Body>
</soapenv:Envelope>

Gives this response:

<soap:Envelope
  soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:namesp1="http://namespaces.soaplite.com/perl"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
       <getSLASResponse xmlns="http://util.com/API/SOAP/Utils">
          <sla_list soapenc:arrayType="namesp1:SLAObject[1]"
xsi:type="soapenc:Array">
             <SLAObject xsi:type="namesp1:SLAObject" xmlns="">
                <sla_id xsi:type="xsd:int">100</sla_id>
                <sla_name xsi:type="xsd:string">sample sla</sla_name>
                <active xsi:type="xsd:boolean">true</active>
             </SLAObject>
          </sla_list>
       </getSLASResponse>
    </soap:Body>
</soap:Envelope>

Which would be great except for this extraneous namesp1 which SOAP::Lite keeps
putting in there.

It's obviously smart enough to use the original request namespace for the
response object. If it didn't prefix the complex types with namesp1, it would be
fine, but nothing I try will get rid of that. I can add a ->type("foo:Object")
to the SOAP::Data call creating the object, which removes namesp1, but then I
don't have a "foo" namespace in the Response which causes the opposite problem.
Using ->prefix('') or ->uri('') doesn't remove it either.

I can get the effect I want by modifying the SOAP::Lite library to autotype(0)
when generating the response, but I can't do that in production. I can't find
another place to use that hook.

Any help here?

#6611 From: Klaus Guenter <klaus.guenter@...>
Date: Tue Mar 13, 2012 5:12 pm
Subject: Suppressing xsi:nil=true in body of parameterless calls
klaus.guenter@...
Send Email Send Email
 
Hi List,

I have to call a Webservice named GetManufacturers that does not accept any
parameter.

Unfortunately SOAP::LIte (0.714) generates  <admin:GetManufacturers
xsi:nil="true" /> instead of <admin:GetManufacturers/> in the SOAP Body, which
is not accpetd by the SOAP server.

All I found so far on the web is the hint to create my own serializer to solve
this.  I dont think this will solve my problem as I dont want to change the
behaviour of SOAP::Lite with regard to serialization of an undefined parameter
but rather want to skip the parameter serialization for parameterless method
calls completely.

After some UTSL I changed line 1593 in SOAP::LIte from

$body->set_value($parameters ? \$parameters : SOAP::Utils::encode_data()) if
$body;

to

$body->set_value($parameters, \$parameters) if $body && $parameters;

which results in the "correct" body tag as described above.

I would like to know if there is a better way to achieve this or if not,
whether we could make this behaviour configuration dependend lets say over a
method call like $handle->suppress_nils_in_parameterless_calls(1|0) as
already implemented for calls like $handle->use_default_ns()

Best regards,

Klaus
--
Polymer physicists are into chains.
-

#6612 From: "grantcblair" <g.blair@...>
Date: Thu Mar 29, 2012 7:58 pm
Subject: Would REALLY appreciate help - new to SOAPLite
grantcblair
Send Email Send Email
 
Hi Folks,

I'm relatively new to SOAPLite, as I inherited an application which relies on it
for web services (from a client perspective). I'm trying to generate a SOAP call
like this (tested in SOAPUI):

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:ns="http://delegosoftware.com/ns"
  xmlns:def="http://delegosoftware.com/definitions">
    <soapenv:Header/>
    <soapenv:Body>
       <ns:AuthorizationRequest>
          <def:AuthorizationRequestProcess>
             <def:Authorize encrypt="false" merchant="DEMOMERCHANT">
                <def:CCAUT>
                   <def:Ccins>Visa</def:Ccins>
                   <def:Ccnum>B598A5ED6C7024D3-1111</def:Ccnum>
                   <def:Datbi>20140930</def:Datbi>
                   <def:Ccname>JOE CONSUMER</def:Ccname>
		   <def:Autwv>154.18</def:Autwv>
                   <def:Ccwae>USD</def:Ccwae>
                   <def:Merch>DEMOMERCHANT</def:Merch>
		 <def:Cvval>111</def:Cvval>
                </def:CCAUT>
             </def:Authorize>
          </def:AuthorizationRequestProcess>
       </ns:AuthorizationRequest>
    </soapenv:Body>
</soapenv:Envelope>
+--------------------------------
Nothing too fancy here. Basic call to AuthorizationRequest with a bunch of
parameters.


My perl (SOAPLite) to do the equivalent is:

use SOAP::Lite +trace;

my $soap = SOAP::Lite ->uri('http://carina.delego.ca:8080')
	 ->proxy( 'http://carina.delego.ca:8080/DelegoWS/services/DelegoWS' ) ;

$soap->service('http://carina.delego.ca:8080/DelegoWS/services/DelegoWS?wsdl' )
;
$soap->readable(1) ;

my $serializer = $soap->serializer();
$serializer->register( 'http://delegosoftware.com/ns', 'ns' );


$serializer->namespaces({
"http://schemas.xmlsoap.org/soap/envelope/"=>"soapenv",
"http://delegosoftware.com/ns"=>"ns",
"http://delegosoftware.com/definitions"=>"def"});


my $cardtype = 'Visa' ;
my $expdate = '20141231' ;
my $cardnum = 'B598A5ED6C7024D3-1111' ;
my $nameoncard = 'JOE CONSUMER' ;
my $authamount = 150.12 ;
my $currency = 'USD' ;
my $merchid = 'DEMOMERCHANT' ;
my $cvv = 111 ;
my $street = '6415 Hwy 70' ;
my $zip = 10000 ;


my $som = $soap->call('ns:AuthorizationRequest',
	 SOAP::Data->name('def:AuthorizationRequestProcess'
	 => \SOAP::Data->name('def:Authorize' =>
	 \SOAP::Data->name('def:CCAUT' =>
	 \SOAP::Data->value(
		 SOAP::Data->name("def:Ccins" => $cardtype)->type(''),
		 SOAP::Data->name("def:Datbi" => $expdate)->type(''),
		 SOAP::Data->name("def:Ccnum" => $cardnum)->type(''),
		 SOAP::Data->name("def:Ccname" => $nameoncard)->type(''),
		 SOAP::Data->name("def:Autwv" => $authamount)->type('')->type(''),
		 SOAP::Data->name("def:Ccwae" => $currency)->type(''),
		 SOAP::Data->name("def:Merch" => $merchid)->type(''),
		 SOAP::Data->name("def:Cvval" => $cvv)->type(''),
		 SOAP::Data->name("def:Stras" => $street)->type(''),
		 SOAP::Data->name("def:Pstlz" => $zip)->type('')
		 )
	 ))->attr({encrypt => false,merchant => $merchid})
	 )
) ;

+-----------------------------------------------------------
Again, nothing particularly involved. But the issue comes with the XML this
generates:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
     soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
     xmlns:def="http://delegosoftware.com/definitions"
     xmlns:ns="http://delegosoftware.com/ns"
     xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
     <ns:AuthorizationRequest xmlns:ns="http://carina.delego.ca:8080">
       <def:AuthorizationRequestProcess>
         <def:Authorize encrypt="false" merchant="DEMOMERCHANT">
           <def:CCAUT>
             <def:Ccins>Visa</def:Ccins>

             <def:Datbi>20141231</def:Datbi>

             <def:Ccnum>B598A5ED6C7024D3-1111</def:Ccnum>

             <def:Ccname>JOE CONSUMER</def:Ccname>

             <def:Autwv>150.12</def:Autwv>

             <def:Ccwae>USD</def:Ccwae>

             <def:Merch>DEMOMERCHANT</def:Merch>

             <def:Cvval>111</def:Cvval>

             <def:Stras>6415 Hwy 70</def:Stras>

             <def:Pstlz>10000</def:Pstlz>
           </def:CCAUT>
         </def:Authorize>
       </def:AuthorizationRequestProcess>
     </ns:AuthorizationRequest>
   </soapenv:Body>
</soapenv:Envelope>
+---------------------------------------------------------------

How can I make SOAPLITE suppress the:

xmlns:ns="http://carina.delego.ca:8080

or at least the :ns

from the

<ns:AuthorizationRequest    line, so it better matches the SOAPUI example which
I know works?


Cheers,

Grant

#6613 From: "Martin Busik" <martin.busik@...>
Date: Thu Mar 29, 2012 9:29 pm
Subject: AW: Would REALLY appreciate help - new to SOAPLite
mbusik70
Send Email Send Email
 
Hi Grant,

> SOAP::Lite ->uri('http://carina.delego.ca:8080')

this causes the namespace attribute on your WS-Operation-Element (eg the
first argument to proxy->call(...))

use ->uri("http://delegosoftware.com/ns") instead, then you should get the
expected result.

Cheers,
martin

> -----Ursprüngliche Nachricht-----
> Von: soaplite@yahoogroups.com [mailto:soaplite@yahoogroups.com] Im Auftrag
> von grantcblair
> Gesendet: Donnerstag, 29. März 2012 21:59
> An: soaplite@yahoogroups.com
> Betreff: [soaplite] Would REALLY appreciate help - new to SOAPLite
>
> Hi Folks,
>
> I'm relatively new to SOAPLite, as I inherited an application which relies
on it for web
> services (from a client perspective). I'm trying to generate a SOAP call
like this
> (tested in SOAPUI):
>
> <soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>  xmlns:ns="http://delegosoftware.com/ns"
>  xmlns:def="http://delegosoftware.com/definitions">
>    <soapenv:Header/>
>    <soapenv:Body>
>       <ns:AuthorizationRequest>
>          <def:AuthorizationRequestProcess>
>             <def:Authorize encrypt="false" merchant="DEMOMERCHANT">
>                <def:CCAUT>
>                   <def:Ccins>Visa</def:Ccins>
>                   <def:Ccnum>B598A5ED6C7024D3-1111</def:Ccnum>
>                   <def:Datbi>20140930</def:Datbi>
>                   <def:Ccname>JOE CONSUMER</def:Ccname>
> 		  <def:Autwv>154.18</def:Autwv>
>                   <def:Ccwae>USD</def:Ccwae>
>                   <def:Merch>DEMOMERCHANT</def:Merch>
> 	 <def:Cvval>111</def:Cvval>
>                </def:CCAUT>
>             </def:Authorize>
>          </def:AuthorizationRequestProcess>
>       </ns:AuthorizationRequest>
>    </soapenv:Body>
> </soapenv:Envelope>
> +--------------------------------
> Nothing too fancy here. Basic call to AuthorizationRequest with a bunch of
> parameters.
>
>
> My perl (SOAPLite) to do the equivalent is:
>
> use SOAP::Lite +trace;
>
> my $soap = SOAP::Lite ->uri('http://carina.delego.ca:8080')
>  ->proxy( 'http://carina.delego.ca:8080/DelegoWS/services/DelegoWS' )
;
>
>
$soap->service('http://carina.delego.ca:8080/DelegoWS/services/DelegoWS?wsdl
' )
> ;
> $soap->readable(1) ;
>
> my $serializer = $soap->serializer();
> $serializer->register( 'http://delegosoftware.com/ns', 'ns' );
>
>
> $serializer->namespaces({
> "http://schemas.xmlsoap.org/soap/envelope/"=>"soapenv",
> "http://delegosoftware.com/ns"=>"ns",
> "http://delegosoftware.com/definitions"=>"def"});
>
>
> my $cardtype = 'Visa' ;
> my $expdate = '20141231' ;
> my $cardnum = 'B598A5ED6C7024D3-1111' ;
> my $nameoncard = 'JOE CONSUMER' ;
> my $authamount = 150.12 ;
> my $currency = 'USD' ;
> my $merchid = 'DEMOMERCHANT' ;
> my $cvv = 111 ;
> my $street = '6415 Hwy 70' ;
> my $zip = 10000 ;
>
>
> my $som = $soap->call('ns:AuthorizationRequest',
>  SOAP::Data->name('def:AuthorizationRequestProcess'
>  => \SOAP::Data->name('def:Authorize' =>
>  \SOAP::Data->name('def:CCAUT' =>
>  \SOAP::Data->value(
> 	 SOAP::Data->name("def:Ccins" => $cardtype)->type(''),
> 	 SOAP::Data->name("def:Datbi" => $expdate)->type(''),
> 	 SOAP::Data->name("def:Ccnum" => $cardnum)->type(''),
> 	 SOAP::Data->name("def:Ccname" => $nameoncard)->type(''),
> 	 SOAP::Data->name("def:Autwv" => $authamount)->type('')-
> >type(''),
> 	 SOAP::Data->name("def:Ccwae" => $currency)->type(''),
> 	 SOAP::Data->name("def:Merch" => $merchid)->type(''),
> 	 SOAP::Data->name("def:Cvval" => $cvv)->type(''),
> 	 SOAP::Data->name("def:Stras" => $street)->type(''),
> 	 SOAP::Data->name("def:Pstlz" => $zip)->type('')
> 	 )
>  ))->attr({encrypt => false,merchant => $merchid})
>  )
> ) ;
>
> +-----------------------------------------------------------
> Again, nothing particularly involved. But the issue comes with the XML
this
> generates:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <soapenv:Envelope
>     soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>     xmlns:def="http://delegosoftware.com/definitions"
>     xmlns:ns="http://delegosoftware.com/ns"
>     xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>   <soapenv:Body>
>     <ns:AuthorizationRequest xmlns:ns="http://carina.delego.ca:8080">
>       <def:AuthorizationRequestProcess>
>         <def:Authorize encrypt="false" merchant="DEMOMERCHANT">
>           <def:CCAUT>
>             <def:Ccins>Visa</def:Ccins>
>
>             <def:Datbi>20141231</def:Datbi>
>
>             <def:Ccnum>B598A5ED6C7024D3-1111</def:Ccnum>
>
>             <def:Ccname>JOE CONSUMER</def:Ccname>
>
>             <def:Autwv>150.12</def:Autwv>
>
>             <def:Ccwae>USD</def:Ccwae>
>
>             <def:Merch>DEMOMERCHANT</def:Merch>
>
>             <def:Cvval>111</def:Cvval>
>
>             <def:Stras>6415 Hwy 70</def:Stras>
>
>             <def:Pstlz>10000</def:Pstlz>
>           </def:CCAUT>
>         </def:Authorize>
>       </def:AuthorizationRequestProcess>
>     </ns:AuthorizationRequest>
>   </soapenv:Body>
> </soapenv:Envelope>
> +---------------------------------------------------------------
>
> How can I make SOAPLITE suppress the:
>
> xmlns:ns="http://carina.delego.ca:8080
>
> or at least the :ns
>
> from the
>
> <ns:AuthorizationRequest    line, so it better matches the SOAPUI example
which I
> know works?
>
>
> Cheers,
>
> Grant
>
>
>
>
>
> ------------------------------------
>
> Yahoo! Groups Links
>
>
>

#6614 From: "bugs5382" <shane.froebel@...>
Date: Fri Apr 13, 2012 5:10 pm
Subject: Envelope Namespace Problem
bugs5382
Send Email Send Email
 
Above is the code I have and below is the request and the response. I
been looking all over this mailing list and the web for this answer, but
could not find it.

I know the error is:

Possible SOAP version mismatch: Envelope namespace
http://schemas.xmlsoap.org/wsdl/soap/ was unexpected. Expecting
http://schemas.xmlsoap.org/soap/envelope/.

I was just wondering how to fix it with my current structure of the code
I have below.

Thanks,
Shane



#!perl -w

use SOAP::Lite +trace => 'debug';

my $lmi_Soap = SOAP::Lite->new();

my $lmi_WSDL =

$lmi_Soap->service('https://secure.logmeinrescue.com/api/api.asmx?wsdl')\
;

$lmi_Soap->soapversion('1.2');

my $lmi_requestAuthCode =
    $lmi_WSDL->requestAuthCode( 'xxx', "xxx" );




SOAP::Transport::HTTP::Client::send_receive: POST
https://secure.logmeinrescue.c
om/api/api.asmx HTTP/1.1
Accept: text/xml
Accept: multipart/*
Accept: application/soap
Content-Length: 837
Content-Type: text/xml; charset=utf-8
SOAPAction:
"https://secure.logmeinrescue.com/API/API.asmx/requestAuthCode"

<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:tm="http://microsoft.
com/wsdl/mime/textMatching/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap1
2/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
soap:encodingStyle="http:
//schemas.xmlsoap.org/soap/encoding/"
xmlns:soap="http://schemas.xmlsoap.org/wsd
l/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.x
mlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:so
apenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:http="http://schemas.xml
soap.org/wsdl/http/"
xmlns:tns="https://secure.logmeinrescue.com/API/API.asmx"><
soap:Body><tns:requestAuthCode><sEmail
xsi:type="s:string">XXXXX</sEmail><sPassword
xsi:type="s:string">XXXXX</sPassword></tns:request
AuthCode></soap:Body></soap:Envelope>


SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 500 Internal
Server Error
Cache-Control: private
Date: Fri, 13 Apr 2012 15:15:13 GMT
Server: Microsoft-IIS/7.5
Content-Length: 835
Content-Type: text/xml; charset=utf-8
Client-Date: Fri, 13 Apr 2012 15:15:11 GMT
Client-Peer: 69.25.20.195:443
Client-Response-Num: 1
Client-SSL-Cert-Issuer: /C=US/O=Thawte, Inc./CN=Thawte SSL CA
Client-SSL-Cert-Subject: /C=US/ST=Massachusetts/L=Woburn/O=LogMeIn,
Inc./OU=Secu
re Application Development/CN=secure.logmeinrescue.com
Client-SSL-Cipher: AES128-SHA
Client-SSL-Socket-Class: IO::Socket::SSL
X-Powered-By: ASP.NET

<?xml version="1.0" encoding="utf-8"?><soap:Envelope
xmlns:soap="http://schemas.
xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Header><soap12:Upgrad\
e xmln
s:soap12="http://www.w3.org/2003/05/soap-envelope"><soap12:SupportedEnve\
lope qna
me="soap:Envelope"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" /><soa
p12:SupportedEnvelope qname="soap12:Envelope"
xmlns:soap12="http://www.w3.org/20
03/05/soap-envelope"
/></soap12:Upgrade></soap:Header><soap:Body><soap:Fault><fa
ultcode>soap:VersionMismatch</faultcode><faultstring>Possible SOAP
version misma
tch: Envelope namespace http://schemas.xmlsoap.org/wsdl/soap/ was
unexpected. Ex
pecting http://schemas.xmlsoap.org/soap/envelope/.</faultstring><detail
/></soap
:Fault></soap:Body></soap:Envelope>

Press any key to continue . . .

#6615 From: Brian Menges <mengesb@...>
Date: Fri May 4, 2012 3:16 pm
Subject: Crash course - SOAP::Lite / WSDL / Verisign DNS
flymavrick
Send Email Send Email
 
I'm trying to get SOAP::Lite to work with our Verisign Managed DNS
product, but I'm having some difficulties in defining the soap objects
and wanted to know if I could get a small crash course on building and
reading the SOAP messages and replies.

The WSDL that I am using is here:
https://api.verisigndns.com/dnsa-ws/V2.0/dnsaapi?wsdl

The API is naturally:
https://api.verisigndns.com

At the top I'm defining:
use SOAP::Lite +autodispatch =>
        uri     => 'https://api.verisigndns.com/dnsa-ws/V2.0/dnsaapi?wsdl',
        proxy   => 'https://api.verisigndns.com';

and my attempted call for 'getCustomerList' is:
my $soap = SOAP::Lite->call(
        SOAP::Header->name('authInfo'),
        SOAP::Header->name('userToken'),
        SOAP::Header->name('userName','<username>'),
        SOAP::Header->name('password','<password>'),
        SOAP::Data->name('getCustomerList')
        );

doing 'print $soap;' prints the number 1; not sure if this is success
or not... because I don't see the related output per a python script
that I had. Also 'print $soap->result;' prints nothing...

Is there a way that I can display the soap envelope before I fire it
off to the API? and then decode/print the response? I'm trying to
search for this but I'm at a loss.

Naturally they have a very expansive API, so I have to write lots of
containers to utilize this, but if I can define the functions to build
my SOAPs then great, but I just can't see the data structures via my
normal methods. Help?

~Brian

#6616 From: "Martin Busik" <martin.busik@...>
Date: Fri May 4, 2012 7:25 pm
Subject: AW: Crash course - SOAP::Lite / WSDL / Verisign DNS
mbusik70
Send Email Send Email
 
Hi Brian,

> The WSDL that I am using is here:
> https://api.verisigndns.com/dnsa-ws/V2.0/dnsaapi?wsdl
>
> The API is naturally:
> https://api.verisigndns.com
>
> At the top I'm defining:
> use SOAP::Lite +autodispatch =>
>        uri     => 'https://api.verisigndns.com/dnsa-ws/V2.0/dnsaapi?wsdl',
>        proxy   => 'https://api.verisigndns.com';
>
> and my attempted call for 'getCustomerList' is:
> my $soap = SOAP::Lite->call(
>        SOAP::Header->name('authInfo'),
>        SOAP::Header->name('userToken'),
>        SOAP::Header->name('userName','<username>'),
>        SOAP::Header->name('password','<password>'),
>        SOAP::Data->name('getCustomerList')
>        );
>

The wsdl you refer to does not contain a specification of the contents of a
"authInfo" element.
I suppose, the expected header-structure is something like:

<authInfo>
   <userToken>
     <userName>name</userName>
    <password>pWpW</password>
  </userToken>
</authInfo

i.e. authInfo is of complex type.
You might find an idea how to create such header data in:

http://www.wlp-systems.de/soap-lite-and-ws-security.html

> Is there a way that I can display the soap envelope before I fire it off
to the
> API? and then decode/print the response? I'm trying to search for this but
I'm
> at a loss.

There are some way, the simplest one:
use SOAP::Lite (+trace => [qw(transport debug parameters)]);

HTH,
Martin

#6617 From: "atpetkov" <atpetkov@...>
Date: Mon Jun 4, 2012 8:58 am
Subject: Soap Server handling multiple requests in the same envelope
atpetkov
Send Email Send Email
 
Hello,

I am trying to design a SOAP server which should be able to process multiple requests in the same message.

For example, the message looks like this:

<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <SOAP-ENV:Body>
    <m:createRecord xmlns:m="ns://TestSoapServer/SoapServer">
      <m:param_1>value_1</m:param_1>
      <m:param_2>value_2</m:param_2>
    </m:createRecord>
    <m:createRecord xmlns:m="ns://TestSoapServer/SoapServer">
      <m:param_1>value_3</m:param_1>
      <m:param_2>value_4</m:param_2>
    </m:createRecord>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


In the message above, there are two createRecord requests and I would like my SOAP server to be able to execute them both. So far, my  implementation is able to execute only the first one. I have tried using the ForkOnAccept/ForkAfterProcessing modules from the SOAP::Transport::HTTP::Daemon package but to no avail. Here is the code that I wrote:

#!/usr/bin/perl

use strict;
use warnings;

#use SOAP::Transport::HTTP;

eval { require SOAP::Transport::HTTP::Daemon::ForkOnAccept } or die <<EOW;
$@
  WARNING: module for Daemon::ForkOnAccept is not installed by default.
  It's in examples/SOAP/Transport/HTTP/ directory
  you can install it yourself.
  Feel free to modify it. It's just an example.
EOW

$SIG{PIPE} = $SIG{INT} = 'IGNORE'; # don't want to die on 'Broken pipe' or Ctrl-C
$SIG{CHLD} = 'IGNORE';

my $Server = SOAP::Transport::HTTP::Daemon::ForkOnAccept
        -> new (LocalHost => <hostname>,
                LocalPort => <port_number>,
                Listen => 10,
                Reuse => 1,
                Timeout => 10)
        -> serializer(MySerializer->new)
        -> dispatch_to('SoapServer');

$Server->handle;

BEGIN {
        package SoapServer;

        use vars qw(@ISA);
        @ISA = qw(SOAP::Server::Parameters);
        use SOAP::Lite;

        sub createRecord
        {
                print "createRecord request received...\n";

                shift;

                my $envelope = pop;
                my $param_1;
                my $param_2;

                if ($envelope->match("//createRecord/param_1")) {
                        $param_1 = $envelope->dataof("//createRecord/param_1")->value;
                }
                if ($envelope->match("//createRecord/param_2")) {
                        $param_2 = $envelope->dataof("//createRecord/param_2")->value;
                }

                print "param_1=$param_1, param_2=$param_2\n";

                my $ResponseCode = 0;
                my $ResponseMessage = "OK";

                SOAP::Data->name("m:Response" => SOAP::Data->value(
                        SOAP::Data->name('m:responseCode' => $ResponseCode)->type("positiveInteger"),
                        SOAP::Data->name('m:responseCodeDescription' => $ResponseMessage)->type("string")));

        }
}

BEGIN {
    package MySerializer;
    @MySerializer::ISA = 'SOAP::Serializer';
    sub envelope {
        if( $_[1] =~ /^(?:method|response)$/ )
        {
            $_[2] = SOAP::Data->name("Response")->prefix('m')->uri('ns://TestSoapServer/SoapServer');
        }
        shift->SUPER::envelope(@_);
    }
}


I am relatively new to SOAP::Lite, so I will appreciate any help that I can get.

Thanks in advance.

#6618 From: "noorarshad" <arshad@...>
Date: Wed Jun 6, 2012 4:41 am
Subject: Failing to connect with webservice when using SSL with ClientAuth
noorarshad
Send Email Send Email
 
Hi,

I'm new to SOAPLite and am struggling to solve this problem; hopefully, someone
more knowledgeable can help me get past this.

Using this small program, I'm trying to establish an SSL Client-Authenticated
session to request a web-service:

--------------------
#!perl -w

   use SOAP::Lite +trace;

   $ENV{HTTPS_CA_FILE}   = "certs/my-ca.pem";
   $ENV{HTTPS_CERT_FILE} = "certs/client-cert.pem";
   $ENV{HTTPS_KEY_FILE}  = "certs/client-pvkey.pem";
   $ENV{HTTPS_CERT_PASS} = "ejbca";
   $ENV{HTTPS_DEBUG} = 1;

   print SOAP::Lite
     -> uri('http://ws.protocol.core.ejbca.org')
     -> proxy('https://atlas.mysite.com:8443/ejbca/ejbcaws/ejbcaws')
     -> getAvailableCAs()
     -> result;
--------------------

It consistently fails.  The error in the trace is summarized below:

***************
Client-Warning: Internal response

Can't connect to atlas.mysite.com:8443

LWP::Protocol::https::Socket: SSL connect attempt failed because of handshake
problems error:14094412:SSL routines:SSL3_READ_BYTES:sslv3 alert bad certificate
at /home/anoor/perl/lib/perl5/LWP/Protocol/http.pm line 51.
***************

More data-points:

- I'm using all current versions of the required modules;

- There is no proxy involved;

- openssl s_client works perfectly with the certs/keys/CA files
   shown in the perl program; I am able to connect and request a
   page from the site;

- The net-ssl-test script from the Crypt-SSLeay-0.58 module is also
   able to connect with the above-mentioned certs/key;

- The web-service is definitely working because I am able to verify
   that the service returns a response when tested with SOAPUI;

- The client, server and CA certificates are all using the
   RSAwithSHA256 algorithm for the CA's signature (not sure if this
   is relevant; from what I understand SOAPLite ultimately relies on
   the OpenSSL library for the crypto work, so it ought to work given
   that s_client does.

What am I missing here?  Thanks, in advance, for your suggestions.

Arshad

#6619 From: "noorarshad" <arshad@...>
Date: Fri Jun 8, 2012 2:14 am
Subject: Re: Failing to connect with webservice when using SSL with ClientAuth
noorarshad
Send Email Send Email
 
Thanks to Mark Allen on the LWP mailing list, the answer can be found here:

http://www.mail-archive.com/libwww@perl.org/msg06964.html

(In case that link doesn't work for any reason, the brief answer is: I had to
include "use Net::SSL;" in my Perl program to make it work.  Apparently, the
newer LWP module uses the IO::Socket::SSL module instead of the older Net::SSL,
which ignores the environment variables in the program pointing to my digital
certificates.  By forcing the program to use Net::SSL, it picks up the variables
and works fine).

Arshad

--- In soaplite@yahoogroups.com, "noorarshad" <arshad@...> wrote:
>
> Hi,
>
> I'm new to SOAPLite and am struggling to solve this problem; hopefully,
someone more knowledgeable can help me get past this.
>
> Using this small program, I'm trying to establish an SSL Client-Authenticated
session to request a web-service:
>
> --------------------
> #!perl -w
>
>   use SOAP::Lite +trace;
>
>   $ENV{HTTPS_CA_FILE}   = "certs/my-ca.pem";
>   $ENV{HTTPS_CERT_FILE} = "certs/client-cert.pem";
>   $ENV{HTTPS_KEY_FILE}  = "certs/client-pvkey.pem";
>   $ENV{HTTPS_CERT_PASS} = "ejbca";
>   $ENV{HTTPS_DEBUG} = 1;
>
>   print SOAP::Lite
>     -> uri('http://ws.protocol.core.ejbca.org')
>     -> proxy('https://atlas.mysite.com:8443/ejbca/ejbcaws/ejbcaws')
>     -> getAvailableCAs()
>     -> result;
> --------------------
>
> It consistently fails.  The error in the trace is summarized below:
>
> ***************
> Client-Warning: Internal response
>
> Can't connect to atlas.mysite.com:8443
>
> LWP::Protocol::https::Socket: SSL connect attempt failed because of handshake
problems error:14094412:SSL routines:SSL3_READ_BYTES:sslv3 alert bad certificate
at /home/anoor/perl/lib/perl5/LWP/Protocol/http.pm line 51.
> ***************
>
> More data-points:
>
> - I'm using all current versions of the required modules;
>
> - There is no proxy involved;
>
> - openssl s_client works perfectly with the certs/keys/CA files
>   shown in the perl program; I am able to connect and request a
>   page from the site;
>
> - The net-ssl-test script from the Crypt-SSLeay-0.58 module is also
>   able to connect with the above-mentioned certs/key;
>
> - The web-service is definitely working because I am able to verify
>   that the service returns a response when tested with SOAPUI;
>
> - The client, server and CA certificates are all using the
>   RSAwithSHA256 algorithm for the CA's signature (not sure if this
>   is relevant; from what I understand SOAPLite ultimately relies on
>   the OpenSSL library for the crypto work, so it ought to work given
>   that s_client does.
>
> What am I missing here?  Thanks, in advance, for your suggestions.
>
> Arshad
>

#6620 From: Miguel Barco <miguelelelele@...>
Date: Fri Jun 15, 2012 9:25 pm
Subject: SOAP::LITE client timeout makes ALL my Catalyst app to wait
miguelelelele
Send Email Send Email
 
Hi!, in my Catalyst app, I have a very important connection to a remote server using SOAP with WSDL.
Everything works fine, but when the remote server goes down due to any reason, ALL my app waits until the timeout expires. EVERYTHING, ALL the controllers and processes, ALL the clients!!
If I set a 15 secs timeout, everything wait for 15 secs!!
Any page from any user or connection can't be displayed during the timeout wait.

I use Fast CGI and Ngnix for the Catalyst app. If I use multiple processes when one waits, others take care of the connections, but if all try to access the SOAP... they all end waiting for an answer until their timeouts.

I read somewhere that SOAP::LITE is "single threaded".

Is it true??? Does it means that ALL my app, with ALL the visitors can only use one SOAP connection????It is hard to believe. Please, can someone point me in the rigth direction?


This is my code for the call:
sub check_result { my ($self, $code, $IP, $PORT) = @_; my $soap = SOAP::Lite->new( proxy => "http://$IP:$PORT/REMOTE_SOAP +"); $soap->autotype(0); $soap->default_ns('http://REMOTENAMESPACE/namespace/default'); $soap->transport->timeout(15); $soap-> on_fault(sub { my($soap, $res) = @_; eval { die ref $res ? $res->faultstring : $soap->transport->st +atus }; return ref $res ? $res : new SOAP::SOM; }); my $som = $soap->call("remote_function", SOAP::Data->name( 'Entry1' )->value( $code ), ); return $som->paramsout; }

Thank you in advance.
Miguel

#6621 From: "James" <finnegan@...>
Date: Thu Jun 21, 2012 11:43 pm
Subject: Please Help, Need to add several namespaces to Envelope using Perl
finnegan...
Send Email Send Email
 
I've taken over some code for my company and need some help.  We have a soap
lite script which is called from another module.  The calling module contains
the following:

     $self->{path} = '/TktServices/services/TicketSoapHttpPort';
     $self->{method_name} = 'getTicketRequest';
     $self->{method_attr} = {
       "xmlns"=> 'http://xxxx.xxx.com/ticket/v1' }

This in turns calls the underlying module containing the soap calls.
There is an entry in the module that issues this:

my $data = SOAP::Data->name($self->{method_name})->attr($self->{method_attr});


And then he enters the data and parameters in this way:

   $self->{request} = $soap->serializer->envelope(method => $data, @params);

I need to add several namespaces to the envelope in order to get this to work. 
However am I using the correct command.  Is there a way to add it to the
serializer->envelope above.

$soap->serializer->namespaces({
      
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.x\
sd"=>"xmlns:m2",
       "http://xxxx.xxx.com/ticket/v1"=>"xmlns:q0",
       "http://xxx.xxx.com/commonheader/v3"=>"xmlns:q1",
       "http://xxxxxxx.xxxx.xxx.com/ticket"=>"xmlns:q2",
});

Cause when I run the script I don't see these namespaces in the envelope.

Also there is this entry in the header:

<soapenv:Header>

<m2:Security
xmlns:m2="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-sec\
ext-1.0.xsd">


Questions:

1) Can I add this namespace to the header?
2) Is there a difference between adding the namespace to the envelope versus the
header?
3) If I were to be successful on adding the namespaces do i need to add the attr
to this header name or does the namespace take care of it:

  
("m2:Security")->attr({'xmlns:m2'=>'http://docs.oasis-open.org/wss/2004/01/oasis\
-200401-wss-wssecurity-secext-1.0.xsd'})


Please help.

#6622 From: "James" <finnegan@...>
Date: Fri Jun 22, 2012 8:20 pm
Subject: Question on Capturing '500 Internal Server Error'
finnegan...
Send Email Send Email
 
I am running several perl scripts using SOAP::Lite and I need to capture if we
receive an error, specifically a '500 Internal Server Error'.  Is there a
variable within the soap structure where I can check for this error?  I capture
the output in my

       $self->{content} = $soap->call($data => @params);

call but that doesn't include the SOAP::Transport::HTTP::Client::send_receive:
error.

Messages 6592 - 6622 of 6629   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright © 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help