Run Progress Code from Java

Subhransu

Member
Hi All,
Is it possible to run a Progress 4gl code from Java with the introduction of OpenEdge 10.2B? If not, what are the otherways to acomplish similar requirement?

Thanks.
Subhransu
 

tamhas

ProgressTalk.com Sponsor
Nothing changed in 10.2B. As for how to accomplish, it would help knowing the actual requirement. If the requirement is just access to data, there is JDBC. If it is access to logic, then it depends on the context and your setup. For example, if you are already using AppServer for ABL clients, you can easily add support for Open Client and get in that way.
 

RealHeavyDude

Well-Known Member
Accessing OE logic from within a different technology is one perfect use case for the AppServer. We are doing a whole application accessing OE business logic from Java servlets and it works without a fuzz.

Heavy Regards, RealHeavyDude.
 

Marian EDU

Member
As others already said the best way to go is probably Open Client, this is if you use AppServer... most important is your BL must be able to work like that (aka: BL and UI to be separated).

The only thing that might bother you when using Open Client is that on every update of api signatures you have to go through proxy-gen and then deploy the jar, and as this is strongly typed when deploying new jar all client calls must be updated to use the new signature... this isn't probably something one does very often i guess.

The is an option to go to the ABL business logic through standard JDBC, no SQL engine involved and the BL is being called as 'stored procedures' using regular RUN statements... http://www.ganimede.ro/cms/products/abl-jdbc/

I
f you don't have AppServer in house you'll have to build some socket server in Progress and "talk" with it using some sort of a network protocol you build... it's been some time but if I remember correctly ganimede did had a Java interface that was working at some point. http://www.ganimede.ro/cms/open-source/ganimede/
 

RealHeavyDude

Well-Known Member
Depending on the version of OpenEdge you are running (I am on OE10.1C) you don't need to create the proxy. There is also a way to dynamically invoke procedures on the AppServer from Java. It's not that transparent as the proxy but it's possible.

Heavy Regards, RealHeavyDude.
 
Top