Time for genuine 'write-once, run-anywhere' Java
Oracle and BEA: a new hope?
Posted in Applications, 14th March 2008 06:02 GMT
Free whitepaper – The top 5 server monitoring battles
Even in areas you'd expect the Java EE specification to cover have incompatibilities or inconsistencies. As an example, in an ejb-jar.xml file if an unused <resource-ref> is included then some versions of WebLogic ignore the entry while some versions of WebSphere generate misleading error messages.
Transaction management is another minefield, with different application servers having differing defaults - resulting in strange error messages from applications that might work on WebLogic but throw exceptions relating to nested transactions on WebSphere. There are other examples, such as shared connections, where - depending upon the application server - a connection sharing scheme may be emulated or actually shared. The end result may be that a working application on one server may result in unpredictable behavior on another.
Application servers may also implement the Java specification in differing ways. For example, on WebLogic it is possible to have an interface hierarchy in which the remove (Object primaryKey) method occurs both in an application interface and in the EJBHome interface, both of which are used in the same EJB implementation class. While this is fine in WebLogic, errors are generated by the EJB compiler at deployment time in WebSphere.
So there is considerable variability between different application servers for those aspects of an application that sit outside or on the fringe of the specification. Oracle's purchase of BEA at least raises the possibility of the companies working together either on a consolidated application server or on making the two application servers more consistent. If they do this, it will be a considerable step towards establishing an implicit standard in these areas. This may mean greater consensus around how some of these fringe items should work or be defined.
I suspect IBM is unlikely to follow Oracle in ironing out its differences with BEA. However, others in the field - possibly in the open-source camp - might be able to agree a common model and this may become accepted as an implicit standard over time. This can only be a good thing for those of us tasked with the niggling difficulties in working with different Java containers.®
Free whitepaper – Ensuring high service levels in cloud computing

The Register Agile Data Center Summit
Market Primer: ERP Systems
Analyst Keynote: The Register Agile Data Center Summit
Buyer's Guide: ERP Systems
Checklist: Midmarket ERP Solutions
Office 2010 fights Google with SharePoint bloat
Ubuntu's Karmic Koala bares fangs at Windows 7
Icon design for
Microsoft 'Dallas' muscles Google data crusade