getting soap fault in response - failed to locate the operation name for this soap call
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-22-2016 02:27 PM
Hi,
I am using SOAPUI client - Ready API v1.7. I have a sample request from the client for inserting incidents and an endpoint provided by them to insert the incident. I am setting the SOAP action as follows: http://www.service-now.com/incident/insert.
I have attached the sample request which I am using to send.
Thanks,
Priyank
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-22-2016 02:44 PM
Hi Priyank,
Here is the beginning of a SOAP envelope, created by SOAPUI, with a SOAP endpoint of https://name_here.service-now.com/incident.do?SOAP
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:inc="http://www.service-now.com/incident">
<soapenv:Header/>
<soapenv:Body>
..
Here is what I see in your sample request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://www.service-now.com/u_incident_ws">
<soapenv:Header/>
<soapenv:Body>
..
I am wondering if this is correct
http://www.service-now.com/u_incident_ws
Best Regards
Tony
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-22-2016 03:56 PM
Hi,
I tried using the 'incident' in the xmlns url instead of 'u_incident_ws' which was from client and also replace the 'u' tag everywhere in the doc to 'inc' tag but still getting the same error. I am wondering if there is another tool where we can set all parameters explicitly or is more simple to use, rather than ReadyAPI from SOAPUI ? or how do we set the operation in the soap request ? (which in my case is insert)
Btw which soap client do you use?
Thanks,
Priyank
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-22-2016 04:42 PM
The endpoint is not the default one (https://name_here.service-now.com/incident.do?SOAP),
the client has a wsm wrapper around the servicenow endpoint.
the custom endpoint is:
https://client-provided-server-id/sst/com.slma.ai01.Servicenowv10.u_incident_ins
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-22-2016 11:20 PM
Hi Priank,
Ah I see, the Ready! API toolset includes SoapUI NG Pro, SoapUI NG Pro, Secure Pro and ServiceV Pro.
Here is a minimal SOAP envelope that will insert a record in the incident table
via SOAP direct web service API
Here is a very simple SOAP envelope that works OK - the example in the doc link above has some more "stuff".
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:inc="http://www.service-now.com/incident">
<soapenv:Header/>
<soapenv:Body>
<inc:insert>
<short_description>MyShortDes</short_description>
</inc:insert>
</soapenv:Body>
</soapenv:Envelope>
If the user name and password is defined OK plus the the End Point you should get something like this:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<insertResponse>
<sys_id>2e833ec813831a00125af8228144b0ec</sys_id>
<userref/>
</insertResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
I am not familiar with wsm wrappers (round a SOAP end point), but if you are posting SOAP to a Customer's wsm you could liaise with the Client admins who maintain that end point.
This is probably correct BTW I expect this is aligned with the wsm WSDL
http://www.service-now.com/u_incident_ws
You could also enable SOAP debug on the instance to see what SOAP if was reaching the instance.
Debugging incoming SOAP envelope
One final point is "failed to locate the operation name" the exact error message you are getting back?
Best Regards
Tony