Re: Fwd: Need help with OVID

154 views
Skip to first unread message

Bhaskar, K.S

unread,
Jun 10, 2013, 11:14:22 PM6/10/13
to Arun Venkataraman, Hardhats
Arun --

I am not an administration or moderator of the Hardhats group.  But I am forwarding your e-mail to Hardhats and perhaps one of the list moderators can assist.

I don't know who outside Medsphere has expertise with OVID.

Regards
-- Bhaskar

On 06/10/2013 12:57 AM (US Eastern Time), Arun Venkataraman wrote:
Hi Bhaskar - I've sent this post to the hardhats group but its still not posted. I'm assuming you've to approve. Please point me to whoever else, if its not you. We need immediate resolution on this.

Regards
Arun.

---------- Forwarded message ----------
From: Arun Venkataraman <avra...@gmail.com>
Date: Wed, Jun 5, 2013 at 7:42 PM
Subject: Need help with OVID
To: hard...@googlegroups.com


Hello all - need your help. We've installed Astronaut openVista on Centos and cprs clients (Windows based) and everything is working fine. We are trying to hookup with Openvista server to write Java apps that can provide us views into Vista functionality. We've looked up OVID and even downloaded the jars but there's no documentation anywhere for installation, configuration and any examples of using the OVID java classes. Any pointers ?

Thanks in advance,
Arun.




-- 
GT.M - Rock solid. Lightning fast. Secure. No compromises.
_____________
The information contained in this message is proprietary and/or confidential. If you are not the intended recipient, please: (i) delete the message and all copies; (ii) do not disclose, distribute or use the message in any manner; and (iii) notify the sender immediately. In addition, please be aware that any message addressed to our domain is subject to archiving and review by persons other than the intended recipient. Thank you.

Budy

unread,
Jun 11, 2013, 5:34:01 PM6/11/13
to hard...@googlegroups.com, Arun Venkataraman, Hardhats, K.S. Bhaskar
Hi Arun,
I'm not an ovid expert but I did successfully connect to Vista using ovid. I don't know whether the following will work with Astronaut or not.
 
Vista Install:
 
Edit/Create RPC BROKER SITE PARAMETERS
- fill domain, box-volume, listerner port
- type of listener (new-style)
- status : Stopped (will be started by taskman)
- controlled by listener starter: Yes
 
taskman MANAGEMENT
- schedule XWB LISTENER STARTER
- queued to run on volume set: <box-volume>
taskman utility
- restart taskman - this will start the rpc broker listener
 
In Java: - SAMPLE
import com.medsphere.vistarpc.*;
import com.medsphere.vistarpc.RPCResponse.ResponseType;
import com.medsphere.ovid.domain.ov.*;

 

string host = "127.0.0.1"; //server IP
int port = 9220; //listerner port
String access = "20access"; //access code
String ver = "access20..";  //verify code
 
RPCBrokerConnection con =new RPCBrokerConnection(host, port, access , ver);
VistaRPC rpc = new VistaRPC("RPC LIST ALL", ResponseType.ARRAY); //replace RPC LIST ALL with your rpc
con.setContext("RPC INTERFACE");  //replace RPC INTERFACE with your context
 
try {
  RPCResponse response = con.execute(rpc);
  String[] ret = response.getArray();
}
catch (RPCException ex) {
  throw new OvidDomainException(ex);
}

Arun Venkataraman

unread,
Jun 5, 2013, 10:12:15 AM6/5/13
to hard...@googlegroups.com

Arun Venkataraman

unread,
Jun 11, 2013, 9:42:47 PM6/11/13
to Budy, Hardhats, K.S. Bhaskar

Thanks Budy - will try that, however where will OVID be installed on the server ? There's a .kid in the OVID download which has all the jars.

Regards
Arun.

Sam Habiel

unread,
Jun 12, 2013, 10:24:50 AM6/12/13
to hardhats, Budy, K.S. Bhaskar
Arun,

Why use OVID? It's unmaintained right now as far as I know. The
community as a whole is moving away from the RPC broker towards web
services. For example, https://github.com/shabiel/M-Web-Server.

Sam
> --
> --
> http://groups.google.com/group/Hardhats
> To unsubscribe, send email to Hardhats+u...@googlegroups.com
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Hardhats" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to hardhats+u...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Budy

unread,
Jun 12, 2013, 1:39:34 PM6/12/13
to hard...@googlegroups.com, Budy, Hardhats, K.S. Bhaskar
I'm not familiar with Astronaut so I'm not sure whether the patch has been installed in your VistA build. May be some one else familar with Astronaut can tell you that.
Regarding the jar, just use it as you use any other jar in your java codes.
If you don't have any constraint, you might want to look at WebService solution per Sam's recommendation.

geky

unread,
Jun 14, 2013, 6:04:08 AM6/14/13
to hard...@googlegroups.com, Arun Venkataraman, Hardhats, K.S. Bhaskar

Sam,

Some Questions regarding M-Web-Server :

1) I see in M-Web-Server/src/INIT-for-%W some
files about MASH WEB SERVER. Is this related to
the MASH shell project ? Can you please tell us more
about this?

2) Do you have some help material how to use web services from
within VistA ?

It would be very nice to have some description and some
examples how to use it. Some notes about how to install it
would be of much help as well. This is most important as
this seems to the new way for the community to work with
VistA.

Sam Habiel

unread,
Jun 14, 2013, 12:27:09 PM6/14/13
to hardhats
Geky,

Nice to hear from you.

1. Yes, this is part of the Mumps Advanced Shell.
2. See below.

Unfortunately, this is not a paying project at this point; but I will
keep working on it. I will be writing better documentation, but here's
how to use it:

Installation:
- Pull all the routines into your Mumps, and import %W.zwr.
- Create a xinetd service and script that invokes GTMLNX^VPRJREQ. If
you have that service listen on port 80, walla, you have a real web
server. You can have ssl/tls by using stunnel.

How to create web services:
All web services are in %W0 right now. You have to populate the %W
global with a new web service. It's a Fileman file but you can edit it
by hand if you wish. An entry looks like this:

^%W(17.6001,"B","GET","fileman/{file}/{iens}/{field}","FV^%W0",4)=""

This says that any url that looks like fileman/$1/$2/$3 will be
handled by FV^%W0.

FV^%W0 does the following:
FV(RESULTS,ARGS) ; Get fileman field value, handles fileman/file/iens/field
I $$UNKARGS^VPRJRUT(.ARGS,"file,iens,field") Q ; Is any of these not passed?
S RESULTS("mime")="text/plain; charset=utf-8" ; type of data to send browser
N FILE S FILE=$G(ARGS("file")) ; se
N IENS S IENS=$G(ARGS("iens")) ; se
N FIELD S FIELD=$G(ARGS("field")) ; se
S RESULTS=$$GET1^DIQ(FILE,IENS,FIELD,,$NA(^TMP($J))) ; double trouble.
I $D(^TMP("DIERR",$J)) D SETERROR^VPRJRUT(404,"File or field not found") QUIT
; if results is a regular field, that's the value we will get.
; if results is a WP field, RESULTS becomes the global ^TMP($J).
I $D(^TMP($J)) D ADDCRLF^VPRJRUT(.RESULTS) ; crlf the result
;ZSHOW "D":^KBANDEV
QUIT

A simpler example is the ping. It's not in the %W file (an omission on
my part; it's handled internally in the Web Server routine), but it's
a simpler example:

PING(RESULT,ARGS) ; writes out a ping response
S RESULT="{""status"":"""_$J_" running""}"
Q

In the end, RESULT (the first parameter) is where you put your
response. It can be scalar or it can be a numeric subscripted array.
RESULT("mime") lets you specify the mime type of your response. By
default it's json.

Sam

geky

unread,
Jun 14, 2013, 3:22:00 PM6/14/13
to hard...@googlegroups.com, Arun Venkataraman, Hardhats, K.S. Bhaskar
Sam,

Thanks a lot for the Information. This is a very important work,
you are doing, I hope it will be recognised and funded as such
appropriately. I will be glad to read your documentation when
you find time to finish it.

Thanks again.




Τη Τρίτη, 11 Ιουνίου 2013 6:14:22 π.μ. UTC+3, ο χρήστης K.S. Bhaskar έγραψε:

rtweed

unread,
Jun 19, 2013, 3:30:08 PM6/19/13
to hard...@googlegroups.com, Arun Venkataraman, Hardhats, K.S. Bhaskar
The idea of using a simple web server written in Mumps is not very sensible as a web service access point for VistA's RPCs etc.

I'd strongly suggest a better approach will be to make use of the secured, JSON-based web service capability that is provided as part of EWD Lite: see http://gradvs1.mgateway.com/download/EWDLite.pdf (penultimate chapter)

All you need to do as VistA developers is to focus your efforts on the mapping of VistA RPCs and Fileman APIs to JSON output, and let EWD Lite look after all the security and packaging of the JSON as an application/json response.

As you'll read, the security used for EWD Lite's web service is modelled on that used by Amazon Web Services, on the basis that if it's good enough for them, it's good enough for most applications.  EWD Lite uses the tried and tested web server that is built into Node.js which, of course, is now approved by the VA.

EWD Lite is an Apache 2 licensed product, fully documented and ready to use today.

Rob
Reply all
Reply to author
Forward
0 new messages