We have a legacy Java system running on JDK 1.3. We have a new data processing system implemented as an EJB server (stateless session bean o rama) running on JDK 1.4.
We want the legacy system to make remote session bean calls (via JNDI, of course) into the new system. The new system in general may return serialized objects from these session bean calls.
Will we run into trouble if the serialized objects contain object references to classes that do not exist in JDK 1.3? In general, what are the issues with trying to do EJB / serialized communication between different JDKs? Should we back off now and make sure that the only objects we pass are safe to pass, or would even that possibly not be sufficient?
Thanks for any guidance.
Yes , you will run into problems .. in the JDK 1.3 and JDK 1.4 scenario , you probably will get java.io.InvalidClassException.
It *should* be safe to pass your own remote objects between JDK 1.3 and JDK 1.4 provided the class files available to both JVMs are exactly the same and does not have reference to classes that are not available to the other JVM.
With regards to the classes in the core Java library , though , there could be problem as I do not know how many of the classes have changed since JDK 1.3 (e.g. uses the "assert" keyword , etc)