[Webinar] Streamline your web hosting managementRegister Today


SOAP Protocol





Simple Object Access Protocol (SOAP) is a protocol specification for exchanging structured information in the implementation of web services. It uses the XML Information Set for its message format and uses other protocols, notably Hypertext Transfer Protocol (HTTP) and the Simple Mail Transfer Protocol (SMTP) for message transmission.

Share tech news, updates, or what's on your mind.

Sign up to Post

with the help of experts on this exchange i managed to cobble together this code
it does work almost, but it produces a text file and not an xml document file, or i am not smart enough to load the xml document.
So any help would be appreciated

Sub plireader()
'On Error Resume Next

'CEMgetattendance -  CLETracker
'DEV_getattendance -152413

Dim strrequest As String
Dim objhttp As Object
    strXmlToSend = "<company>CLETracker</company>"
    '    strXmlToSend = "<company>CLETracker</company>"

webserviceurl = "https://www.pli.edu/public/CEM/Service.asmx"

 Set objhttp = CreateObject("Msxml2.XMLHTTP.6.0")
MsgBox "send now"
  strrequest = "<?xml version=""1.0"" encoding=""utf-8""?>" _
               & "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">" _
               & "<soap:Body>" _
               & "<CEMgetAttendence xmlns=""http://www.pli.edu/public/CEM/"">" _
               & "<company>CLETracker</company>" _
               & "</CEMgetAttendence>" _
               & "</soap:Body>" _
               & "</soap:Envelope>"
Dim resp As String

MsgBox strrequest
objhttp.Open "POST", webserviceurl, False
objhttp.setRequestHeader "SOAPAction", "http://www.pli.edu/public/CEM/Service.asmx?op=CEMgetAttendence"

objhttp.setRequestHeader "Content-Type", "text/xml"
objhttp.send (strrequest)
  ' resp = http.HttpGetText(url)
The 14th Annual Expert Award Winners
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

I am trying to get XML validation working for a SOAP server but I've run into a couple of issues.

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="http://p2p.thalesgroup.com/wsdl/status/xsd"
  <xsd:element name="Alive">
          - Alive is sent periodically to verify the connection status

Open in new window

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:soap-enc="http://www.w3.org/2003/05/soap-encoding" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

Open in new window

First Issue:
SOAP elements are not being recognized.
Validator Output: Cannot Find The Declaration Of Element 'soap:Envelope'., Line '1', Column '225'.
I found a Stack Overflow thread describing the same issue but the described solutions do not work for me.

Second Issue:
Even if I remove the SOAP elements, I still have a namespace issue.
Validator Output: Cannot Find The Declaration Of Element 'Event'., Line '1', Column '8'.

I have a webservice that I,m trying to apply a custome security, when I try to call the service it display the following error:


At least one security token in the message could not be validated.

To add the security I modify the service config file:

[b][b]<services> <service name = "WcfService1.Service1"> <endpoint address="" binding="customBinding" bindingConfiguration="customBindingOasis" contract="WcfService1.IService1"> <headers> <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken> <wsse:Username>USERNAME</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">PASSWORD</wsse:Password> </wsse:UsernameToken> </wsse:Security> </headers> </endpoint> </service> </services> <bindings> <customBinding> <binding name ="customBindingOasis"> <security authenticationMode="UserNameOverTransport" includeTimestamp="false" messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10"> <secureConversationBootstrap /> </security> <textMessageEncoding maxReadPoolSize="64" maxWritePoolSize="16" messageVersion="Soap12" writeEncoding="utf-8"> <readerQuotas maxDepth="32"
any one can help me for this php code

I have this WCF service that works fine using soap1. I'm trying to change it to run in soap1.2 but I have not been able.

I have try changin diferents things in the webconfig.

First I change the basicHttpBinding for wsHttpBinding.  I also change the protocol , remove the soap1.1 and add the soap 1.2

How I can made that my WCF web service run in soap1.2?
I have a username and password for the real estates agent theysaid I have to call the web service and get a response but
How can I integrate to my theme in wordpress if u want to help me will be good or I can hire you too but I like to learn anny I wait for your answer guys thank you
Hi my soap client is not sending any xml request to the soap server. I tried sending data with wsdl link.

$client = new nusoap_client('http://url.com/wsdlfilelink', 'wsdl');


$merchantIDStruct = new stdClass();
$merchantIDStruct->name = 'merchant_id';
$merchantIDStruct->value = '1234567';

$detailArray = new stdClass();
$detailArray->item = $merchantIDStruct;

$parameters = new stdClass();
$parameters->details = $detailArray;
$parameters->billerRef = "RB_C1_RECO";
$parameters->payinstrRef = "RB_C1_RECO";

//$param_merchant_id = array( "merchant_id" => "5235437" );
//$parameters = array("Request" => $param_Request, "merchant_id" => $param_merchant_id);
$query = 'php';
 /* create the proxy object */
$proxyclientwsdl = $client->getProxy();
$result = $proxyclientwsdl->RECOstep1($parameters);


<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:typens="urn:PaymentServer" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" name="RECOstep1" targetNamespace="urn:PaymentServer">
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:p="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="urn:PaymentServer">
<xsd:element name="Request">
<xsd:element name="billerRef" minOccurs="1" maxOccurs="1">
I had this question after viewing New to SOAP and need some direction.
I am part of a development for a SOAP web services client on WCF/.NET. After a session of sending request, team for server side left feedback "extend someAction from schema i am mentioning below", and mentioned an URL. In this context, what does it mean to extend from schema?
Working with a web service and a little out of my depth.  The example that I have been given asks for my cert with my private key as an option in stream_context_set_option.  Could this expose the private key unnecessarily / does this actually submit to the service?
[Webinar] Kill tickets & tabs using PowerShell
LVL 11
[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

I need a step by step instruction how to build a soap web service using PowerBuilder 12.6 or 2017 in Classic.
I'm trying to use a webservice (.net if it matters).
Using the code directly below I get a response.
$options = array(
	'username' => "myusername",
	'password' => "mypassword"


$url = "https://service.mydomain.com/soap12";

$client = new SoapClient($url);
$fcs = $client->__getFunctions();

Open in new window

I get a return so thinking something is working (shortened below):
array:145 [▼
  0 => "UNKNOWN ActivityChange(UNKNOWN $par)"
  1 => "UNKNOWN Admin(UNKNOWN $par)"
  2 => "UNKNOWN DirectIntefaceTest3(UNKNOWN $par)"
  3 => "UNKNOWN DirectIntefaceTest(UNKNOWN $par)"
  4 => "UNKNOWN LogEntryGet(UNKNOWN $par)"
  5 => "UNKNOWN LogEntryDetails(UNKNOWN $par)"
  6 => "UNKNOWN SystemUploads(UNKNOWN $par)"
  7 => "UNKNOWN TestUpload(UNKNOWN $par)"
  8 => "UNKNOWN AppointmentGet(UNKNOWN $par)"

Open in new window

I'm trying to use the AppointmentGet. Trying below:
$params = array(
	'AppointmentSince'  =>'2017-07-11T07:00:00',
	'AppointmentUntil'  =>'2017-07-11T012:00:00',
	'SerialNumber'		=> '9999'

$response = $client->__soapCall('AppointmentGet', $params);
$response = $client->AppointmentGet($params);

Open in new window

Regardless same error:

SoapFault in TestController.php line 70: Internal Server Error
(line 70 being the $response line)

The company that provides the service has some documentation:

Any ideas?
Trying to consume webservice using wcf client, getting following error

The content type multipart/related; boundary=MIMEBoundaryurn_uuid_B50EC784A204DC07C91495512014914; type="text/xml"; start="<0.urn:uuid:B50EC784A204DC07C91495512014915@apache.org>"; charset=utf-8 of the response message does not match the content type of the binding (text/xml; charset=utf-8). If using a custom encoder, be sure that the  . The first 1024 bytes of the response were ...

Fiddler is showing the complete response but wcf is not able to deserialize the complete response. Response contains Japanese characters.
Example for WinRM  API using SOAP
we are in need of technical help to achieve secure comms using secure Soap (certificated) to a government web-service.
We have to send and receive encrypted SHA256 xml content as the payload using SSL transport.
Is this an area in which you have expertise?
If so, we are prepared to pay for consulting/help if a working result can be achieved.
If you have expertise here, and are able to offer guidance, then we can send real code and proper full description of our problems.
Justin Graham.
New Zealand (GMT + 12)
How do I retrieve the values of the SOAP Fault message to display to the user by using classical asp?
I am sending an xml document and they use SOAP authentication.
I have attached a snapshot of the message, and its a valid error message.
 I just need to retrieve and display the SOAP FAULT values.

After researching, I know I need to extract the child nodes but I can not quite it right.
I know its XML and I should be able to extract the fault string, actor and message I couldn't find what was the best way .
I am thinking in the savdoc I should  try to extract the  child node <faultstring>.
Any help appreciated.
Below is my code for sending/receiving XML etc. It works fine.
    url = "http://ws.mysite.com/test/Gateway.asmx"
    Set objXMLHTTP = server.Createobject("MSXML2.ServerXMLHTTP")
    objXMLHTTP.Open "POST", url, false
    objXMLHTTP.setRequestHeader "Content-Type", "text/xml" 
    objXMLHTTP.send xmlmsg

   strResult= objXMLHTTP.ResponseText
   strStatus = objXMLHTTP.StatusText
   savdoc = objXMLHTTP.ResponseText


Open in new window


There is also helpful tutorials on BlazeMeter.com for JMeter, you don't have to use BlazeMeter but they do allow you to import your JMeter .jmx file and run tests if that is a route you want to go.

I am reading as above. I wonder what are difference between JMeter Vs BlazeMeter, advantages, disadvantages, practical uses.Please advise
If you're using SOAP to send authentication (username and password) and data from one site to another, is the authentication details secure? Can it be intercepted? In particular I'm authenticating and sending the data to SharePoint 2013.

I am going through below link
which wsdl binding style to use which time. i wonder which wsdl element wraps all operations?
 Please advise
Upgrade your Question Security!
LVL 11
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Hi I wonder if you gurus can assist please.

I have a really simply SOAP server in PHP that at present I just need to send back a valid XML string for. All works ok from the request side but my response seems to be altering the < & > to &lt; / &gt;

Here is my basic SOAP Server:

require "functions/getProperties.function.php";

$options = array(
	'uri' => 'http://s3052/webServices/ShepwayWebService',
    'location' => 'http://s3052/webServices/ShepwayWebService.php',
    'trace' => true

$server = new SOAPServer(null, $options);




Open in new window

Any my functions file:

function GetProperties($strSearch){	

	// required classes
	$response = '<GetPropertiesResponse xmlns="http://www.mvm.co.uk/webservices/M3PP"><GetPropertiesResult><MVM xmlns="http://www.mvm.co.uk"><mvm:PUBLICPROTECTION xmlns:mvm="http://www.mvm.co.uk"><M3PPPROPERTIES xmlns="http://www.mvm.co.uk"><SUBUPRN>50028034</SUBUPRN><UKEY>PI/000025895</UKEY><ADDRESS>1 Trimworth Road, Folkestone, Kent, CT19 4EJ</ADDRESS><SEARCH>TRIMWORTH ROAD</SEARCH><BUILDING_NUMBER>1</BUILDING_NUMBER><CLOSED>N</CLOSED><OUT_OF_AREA>N</OUT_OF_AREA></M3PPPROPERTIES></mvm:PUBLICPROTECTION><RESULTS><RESULT><RESULTCODE>0</RESULTCODE><RESULTDESC>Successful</RESULTDESC></RESULT></RESULTS></MVM></GetPropertiesResult></GetPropertiesResponse>';
	return $response;



Open in new window

Now, If I run a test using the following code and look at the source code it works fine:

$pf_payload  = '<GetProperties><strSearch>Trimworth Road</strSearch><strBuilding_Number/></GetProperties>';

// make the SOAP call
$options = array(    
	'uri' => 'http://s3052/webServices/ShepwayWebService',
    'location' => 'http://s3052/webServices/ShepwayWebService.php',
	'trace' => 1

$stub = new SoapClient(null,$options);

try { 
	echo $stub->GetProperties($pf_payload);
} catch (SoapFault $exception) { 
	error_log("\n## SOAP call exception \n: " . $exception);       

error_log("\n## request : \n" . htmlspecialchars_decode($stub->__getLastRequest()));
error_log("\n## response : \n" . htmlspecialchars_decode($stub->__getLastResponse()));


Open in new window

This reply "SEEMS" correct:

Open in new window

Here is my code :

import java.io.StringReader;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.springframework.ws.client.WebServiceIOException;
import org.springframework.ws.client.core.WebServiceTemplate;
import org.springframework.ws.soap.client.SoapFaultClientException;
import org.springframework.ws.soap.client.core.SoapActionCallback;

public class SpringWSClientSample {

      private static final String MESSAGE = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope\" xmlns:web=\"http://www.webserviceX.NET\">"
                  + "<soapenv:Header>"
                  + "</soapenv:Header>"
                  + "<soapenv:Body>"
                  + "<web:ChangeMetricWeightUnit>"
                  + "<web:MetricWeightValue>40000</web:MetricWeightValue>"
                  + "<web:fromMetricWeightUnit>milligram</web:fromMetricWeightUnit>"
                  + "<web:toMetricWeightUnit>gram</web:toMetricWeightUnit>"
                  + "</web:ChangeMetricWeightUnit>"
                  + "</soapenv:Body>"
                  + "</soapenv:Envelope>";

      private final WebServiceTemplate webServiceTemplate = new WebServiceTemplate();

      public static void main(String[] args) throws Exception {

            SpringWSClientSample client = new SpringWSClientSample();

      public void simpleSendAndReceive() {
            try {
                  StreamSource source = new StreamSource(new StringReader(
                  StreamResult result = new StreamResult(System.out);
We have created a stored procedure and it is sitting on the db server.  We have tested the server locally and against the server directly using the same data as we are sending in the API and the data loads correctly.  When we use the API nothing is being loaded.  Our parameter in the SP is a XML parameter.  We are not getting any errors returned.  We have try and catches, begins and ends in the SP and it's getting to the return without issue.  But like I said nothing is being loaded.  Are we missing something?
Does anyone know how to gather the SOAP call and response for a specific website, using an API?

My question is simple; i am gonna to call below service :


But; something is wrong, it is returning to me Data Not Found. How can i fire it? My c# code is :

  myService.GlobalWeatherSoapClient client = new myService.GlobalWeatherSoapClient();
            Console.WriteLine(client.GetWeather("Stockholm", "Sweden"));
            Console.WriteLine(client.GetWeather("Berlin", "Germany"));

Open in new window

I need to know the correct XPATH query to pull O_CaseID out of this SOAP response.

<?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:Body><UTP_GetUpdatedJobsResponse xmlns="http://services.pststatus.net/"><UTP_GetUpdatedJobsResult>Success</UTP_GetUpdatedJobsResult><xmlString><?xml version="1.0" encoding="utf-8"?>
<Job ChangeNumber="58333">
<S_JobID />
<DocumentsToBeServed>Subpoena for Hearing</DocumentsToBeServed>
<CourtTime>2:00 PM</CourtTime>
<S_CaseID />
<Plaintiff>Test Plaintiff</Plaintiff>
<Defendant>Test Defendant</Defendant>
<TypeCourt>Family Court</TypeCourt>
<State>New York</State>
<JudgeName>Jude Test Mr</JudgeName>
<S_CommentSeqNum />
<CommentText>Test comment</CommentText>

SOAP Protocol





Simple Object Access Protocol (SOAP) is a protocol specification for exchanging structured information in the implementation of web services. It uses the XML Information Set for its message format and uses other protocols, notably Hypertext Transfer Protocol (HTTP) and the Simple Mail Transfer Protocol (SMTP) for message transmission.

Top Experts In
SOAP Protocol