On 1/11/06, Brutzman, Bill <[EMAIL PROTECTED]> wrote:

> I believe that there is a way to invoke a Unix command-line thing (program)
> from within UniBasic.

On UniData it's PCPERFORM.  I may have edited it out, but one question
I had was, what kind of volume are we talking about here?  Five
transactions an hour?  A minute?  A second?  More?

You do *not* want to do the equivalent of:
PCPERFORM "java com.exampleMyClass param1 param2"
either directly, or indirectly by calling a script that does the same thing.
It's going to create a JVM (Java Virtual Machine) every time.  That
won't scale at all.

I'm finding it hard to believe that a Java API is the only way to talk
to the LiveProcessor software _and_ that all you can do with the Java
API is make a call to process a single transaction.  But assuming
that's all true, I'd approach this one of two ways:

I'd still lean towards a sockets-based solution.  UV would use
CallHTTP to talk to an instance of Jetty or Tomcat running a little
Servlet that picks up HTTP request parameters, makes the call to the
LP server, gets that response, and then sends a response back to UV.

The Servlet container will handle threading, parsing the request and
forming the response, etc.  All you'll have to do is call
request.getParameter(...) insert the Java code to talk to the LP
server, and response.write(...).  I think.  I haven't done pure
Servlets for a while. :)

I don't like this as much:  Have UV write a record to a table with the
transaction information.  From Java, with UOJ, constantly read records
from that table, process the transactions, and write back to it.  Make
sure you lock the records properly.

I don't see why you can't talk directly to the LiveProcessor software
with CallHTTP or a plain Socket, though.  Their Java client has to be
connecting somehow...

--
Wendy
-------
u2-users mailing list
[email protected]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to