I have the following message when I try to import a WSDL to generate a SOAP service:

ERROR #5319: The type of a property of a class series cannot be recurring: SeleneHL7Service.hl71.escapeType:escape
> ERROR #5030: Error occurred while compiling SeleneHL7Service.hl71.escapeType class

I have found in the documentation:

5319 The type of a property in a serial class cannot be recursive: %1

0 1
0 397

Hi,

I'm trying to establish a communication between my edge, which is in one server, with my HUB which is in another one.
In EDGE, when the HS.Gateway.HSWS.WebServices component sends a message to the HUB component, it receives the following error: "Cannot invoke method RegisterGateway; WebServiceClientClass 'HS.Hub.HSWS.WebServicesClient' could not be instantiated, or the WebServiceURL Location could not be determined".

May someone help me?

0 1
0 381
Question
· Jul 13, 2016
Overriding soap body

We can override soap body by using WriteSOAPBodyMethod. Something like:

Method Online(ByRef Obj1 As myClass1, Obj2 As myClass2, Output ObjOutput1 As myClass1Output(XMLNAME="Obj")) [ ..., WebMethod ]

{

s ..WriteSOAPBodyMethod="override"

d (..WebMethod("Online","ProcessRequest")).Invoke($this,"Online",.Obj1,.Obj2,. ObjOutput1)

s ..WriteSOAPBodyMethod=""

}

Method override(proxy As %SOAP.ProxyDescriptor, tag As %String)

{

}

0 1
0 375

Hello

I am trying to import a WSDL using the wizard and it outputs:

ERROR #6413: Element 'wsdl:binding:operation:msg': corresponding to message null : http://services.sanidad....

I have tried to find more information:

It is close to this case, however it is not the same error number:

0 1
0 374
Question
· Jan 20, 2021
Multiple Threads In Operations

I have a BPL that calls a business service (actually does lots of other things unrelated to my question). We receive an acknowledgement back containing data that is processed in the BPL and sent to the source system. The process of sending to our downstream system "A" and receiving the response takes about 20 seconds per transaction (very slow on system A's side). Due to this slowness, we end up with a backlog close to 1000 messages by the end of the workday.

0 4
0 370

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 362

Why do I upload files faster with webservice than with csp?

The soap protocol used by webservice has to go through http protocol. csp directly handles http, no xml encapsulation, so it should be faster.

After testing, for a 1M file, csp is about 0.1s slower. After the gateway connection to 1972, there is a stall of about 0.1s, not sure why.

Is there any way to make the file upload speed of csp faster than webservice?

webservice用的soap协议也得走http呀。csp直接处理http,少了xml的封装,按理来说应该更快。

经测试,1M的文件,csp慢了0.1s左右。在网关连接到1972后,有0.1s左右的停滞,不知道原因。

0 1
0 360

Hi,

Connections/ SOAP Operations to 3rd Parties can hold some challenges like the 3rd party changes it 's structures/ WSDL and returns an additional property in a SOAP response. So I have tried to implement the XMLIGNOREINVALIDTAG in the proxy SOAP response structures , but in Ensemble this seems to get ignored.

Are there any good suggestions on how to handle this an ideal would have been that the other party inform you of changes before hand....

0 1
0 359

Hi,

While HL7 Errors ACKs come back in the soap response, the HL7v2 Error ACK message is not processed.

I used the SOAP Wizard to construct my classes, but the generated code doesn't handle the HL7v2 ACK.
Does health Connect have a class that handles this?

Failing an official solution should I go ahead and make make my own classes based on EnsLib.HL7.Operation.TCPOperation, but wrapping it with the generated SOAP handling code.

How have others dealt with this?

0 1
0 347
Question
· Jun 28, 2019
Internal Web Service

Hello everyone,

Anyone can help me please. We use SOAP web service with public methods and have many instances of these classes, all work fine. We would like to create a new SOAP web service but for internal usage only, meaning not available to the public. The purpose of this is for communication between different servers internally.

We thought of having the methods to be Internal, WebMethod instead of just WebMethod.

Any suggestions?

Regards

Ben

0 1
1 343

We are using an F5 load balancer to route public traffic to our IS server. My goal is to block public access to the Management Portal, and only allow what we want to expose, such as REST/SOAP services. At the F5, they can block URL wildcards or specific ports, so those are our options.

Since the URLs for the web services are in the same path ([host]/csp/healthshare/[namespace]/*), I can't see any URL wildcards happening. That leads me to ports; is there a way to put services on a specific port for all services, and everything else stay on a standard web port?

0 5
0 341

Pre-requisite - Basic knowledge of ENSEMBLE and ObjectScript

My both previous sessions were related to OBJECTSCRIPT.
This time, we are going to add a flavour Ensemble/Healthshare,
to be informative and fast.

In this session we are going to discuss about -
"Informative and Fast WEB API VIA ObjectScript and Ensemble/HealthShare"

Web API can be REST or SOAP. We will taking example of SOAP in this session.
However, whatever I demonstrate today, will also be applicable for REST.

0 0
0 325
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
Question
· Sep 28, 2016
wsHttpBinding with Cache

Hi all,

This is a real long shot, but does anyone have experience integrating MS wsHttpBinding with a Cache application?

Link

I ask because my project had some initial design discussions for new web service communication and this specification was mentioned.

Thanks.

0 1
0 314
Question
· May 10, 2018
2015.2.2 .json format

Is it possible to produce a .json format using Ensemble 2015.2.2? Not sure what the trigger will be as of yet, but we have our local Department of Health trying to develop a reporting piece using .json.

Not sure how this will work with our Ensemble instance not being in the DMZ to send outside our network, but I thought I would ask anyway to see if it is possible.

Thanks

Scott Roth

0 2
0 313

Currently one of our applications, coded in Cache, performs web service API calls out to one of our vendors. We now need to be able to send a Client ID in the portion of the Soap envelope.

I think I have a clue of what I need to do but not 100% sure. We were thinking we could use the method %SOAP.WebClient.SetHttpHeader(field name, value) but when I have tired using this method and looked at the Soap log to see what is sent, the field is never showing. I realized I could be setting the wrong object using the method.

0 4
0 304

Hi Community,

I have created SOAP service and WSDL generated. While accessing WSDL URLs, it is redirecting to login page and giving access with production credentials.

I have tried to invoke form webservice clinet (soapui /postman), endup with authentication failed error.

Same service I am able to access from Terminal.

Could you please help me to access Production exposed SOAP service with out authentication.

2 1
0 286

I'm trying to create a SOAP service between two systems (one client and one server) to transfer files from the client to the server.

I'm reading through the documentation available at https://docs.intersystems.com/iris20223/csp/docbook/DocBook.UI.Page.cls?... but wanted to look at an actual example of code (preferably a small example for both systems).

If anyone has such an example or could create one, it would greatly help me understand how SOAP services work.

0 1
0 284

A customer recently asked if IRIS supported OpenTelemetry as they where seeking to measure the time that IRIS implemented SOAP Services take to complete. The customer already has several other technologies that support OpenTelemetry for process tracing. At this time, InterSystems IRIS (IRIS) do not natively support OpenTelemetry.

11 4
1 283