Why does my application behaviour not reflect the changes that I make to my Java source code?
When an object is first made persistent in a store, the class of the object, including the bytecodes is also made persistent and the object is bound to the persistent instance of the class. So when you make changes to the Java source code in the file system, and recompile, generating a new class file, it has no effect on the behaviour of the objects in the persistent store. Furthermore, all subsequent class resolution binds to the persistent class in the store, so any new objects will acquire the same (consistent) behaviour. Modifying the class in the persistent store requires the additional step of the opjsubst tool. During early development it is often simpler to delete the persistent store and recreate it from scratch.