2

I need to debug a soap webservice but i don't know where to start. This is returning wrong data and i need to find why. It is running on http://localhost:18385 and i can control the parameters that i send but don't know the endpoint file . if i write http://localhost:18385 on browser i get

 <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:IDSP="http://ns.adobe.com/InDesign/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>HTTP GET method not implemented</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Thanks in advance

Leonel Matias Domingos
  • 1,922
  • 5
  • 29
  • 53

2 Answers2

4

The easiest way to debug is to use an app like Postman or SoapUI, so you can set up what you post and see the response in detail.

You are getting an error because you are using GET in your script, InDesign Server expects POST request with Content-Type of xml/text and Body set to the Soap call, e.g.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://ns.adobe.com/InDesign/soap/">
    <soapenv:Body>
                         <soap:RunScript>
                             <runScriptParameters>
                                 <scriptLanguage>javascript</scriptLanguage>
                                 <scriptFile>C:\InDesign\scriptfile.jsx</scriptFile>
                                 <scriptArgs>
                                    <name>myParameter</name>
                                    <value>305</value>
                                 </scriptArgs>
                             </runScriptParameters>
                         </soap:RunScript>
     </soapenv:Body>
</soapenv:Envelope>
Nicolai Kant
  • 1,391
  • 1
  • 9
  • 23
2

You're not giving much detail of what exactly you need.

If you're asking what's the WSDL path, it should be: http://localhost:18385/service?wsdl

If you need to debug a SOAP web service response you can either create a PHP test script using SoapClient or use SoapUI.

paul.ago
  • 3,904
  • 1
  • 22
  • 15
  • the problem is that it is a service running on port 18385 that is called with php curl function. I is a adobe script ... – Leonel Matias Domingos Jun 15 '17 at 09:07
  • Yes, I'm familiar with InDesign Server. You shouldn't use cURL directly to make a SOAP call, it's not like a REST webservice. You should use the PHP SoapClient instead – paul.ago Jun 15 '17 at 09:45
  • ok, but i want to debug . Lets say that it is returning a wrong version number and i need to know why...not working today, i cant send you the adobe srcipt that generates the response... – Leonel Matias Domingos Jun 15 '17 at 12:08