Let me explain how I found this out. I got involved with SAP earlier this year when O’Reilly & Associates asked me to work on a project to write two books on the ideas behind SAP technology. The first book, Packaged Composite Applications, came out at Sapphire 2003. The second, Enterprise Services Architecture, will be distributed at TechEd.
As part of this project, I was able to interview almost 100 different engineers and executives of various sorts. I even got to go to Walldorf and walk the halls of SAP’s egonomically comfortable and coffee-enriched headquarters. (The milchcaffe in Building 18 is the way to go on that front.)
There I was, interviewing right and left when I got involved with SAP Developer Network. Knowing all about multitasking from my days as an MVS System Programmer, I made it a practice to slip in a couple of SDN questions to each interview.
So, while at the O’Reilly Open Source Conference (The deepest and widest swamp of geeks ever assembled), I had the good fortune to speak with Peter Zencke on the telephone. Having an inquiring mind, I asked him why bother with Java at all? Faster than IEFBR14 could execute, here’s the answer I got:
Zencke said that back in the late 1990’s SAP saw that the massive competition they were facing on every front was here to stay. In order to succeed in the long term, which is a persistent desire of SAP’s, they realized that ease of integration would be a tremendous advantage. But how could they make this happen?
Because even then, before Enterprise Services Architecture was fully formed in Hasso Plattner’s mind, it was clear that the integration between applicaitons and the integration within applications, were really just a matter of two components talking to each other. When the components were within the application ABAP to ABAP communication would probably be fine. But because of the heterogenous world, the components to component integration across application boundaries would increasingly be a situation of an ABAP component talking to a component written in another language. SAP suspected that it was very likely that this other language would be Java.
Zencke said SAP would have an advantage, or at least would not have a disadvantage if the integration between components was done in the same way, using Java.
So, out of the humble realization that the whole world wouldn’t be owned by SAP and that Java to Java would be an easier integration across heterogeneous application boundaries than ABAP to Java, SAP found itself pursuing Java as a long term direction.
With the arrival of SAP Web Application Server 6.40 in late January, all of the BAPIs from the mySAP Business will be availabe in the J2EE environment as Java Proxies, making the ABAP to Java integration seem like a Java to Java one.
If you want to try this out, check out the SAP Web Application Servier 6.30 beta download, download miniSAP, and have at it. I will report back when I find some sample code that shows this idea at work.