I tried that just now, my current code is:
#!/usr/bin/perl --
use strict;
use warnings;
use SOAP::Lite +trace => 'debug', readable => 1;
my $soap = SOAP::Lite-> service('http://10.230.0.22:7782/services/CBSI
+nterfaceAccountMgrService?wsdl');
$soap->ns("http://www.huawei.com/bme/cbsinterface/common" => 'ns1');
$soap->ns("http://www.huawei.com/bme/cbsinterface/cbs/accountmgr" => '
+ns2');
$soap->ns("http://www.huawei.com/bme/cbsinterface/cbs/accountmgrmsg" =
+> 'ns3');
$soap->envprefix('SOAP-ENV');
my @data = SOAP::Data->name("RequestHeader" =>
\SOAP::Data->value(
SOAP::Data->name("CommandId" => 'Payment')->prefix('ns1'),
SOAP::Data->name("Version" => '1')->prefix('ns1'),
SOAP::Data->name("TransactionId" => '')->prefix('ns1'),
SOAP::Data->name("SequenceId" => '1')->prefix('ns1'),
SOAP::Data->name("RequestType" => 'Event')->prefix('ns1'),
SOAP::Data->name("SerialNo" => 'USSD_00000001')->prefix('ns1'),
)
);
push (@data,
SOAP::Data->name("PaymentRequestMsg" =>
\SOAP::Data->value(
SOAP::Data->name("SubscriberNo" => '123')->prefix('ns2'),
SOAP::Data->name("PaymentAmt" => 100)->prefix('ns2'),
SOAP::Data->name("PaymentMode" => 1001)->prefix('ns2'),
)
));
my $result = $soap->Payment(@data)
However none of the settings are reflected in the output
SOAP::Transport::HTTP::Client::send_receive: POST http://10.230.0.22:7
+782//services/CBSInterfaceAccountMgrService HTTP/1.1
Accept: text/xml
Accept: multipart/*
Accept: application/soap
Content-Length: 1075
Content-Type: text/xml; charset=utf-8
SOAPAction: "Payment"
<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:enco
+dingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV=
+"http://schemas.xmlsoap.org/soap/envelope/" xmlns:account="http://www
+.huawei.com/bme/cbsinterface/cbs/accountmgr" xmlns:accountmgrmsg="htt
+p://www.huawei.com/bme/cbsinterface/cbs/accountmgrmsg" xmlns:common="
+http://www.huawei.com/bme/cbsinterface/common" xmlns:http="http://sch
+emas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/w
+sdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s
+oap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http:/
+/schemas.xmlsoap.org/soap/encoding/" xmlns:wsaw="http://www.w3.org/20
+06/05/addressing/wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.
+org/2001/XMLSchema-instance"><SOAP-ENV:Body><account:Payment><Request
+Header xsi:nil="true" xsi:type="common:RequestHeader" /><PaymentReque
+st xsi:nil="true" xsi:type="account:PaymentRequest" /></account:Payme
+nt></SOAP-ENV:Body></SOAP-ENV:Envelope>
SOAP::Transport::HTTP::Client::send_receive: HTTP/1.1 500 Internal Ser
+ver Error
Connection: close
Date: Tue, 20 Oct 2015 06:46:42 GMT
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=utf-8
Client-Date: Tue, 20 Oct 2015 06:44:52 GMT
Client-Peer: 10.230.0.22:7782
Client-Response-Num: 1
Set-Cookie: JSESSIONID=9B4FC1D1F720D25705C2CC7FC46B9616.server1; Path=
+/
X-Powered-By: Servlet 2.4; JBoss-4.0.5.GA (build: CVSTag=Branch_4_0 da
+te=200610162339)/Tomcat-5.5
X-UA-Compatible: IE=EmulateIE7
<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv=
+"http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header /><soapen
+v:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstri
+ng>Data binding error</faultstring><detail /></soapenv:Fault></soapen
+v:Body></soapenv:Envelope>
|