Web Services: Object is read-only

Hi to all,
I would like to use the SOAP / REST Web Services with three applications we use in our company (Omnitracker, BMC TrueSight Orchestrator (TSO) and BMC TrueSight Server Automation (TSSA)).
I get the services for all three - see the wsdl and screenshots attached.

I am able to use the resulting activities, but as soon as I connect to the services using credentials, I get an exception “System.InvalidOperationException: Object is read-only”. It is all the same with the three services.

A search in the internet gives me a page https://stackoverflow.com/questions/199014/getting-object-is-read-only-error-when-setting-clientcredentials-in-wcf , so I guess the solution lies in the generated web services.

Any proposals how to solve this?

Many thanks,
Joern
service_omnitracker service_tso service_tssa

call_read-only.7z (411.5 KB)

Can you try to google the error?
Install UiPath.Web.Activities @jodroenn

You will get SOAP request activity, try wsdl there.

@jodroenn

I´m currently having the same problem, I´ve tried using the SOAP Request Action but the response of the web Service is Unathourized. When i tried using the library it only gives me this response.

The problem with the authentication is the fact that we are trying to connect anonimously to a Web Service with Navigate/NTLM Authentication does someone know how to help solving this issue?

Hi Guys ,

Do we have the solution for getting read-only response while calling the service method?

Hello all,

Were anyone able to resolve this issue?
I am trying with a free SOAP endpoint and having this “Object is read only” exception exactly like the op. I am also under a proxy, so I need to provide Simple Authentication properties too.

Here is the WSDL:
https://www.dataaccess.com/webservicesserver/NumberConversion.wso?WSDL

Thanks!

Hi all - I ran into the same issue with the services saying Object is “READ ONLY”. Here’s how I worked around it. I had my SOAP call working properly in an application called SOAP UI. I had success converting POSTMAN calls into the UiPath Web Request Activity. So I got the same call working int SOAP UI to work in POSTMAN by googling “make soap calls in postman”. For search bot purposes, I was trying to make a SOAP call to an Oracle Cloud finance report.

From there, I was able to make the soap call work in the UiPath web request activity.

Key points:

  1. You need to download UiPath.WebAPI.Activities
  2. Using the HTTP Request activity:
    a. The Endpoint is the SOAP endpoint URL without the ?wsdl parameter added.
    b. The SOAP envelop goes in the Options->Body property. If the soap xml envelop is on mutiple lines, it helped me to combine all the lines into one. If the soap xml envelop has quotes in it, you need to apply 2 quotes ("") instead since your soap envelop is listed in the property as a quote enclosed string.
    c. Options->BodyFormat property is application/xml
    d. Options->Headers is a collection.
    you need:
    Content-Type Value: “application/soap+xml”
    Connection Value: “keep-alive”
    Accept-Encoding Value: “gzip,deflate,br”
    User-Agent Value: “PostmanRuntime/7.2.6.3”
    d. Request method needs to be a “POST”

The Output->Result property will be stored as a string. If the request returns XML, you may need to use something like the Deseriaize XML activity to turn your string back into an XML object.

For authentication in my case, I needed Simple Authenication so I use leveraged the username and password properties.

Hope this helps people who are stuck on getting SOAP calls to return in XML! Let me know if it helped you :slight_smile:

I’m not saying this can’t be changed but this is how I got mine to work.