CD200 Best Practices in Porting and Migrating Java Enterprise Applications to SAP NetWeaver
The "Write Once Run Everywhere" promise of plain Java applications (Java SE) is built in the design of the platform – thanks to the concept of the Java Virtual Machine (JVM). In case of Java Enterprise applications (Java EE) this promise can be somewhat tedious: a Java EE runtime platform is a non-trivial extension of a JVM. Even though the Java EE runtime platforms have to follow a well defined set of open standards (the so-called Java EE specification), applications tend to use tempting but proprietary vendor-specific features, sometimes without even being aware. This works against Java's portability promise while trying to port/migrate such an application across different vendor platforms. Fortunately, the newest features of the Java EE technology stack (Java EE 5 and higher) significantly smoothen the porting efforts.