The short answer is that we have written code to allow Java to call the EA COM objects by wrapping them with Java objects and JNI calls. (Actually, apart from a small amount of support code this was generated using EA Transformations and Code Generation.)

The code to allow EA to call into Java is completely separate and although I have my theories on how it can be done, it hasn't been done.