Mi script es el siguiente:
Using perl Syntax Highlighting
- #!/usr/bin/perl
- use SOAP::Lite +trace => 'all';
- sub SOAP::Transport::HTTP::Client::get_basic_credentials {
- return 'usuario' => 'password';
- }
- my $service
- = SOAP::Lite
- ->uri('http://ws.prueba.com/')
- ->proxy('http://120.92.221.114:8080/prueba/ws/Movimientos?wsdl');
- # calling the insert function
- my $method = SOAP::Data->name('Consultar')
- ->attr({xmlns => 'http://ws.prueba.com/'});
- # create a new incident with the following short_description and category
- my @params = ( SOAP::Data->name(cliente => '123') );
- push(@params, SOAP::Data->name(fechaDesde => '2016-01-01') );
- push(@params, SOAP::Data->name(fechaHasta => '2016-09-31') );
- push(@params, SOAP::Data->name(tipo => 'INICIAL') );
- my $result = $service->call($method => @params);
- # print any SOAP faults that get returned
- print_fault($result);
- # print the SOAP response that get return
- print_result($result);
- # convenient subroutine for printing all results
- sub print_result {
- my ($result) = @_;
- if ($result->body && $result->body->{'insertResponse'}) {
- my %keyHash = %{ $result->body->{'insertResponse'} };
- foreach my $k (keys %keyHash) {
- print "name=$k value=$keyHash{$k}\n";
- }
- }
- }
- # convenient subroutine for printing all SOAP faults
- sub print_fault {
- my ($result) = @_;
- if ($result->fault) {
- print "faultcode=" . $result->fault->{'faultcode'} . "\n";
- print "faultstring=" . $result->fault->{'faultstring'} . "\n";
- print "detail=" . $result->fault->{'detail'} . "\n";
- }
- }
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Lo anterior crea el siguiente mensaje:
Using xml Syntax Highlighting
- <soap:Envelope
- soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
- xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soap:Body>
- <Consultar xmlns="http://ws.prueba.com/">
- <cliente xsi:type="xsd:int">123</cliente>
- <fechaDesde xsi:type="xsd:date">2016-01-01</fechaDesde>
- <fechaHasta xsi:type="xsd:date">2016-09-31</fechaHasta>
- <tipo xsi:type="xsd:string">INICIAL</tipoFecha>
- </Consultar>
- </soap:Body>
- </soap:Envelope>
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Pero necesito que se genere el siguiente mensaje:
Using xml Syntax Highlighting
- <soap:Envelope
- soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
- xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:ws="http://ws.prueba.com/">
- <soap:Body>
- <ws:Consultar>
- <cliente xsi:type="xsd:int">123</cliente>
- <fechaDesde xsi:type="xsd:date">2016-01-01</fechaDesde>
- <fechaHasta xsi:type="xsd:date">2016-09-31</fechaHasta>
- <tipo xsi:type="xsd:string">INICIAL</tipoFecha>
- </ws:Consultar>
- </soap:Body>
- </soap:Envelope>
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
¿Cómo puedo generar este último mensaje?