I'm wondering if it is possible for an app to run in Python and call Java methods (and vice versa) through libffi?
In general, things get complicated when you're talking about two managed runtimes (CPython and the JVM, for instance).  libffi only really deals with a subset of the issues here.  I would look more at remote method invocations as a way to integrate code written in different managed runtime environments.
Can libffi be used for Python and Java to communicate?