The biggest trick is already in the name of such tools. Any company facing the challenge of migrating to Java usually does not understand well what "moving to Java" means. It might look simple at a first glance – all you need is to rewrite all business logic you have from PL/SQL to Java syntax. But this doesn't work in practice. If you try to rewrite in such a way, what you will get is completely unmaintainable code. Why would you need to migrate to Java in the first place?