Question Progress to Java Conversion documents

sreekuax

Member
Hello All,

We are trying to understand the scope of conversion of some of our progress (open edge 10.2B) written reports/ programs to Java based programs. If anyone of you can give me an insight on how to change the progress programs to java or any sites / doumentation links which will help me in understading the same.
Any help is highly appreciated.

Thanks.
 

joey.jeremiah

ProgressTalk Moderator
Staff member
i don't know the size of your application but obviously it's a huge and risky job to basically do a complete rewrite of your application which might not even come out the same in the end, especially, the crucial business logic.

if you're looking to modernize your application and you might favor non progress technologies which is perfectly understandable, you could rewrite just the ui part of your application in another language/platform/framework.

i don't know what you mean by java maybe jsf? i would definitely prefer a web ui, not a fat client or java applet.

this way you could keep the crucial business logic (and database) in progress. it's a much safer and more controlled change, not a complete rewrite.

we recently modernized a progress application. we replaced the ui with a 100% javascript framework we wrote based on extjs (no php, java etc. middleware). btw the framework is called breadjs and will be open sourced soon.
 

tamhas

ProgressTalk.com Sponsor
There are four companies I know of who have offered such translation services. The one honest one admits the results are extremely ugly Java and has withdrawn from the market. Another has done one conversion massively over budget. The other two I think are still only part way there.

There are better ways to get the job done ... the details depend on what you are actually trying to accomplish.
 

RealHeavyDude

Well-Known Member
From my experience it is not possible to automatically convert ABL to Java code with much luck.

The reasons for that are simply:
  • First, and foremost most ABL is procedural. Only since OE10.1+ OOABL has been introduced which would allow you to have similar structured code.
  • The richness of the ABL is built into the language ( statements, functions, system-handles, etc. ) whereas the richness in Java comes from libraries. You either won't find any open source library with an acceptable license that matches the functionality of an ABL language construct in order to replace it or you wind up paying big $ for commercial libraries to have some match.
  • The tight integration of the ABL with Progress database philosophically is completely different from SQL. Even if you we're to use something like hibernate you won't get a good match.
  • Plus, transaction handling in SQL ( and therefore all frameworks that hide it from you ) is completely different.

That does not mean that one could not take ABL code as a template and manually produce Java code. But you will find out immediately that either you are raping Java or you completely haveto re-design the application to follow a natural Java-like approach.

Nevertheless, out of experience I can tell that OOABL and Java match pretty well and you don't need to have "mental breaks" switching between thinking ABL and thinking Java. At least that's what I saw when we re-designed the presentation layer from a classic ABL GUI to a HTML/JS interefaced based on Google Web Toolkit in an application. Needless to say that we re-designed the business logic and data access layers too to have a better flow.

Heavy Regards, RealHeavyDude.
 
Top