This might have been hidden somewhere between the lines, but you can now run Java on iOS devices.
Oracle found a solution for the "iOS can't run Java" problem, and released it in the new Oracle ADF Mobile solution. This enables you to use Java to write the logic layer of on-device applications that run on iOS devices such as iPads and iPhones (oh, and the same code and application will also run on Android devices).
Oracle ADF Mobile uses a native container that runs applications on both iOS and Android from a single source base. One part of that native container is a headless/lightweight JVM.
So when you build an application with Oracle ADF Mobile, you write your business services layer with Java. You develop UIs either by coding HTML5/CSS3, or if you rather use a component based approach for UI definition (think JSF), you can use Oracle's mobile optimized AMX components to define UI.
This approach makes it very easy for any Java developer to become an iOS developer without the need to learn XCode coding.
ADF Mobile also includes an incripted SQLite database for local/offline data storage, as well as an abstraction layer that allows you to access device services such as camera, location, contacts, SMS etc.
You can learn more about ADF Mobile and download it here:
P.S. The first ADF Mobile application is already on the iTune store and it offers a monitoring application for Hudson