How to Test a Sage X3 Web Service of Type Subprogram Using SOAPUI
You have a web service (WS) working as expected then you make a minor change and all of the sudden the WS is not working anymore. What do you do? You could try troubleshooting using Sage X3 Classic SOAP web services but in our experience, it is much better to use SOAPUI instead. This is an open source software designed to manage WS calls. It is easy to set up and use and allows you to reuse your test code.
Steps to set up and use SOAPUI for X3 subprogram web services
- Download software from https://www.soapui.org/downloads/latest-release.html
- Open SOAPUI
- Select Switch the Workspace from File menu. Enter a name for a file that will contain the entire workspace. The workspace can have multiple projects pointing to different Sage X3 installations and folders. Make sure you add .xml extension to the file name. Click Open.
- You will get a confirmation message, click Yes.
- Create a new SOAP project by right clicking on Projects (1) and selecting New SOAP Project. The Initial WSDL URL (2) contains the Sage X3 web server and port. The entire URL is http://YOUR_X3_SERVER:YOUR_X3_PORT/soap-wsdl/syracuse/collaboration/syracuse/CAdxWebServiceXmlCC?wsdl
- Specify Sage X3 credentials to connect to the folder. Double click on CAdxWebServiceXmlCCSoapBinding (1), then click on Service Endpoints tab (2) and enter your username (3) and password (4).
- To setup a request that executes the Sage X3 subprogram WS, select run method (1) and click on Request 1 (2). You could change the name to a more meaningful name (3) .
- Double click on the new Request (1) and set up the authentication as Basic authentication. To do so, click on Auth (2) and select Basic on the Authorization drop down (3). If Basic doesn’t exist already, select Add New Authorization from the drop down (4) and create it by selecting Basic Type (5).
- Enter the Sage X3 credentials to connect to the folder. They don’t have to be the same as the credentials used to connect to the WS Pool. Make sure Authenticate pre-emptively is selected.
- Fill in SOAP XML parameters with the appropriate information:
1. codeLang: Sage X3 language
2. poolAlias: Sage X3 Pool name
3. requestConfig: adxwss.trace.on=on&adxwss.beautify=true&adxwss.optreturn=XML
4. publicName: Web service name
5. inputXml: Web service input parameters (make sure the parameters are enclosed on
- Submit the request by clicking on the green arrow in the toolbar and get your results.
- Save your project and reuse it every time you want. Right click on the project (1) and select Save Project.
Now you know how to use this program. Give it a try next time you have issues with web services.