I have a %GlobalBinaryStream object that I'm trying to save as a local file after being received through a SOAP Web Service.

To do this, I created a %Stream.FileBinary object and wanted to set where the stream copied to this object would be saved by using either the DefaultStreamDir() ClassMethod or the NewFileName() ClassMethod. However, the documentation isn't very helpful on how to use these ClassMethods.

Right now, I have the below code:

1 4
0 210

Hi community,

I have a SOAP Client class that connect to a WS Service. This structure and configuration is the same for some providers that are integrated with my solution.

If I call to a provider, it returns the XML expected. But there is a provider that raises an error:

ERROR #6243: HTTP request to SOAP WebService returned response with unexpected CONTENT-TYPE: application/wsdl+xml

1 3
0 268

Hello Community,

I want to secure a SOAP Webservice (an EnsLib.SOAP.Service one, if that matters) adding a SSL/Username Policy to it. As im not sure how detailed my request here should get, ill try giving a detailed as-is description of my setup, what I've tried, how I tried to test the connection and what problems including some logs I ran into.

As a small foreword: I'm pretty new to the whole security aspect of intersystems and soap itself.

System:

1 3
0 618

I am trying to use the %ListOfDataTypes functionality, but am hitting a limit of 50 characters for each entry, when being used in a Web Service. Is there a way to increase the number of characters that can be used in the %ListOfDataTypes through a web service?

1 7
1 436
Article
· Dec 27, 2018 2m read
Use %XML.Node to walk a DOM

The following code walks a DOM using %XML.Node. It also prevents %XML.Writer to change whitespace. Run the code using the class method "test":


Class objectscript.walkDOM Extends %Persistent
{
    ClassMethod dfs(node As %XML.Node)
    {
        s entrynode=node.NodeId
        do {
        //element nodes with one whitespacetyped child are the ones we want to change
        if (node.NodeType=$$$xmlELEMENTNODE){
            s snode=node.NodeId     
            if (node.MoveToFirstChild())            
                {
                    i ('node.MoveToNextSibling()){
                        i (node.NodeType=$$$xmlWHITESPACENODE){
                            s node.NodeType=$$$xmlTEXTNODE
                            s node.NodeId=snode
                        }
                    }
            }
            s node.NodeId=snode     
        }   
        if (node.HasChildNodes()){
            d node.MoveToFirstChild()
            d ..dfs(node)
        }
        } while (node.NodeType'="" && node.MoveToNextSibling())
        s node.NodeId=entrynode
         
    }
     
    ClassMethod test()
    {
      set xml = "abcdefg"
     
      s reader=##class(%XML.Reader).%New()
      do reader.OpenString(xml)  
      set writer = ##class(%XML.Writer).%New()
      //do some magic
      d ..dfs(reader.Document)
       
      w !,"with indent=1:",!
      set writer.Indent = 1
      do writer.OutputToString()
      do writer.Document(reader.Document)
      w writer.GetXMLString()
      set writer.Indent = 0
      w !,"with indent=0:",!
      do writer.OutputToString()
      do writer.Document(reader.Document)
      w writer.GetXMLString()
    }
}

Here's a link to the code on GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/...

1 0
0 317

I faced with the issue when WebSocket connection just fails without any errors if I send data with size 384 bytes and more (In binary mode the same). As I know by standard WebSockets frame does not have such limitation. Is there any way how to decrease it? This limitation too small, it is too difficult to fit this size and needs to send data much more often than I expected. Tested with Caché 2016.2, 2017.2 and IRIS 2018.1.

1 2
0 738

I cannot connect to Cache from node.js

I have installed in Windows 10 the following: CACHE 2016, node.js v 4.4.7 and express .

- where can I get cache.node? The link in the Intersystmes documentation http://globalsdb.org/downloads/ doesn't work. I found cache0100.node and cache0120.node in my Cache instance's \bin directory. But I am not sure if I can use them or not.

- how to install cache.node ? Where do I place it exactly?

Can anyone recommend any tutorial or code example with installation instructions?

1 12
1 3.4K
Question
· Jan 15, 2018
Headers in HttpRequest

Hi Guys,

I'm using Ensemble 2014 and have a code that Posts HttpRequest to a REST API and working fine, but don't know how to add Header to my request!?

I tried Set Request.SetHeader("Source","Civicview") but it's bringing a Syntax error, any help pls?

1 3
0 1.2K

Hi Community!

Check a new session recording from Global Summit 2017:

Angular, JSON, and REST – Oh My!

https://www.youtube.com/embed/NWWSGs5NDGI
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]


1 0
0 573

Hi All,

I need some clarification on web service (Soap Service). For each Soap request, system consuming 1 license and it is not releasing until CSP session timeout and extra grace period 5.10 minutes(310 seconds).
Due to this, at some time license consumption is full.
If i use with Login credential (i.e password authenticated web service), it consumes one license for 25 connections(request).
But i need to use it as anonymous user(Unauthenticated).
Please advice.

Thanks,
Sabarinathan M

1 3
0 562

Hi everyone, I have and Zen Mojo application, it's all working but I have some doubts about what is recommended to use: There is some reports of employees, for example, and actually I'm using some plugins : "Excelent export" to generate Excel reports and "jspdf" to generate PDF reports in client side.

I have an REST service, that receives the request, process and returns JSON, after client side receive the response it's processed.

- This can be slow/bad in applications with large data?

- It's better/recommended to use ZenReports even with ZenMojo applications?

1 2
0 365

Hello guys,

I've got this piece of code which runs the method "WebMethod", that belongs to %SOAP.WebBase.cls.

It grabs the outcome from an internal webservice we have and after that, it writes into a file.

The thing is, when I browse the file contents, I realize that in the place where a special character should be, I see a question mark.

By querying the same webservice from a special soap tool called "SoapSonar" (I've been using this for years), the outcome shows up this special character (shows it properly).

1 16
0 4.9K

Does the Caché installer do all of the necessary setup for using Atelier when upgrading a pre-Atelier instance?

I just upgraded an Ensemble 2016.1 instance to 2016.2 and the /api/atelier web application wasn't created automatically. Aside from creating this web application is there anything else that needs to be done to support Atelier?

** UPDATE **
See my comment below -- this was caused by a permissions problem during the upgrade. After fixing the permissions problem and upgrading again Atelier works.

1 4
0 503

I don't have a current project where I am needing to create a new operation that uses SOAP at the moment but as someone who still has some SOAP connections in her Production, I was curious if VSCode had an equivalent to the SOAP Wizard that helped create all of the SOAP classes needed based on the provided WSDL? Does anyone know? Or has this become a manual process?

Thanks in advance for help curbing my curiosity!

0 2
0 63

I am attempting to configure an inbound service that utilizes the EnsLib.SOAP.GenericService class. This service receives HL7-v3 content wrapped in SOAP requests. Despite reading the documentation on configuring SOAP services, I am still confused.

In my current configuration item "Fr_Centrak_RTLS", I have ‘Enable Standard Requests’ checked, ‘Pool Size’ set to 0, and the port is unspecified.

0 7
0 102

Hello everyone, I need some help.

I have to send some events for a government WebService that I already imported the WSDL and XSD's and It worked fine and I'm able to build the message and connect into the service, but It has been rejected with the message that the XML is wrong and the only diference between the Caché SOAP message to all the examples that the government gave us is the header:

This is how the Government is expecting the message:

0 10
0 121

Hello,

First of all thanks for your time, and thanks for your help.

We have the following doubt: how HTTP status is being replied from a SOAP Service to the Outbund System?

Where in HealtShare 2020's classes is being replied an HTTP/200 OK or an HTTP/500 or any SOAP HTTP status code?

We ask this because some outbound systems do need to have an HTTP 200 to being able to process our SOAP responses.

We have been examining the following classes:

EnsLib.SOAP.Service

0 2
0 74

How to send the HL7 Batch messages over a SOAP webservice which takes 3 credentials(Username, Password& Org.ID) using IRIS Management Portal V 2019.1?

WSDL xsd : element - 1.Username , 2.Password ,3.Org.ID ,4.HL7 Message.

Info I had -

Source is CSV File will be translated to HL7 using data Transformations. All the transformed messages need to be sent to destination System through SOAP request as a single Batch File.

0 0
0 83

First of all, thanks for your help, and time reading this question.

Why, when we send a SOAP message from SoapUI to a SOAP service in a HealthShare environment called 'ESBCHUIMI,' it recognizes the 'Credenciales' header, which has 'usuario' and 'password' as properties. This class is a %SOAP.Header.

However, when we load the WSDL using the SOAP wizard from this SOAP Service to another HealthShare environment called ESBSSCC and send it from SoapUI to ESBSSCC, when it is being forwarded from ESBSSCC to ESBCHUIMI, the ESBCHUIMI's service outputs:

0 5
0 88
Question
· Oct 17, 2023
Debugging a SOAP web-client

Pointers please for debugging a SOAP web-client.

We have several clients in different productions all accessing a web-service. We are trying to add another client in a new production, and its not working. The messages between the relevant Process and the SOAP web-client Operation are the same in the working and the non-working productions. But the web-service is reporting an XML parsing error to the non-working production. Here's the error as reported in the SOAP web-client Operation...

0 3
0 166

Does anybody know if there is a wizard to create SOAP client/server web services for IRIS from VS Code? I would like to not use Studio anymore but for SOAP web services looks like there is no alternative in VSCode.

Thank you in advance!

0 4
0 299