Dart
Dart
Access SOAP Body XML
Demonstrates how to access the SOAP body in XML.
<?xml version="1.0" encoding="utf-8" ?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cfdi="http://www.sat.gob.mx/cfd/3">
<soapenv:Body>
<tfd:TimbreFiscalDigital version="1.0" />
</soapenv:Body>
</soapenv:Envelope>
Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
final xSoapEnvelope = CkXml();
try {
xSoapEnvelope.loadXmlFile('soapMessage.xml');
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// The root node is the SOAP envelope, and in this particular case has a Tag of "soapenv:Envelope"
print('SOAP envelope tag: ${xSoapEnvelope.tag}');
// The SOAP body (in this case) is a direct child of the SOAP envelope
// and has the tag "soapenv:Body"
final CkXml xSoapBody;
try {
xSoapBody = xSoapEnvelope.findChild('soapenv:Body');
} on ChilkatException {
print('No direct child having the tag "soapenv:Body" was found.');
return;
}
// The SOAP message body is the direct child of the SOAP envelope body:
final CkXml xMessageBody;
try {
xMessageBody = xSoapBody.findChild('TimbreFiscalDigital');
} on ChilkatException {
print('No direct child having the tag "TimbreFiscalDigital" was found.');
return;
}
// If desired, get the XML of just the SOAP message body:
final soapMessageXml = xSoapBody.getXml();
// --------------------------------------------------------------------------------
// Also see Chilkat's Online WSDL Code Generator
// to generate code and SOAP Request and Response XML for each operation in a WSDL.
// --------------------------------------------------------------------------------
}