I would like to either construct/send SOAP request using IBM BPM for the below SOAP UI request:
<soapenv:Envelope xmlns:soapenv="/"
xmlns:ns=";
xmlns:xsi=";
xmlns:xsd=";
xmlns:wsse=".0.xsd"
xmlns:wsu=".0.xsd">
<soapenv:Header>
<ns:SendStreamRequestTrackingID>ab80199e-b12b-4533-9f6a-57f064695a43</ns:SendStreamRequestTrackingID>
<wsse:Security mustUnderstand="true">
<wsse:UsernameToken>
<wsse:Username>XXX</wsse:Username>
<wsse:Password Type=".0">XXX</wsse:Password>
<wsse:Nonce EncodingType=".0#Base64Binary">NWQyMzVjNGNhYmIxMTQ1ZjEzZWVlYzcyZDkzZjcwODI=</wsse:Nonce>
<wsu:Created>2015-07-27T15:47:31.178534Z</wsu:Created>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<ns:SendStreamRequest>
<!--Optional:-->
<ns:Payload>
<!--Zero or more repetitions:-->
<Message ApplicationCode="XXX" ClientID="XXXXX" TrackingID="ab80199e-b12b-4533-9f6a-57f064695a43" SchemaName="XXX" SchemaType="Xml" EmailSubject="" FileName="">H4sIAAAAAAAAAJ1TXW+CMBR9N9l/MLxrC9NsI7XJFI1kS5YNt/cGb4QECilV9N+vLQOx8rQ37jnn
fpzby4h88/QEomJZyCWIOGH8AGONpAVfOO7UdcbnPOPVwkmkLH2E6rqexkwcijqtYBoXOYriBHJW
oa4U8rDrItd16Gg8JltgexD6UwURcBWEAQ2XS4K6qCG/IE7LFLhUSLD5CLbvwecrQX1YF0TXimRZ
7C+U8MrvmkdJWuZKPGTC/6+PB91L5bfFDdBAAZNsVajlnVu0wdd6n6VQxRs3BNlgXx2BOJlNGMd9
oK/SvXZqZpCrIssglspfJ7AlPaKhdpcS6KYQNRP7lB9aL6ad4eyEN7jQyJth7OKZO38yQo31OqLh
lhZ+N23H327uzwAMuGspy66ZO4CSCXkUMGRFq8JqXck01+lSHBtZD7sV/7DsCNTD3myCnyce3nmP
/vzFx9ikNaztEyxftoPmSa/HY+K7k6UEmXtW9NBvSX8BUyTKQ64DAAA=</Message>
</ns:Payload>
</ns:SendStreamRequest>
</soapenv:Body>
</soapenv:Envelope>
When I imported the WSDL url, it showed the operations and also created the input mappings but I am not sure as to how I need to send the encoded message element in IBM BPM.
I got a suggestion from one of my colleagues as to how this can be done using JS but not sure if this can be used in IBM BPM - need inputs pls..
async function sendSoapRequest() {
const url = "http://your-service-url"; // Replace with your actual service URL
const xmlData = `
<soapenv:Envelope xmlns:soapenv="/"
xmlns:ns=";
xmlns:xsi=";
xmlns:xsd=";
xmlns:wsse=".0.xsd"
xmlns:wsu=".0.xsd">
<soapenv:Header>
<ns:SendStreamRequestTrackingID>ab80199e-b12b-4533-9f6a-57f064695a43</ns:SendStreamRequestTrackingID>
<wsse:Security mustUnderstand="true">
<wsse:UsernameToken>
<wsse:Username>XXX</wsse:Username>
<wsse:Password Type=".0">XXX</wsse:Password>
<wsse:Nonce EncodingType=".0#Base64Binary">NWQyMzVjNGNhYmIxMTQ1ZjEzZWVlYzcyZDkzZjcwODI=</wsse:Nonce>
<wsu:Created>2015-07-27T15:47:31.178534Z</wsu:Created>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<ns:SendStreamRequest>
<ns:Payload>
<Message ApplicationCode="XXX" ClientID="XXX" TrackingID="ab80199e-b12b-4533-9f6a-57f064695a43" SchemaName="XXX" SchemaType="Xml" EmailSubject="" FileName="">
H4sIAAAAAAAAAJ1TXW+CMBR9N9l/MLxrC9NsI7XJFI1kS5YNt/cGb4QECilV9N+vLQOx8rQ37jnn
fpzby4h88/QEomJZyCWIOGH8AGONpAVfOO7UdcbnPOPVwkmkLH2E6rqexkwcijqtYBoXOYriBHJW
oa4U8rDrItd16Gg8JltgexD6UwURcBWEAQ2XS4K6qCG/IE7LFLhUSLD5CLbvwecrQX1YF0TXimRZ
7C+U8MrvmkdJWuZKPGTC/6+PB91L5bfFDdBAAZNsVajlnVu0wdd6n6VQxRs3BNlgXx2BOJlNGMd9
oK/SvXZqZpCrIssglspfJ7AlPaKhdpcS6KYQNRP7lB9aL6ad4eyEN7jQyJth7OKZO38yQo31OqLh
lhhZ+N23H327uzwAMuGspy66ZO4CSCXkUMGRFq8JqXck01+lSHBtZD7sV/7DsCNTD3myCnyce3nmP
/vzFx9ikNaztEyxftoPmSa/HY+K7k6UEmXtW9NBvSX8BUyTKQ64DAAA=
</Message>
</ns:Payload>
</ns:SendStreamRequest>
</soapenv:Body>
</soapenv:Envelope>
`;
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'text/xml',
'SOAPAction': '' // Add SOAPAction if required by the service
},
body: xmlData
});
if (response.ok) {
const responseText = await response.text();
console.log("Response received:", responseText);
} else {
console.error(`Failed to send SOAP request. Status code: ${response.status}`);
}
}
sendSoapRequest();