Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium


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


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"
Get your problem seen by more experts
LVL 11
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

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.
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?
I need a step by step instruction how to build a soap web service using PowerBuilder 12.6 or 2017 in Classic.
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
Hire Technology Freelancers with Gigs
LVL 11
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

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);
Good afternoon all,

Any help here would be greatly appreciated.  I have a web service that is located on a production server that has load balancing.  Server xx1 and xx2.   This is a public facing web server that used to be reachable via http.  Now we are required to use secure http.  Our webmaster has set up a redirect from http to https that JAX does not seem to like.  

When I run the webservice locally the schemaLocation that is inside the xsd:schema is http://localhost...?xsd=1  When I copy this exact same code to our staging area the schemaLocation becomes https://stagingserver...?xsd=1.  For some reason when it is copied to the production server the schemaLocation becomes http://productionwebaddress...?xsd=1.  I need to know what I need to configure to get this to be https://productionwebaddress...?xsd=1.

It is a linux, RH7, server running Tomcat V8.  I am merely a software developer so if you need more info then ask away and I will try and get the answers.  I don't know everything that I should post.

The full error is:  com.sun.xml.internal.ws.client.ClientTransportException: The server sent HTTP status code 302: Found
I am using CXF, my question is two folds:

1) How can I generate a custom soap header for an outgoing response?

2) How can I inject some value from the implementation function?
When I run gSOAP client it gives me error :

"Validation constraint violation: tag name or namespace mismatch in element 'com.at.ecbs.CI19.GetOrderDetailsOutput'" Detail: [no detail]

But below is RECV.log :

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
   <ns1:getOrderDetailsResponse xmlns:ns1="com.at.ecbs.CI19.CustomerInformation">
      <supplText>Order details extract successful</supplText>

Client code option set :

 SOAP_CMAC::com_x002ebt_x002eecbs_x002eCI19_x002eCustomerInformationSoapBindingProxy …
I have a Drools Rule file which processes some business logic based on input from a java file and gives back output back to Java.

I need to get the response in a web service request and response format by passing data in SOAP format and snd get SOAP response. How can we do that?
I am trying to create a SOAP Request xml from xpath map using membrane-soa api. If I try to set more than 10 values for unbound list I am not able to generate the tags for the values that are set beyond size of 10. Can any tried this? Can you please help?

I am calling webservice to see next and coming up games for a certain soccer club ( it is Icelandic :) ).  I have working fla file where I call for status in a tournament,  with one variable in the request ( the number of tournament)
The code from that file:
import alducente.services.WebService;
import flash.events.*;

var ws:WebService = new WebService();
ws.addEventListener(Event.CONNECT, connected);
ws.cacheResults = true;
var initTime:Number;
function connected(evt:Event):void{
	ws.MotStada(done, "33903");	//called for "MotStada"(status in the tournament)"number of tournament",  
function done(serviceResponse:XML):void{
	namespace soap = "http://schemas.xmlsoap.org/soap/envelope/";
	namespace unnamed = "http://www2.ksi.is/vefthjonustur/mot/";
	use namespace soap;
	use namespace unnamed; 
	trace("\nWeb Service Result: ");

Open in new window

But for this I need to put in more, as shown in the example http://www2.ksi.is/vefthjonustur/mot.asmx?op=FelogLeikir 
How is that done?
Here is what I have done so far:

import alducente.services.WebService;
import flash.events.*;
var ws:WebService = new WebService();
ws.addEventListener(Event.CONNECT, connected);
//more info at http://www2.ksi.is/vefthjonustur/mot.asmx?op=FelogLeikir
//Call for games coming up for a club

ws.cacheResults = true;
var initTime:Number;
function connected(evt:Event):void{
	ws.FelogLeikir(done,"107"); /*<FelagNumer>String=107, <VollurNumer>String=All/not defined,<FlokkurNumer>String=111,<DagsFra>String=date from today, <DagsTil>String=date after ca 2months */
function done(serviceResponse:XML):void{ 
	trace("\nWeb Service Result: ");

Open in new window

I have a Java Soap Client that send some xml files to a remote server to be processed.

It uses java 1.7's java.nio.file.WatchEvent<Path> (almost just like it's explained here) to monitor new files added to a directory.

It is processing about 2 or 3 files per minute.

Looking for a way to increase the speed of files sent and processed I decided to start the same jar twice, monitoring different directories of course.

I can't explain why both processes are still processing about 2 or 3 files per minute. I doubt the problem is in the remote server, since I have a log showing the moment when each file begins and ends it's processing, and it shows almost the same behavior when using only one linux process than when using two.

I mean the total throughput is the same when using only one linux process than when using two.

The size of the xml's are almost always about 8KB.

I'm guessing there should be a bottleneck somewhere other than CPU.

Any suggestions on what tool or tools should I use to find it and how to use them? (Remember, it's a Java application)

I would prefer to use free or openSource tools, but I could consider using a paid one.

Hi, I'm calling a SOAP Webservice via one class, using Keystore and I had the error below

Exception in thread "main" javax.net.ssl.SSLHandshakeException: Server chose SSLv3, but that protocol version is not enabled or not supported by the client.

The SOAP Client class
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.net.URLConnection;
import java.security.InvalidKeyException;
import java.security.KeyManagementException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.SignatureException;
import java.security.UnrecoverableKeyException;
import java.security.cert.Certificate;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.MimeHeaders;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPEnvelope;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPMessage;

Open in new window

Free Tool: Port Scanner
LVL 11
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

I am using SOAPUI Mock Service to mock as soap service. I am able to make everything work where based on request I return certain response with csv attachments.

Now I want to expand this dynamically where based on the request, I want to parse some existing file than add it as attachment to  my response.
Is this possible in SOAPUI using Script,etc
You are a linguistic working at an e-books distributor. Your management has interest in finding out if commonly used words used in a book make the books more popular, therefore more books would be sold if the number of commonly used words in the book is higher. They believe that this fact would allow them to tailor their sales and marketing more closely to what would be purchased rather than just relying on the popularity of the author or other factors. So they want to test their theory by creating a web-services application that allows their customers to submit books to 1) check the popularity of the words used in the book; 2) rank the book as high, medium or low ranking, and 3) compare that to the books ranking in sales.

For this project you are only required to implement part 1) – popularity checking. There could be different ways to implement the project. The simplest way is to create a RPC and a Document-style Web service to process a document (simple text). A more complex way is to use a combination of WSDL and database applications both on the server and the client side. You can choose either way.
The three operations performed by the web service will be the following:
Word Count: Counting the total number of words in a document.
Word Rank: A ranking of all words appeared in a document. You may refer to the Internet that have listings of the most commonly used words, words that are not in the list will be ranked lowest (depending on your table length).
Word …
Hi there!
I have a ColdFusion 9 server. I need to make a SOAP Web Service request using Coldfusion but it does not work. The way it should work: coldfusion page sends a filtered SOAP service request to a remote (non coldfusion) server and the  returned page needs to be saved to a DB. I tried to follow Ben Nadel samples (http://www.bennadel.com/blog/1809-making-soap-web-service-requests-with-coldfusion-and-cfhttp.htm) but I'm getting a BLANK page in return.

Here is my request page:

<cfsavecontent variable="soapBody">
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<cfhttp …
we are making request with SOAP HEADER to one of our application which is running on IBM WebSphere Application server version 7 .
 Header Request :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:int="http://www.aftermarket.org/InternetPartsOrder">
        <wsse:Security soapenv:mustUnderstand = "1" xmlns:wsse = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                <wsse:Password Type = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">password</wsse:Password>

If request contains soapenv:mustUnderstand = "1" (if it is  soapenv:mustUnderstand = "0", works perfect)  in SOAP Header, WAS server is not able to process the message.

Getting below error in the logs

Did not understand "MustUnderstand" header(s):{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}Security

at com.ibm.ws.webservices.engine.handlers.jaxrpc.JAXRPCSOAPHandler.checkSOAPSemantics(JAXRPCSOAPHandler.java:356).

Please help me in this one. I appreciate your help

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

No Top Experts for this time period. Answer questions to earn the title!