Hello ex32,
I am a programmer. I mainly work in Java and Javascript. To answer your question, it is possible. However, it is quite difficult and time consuming to create native exporters. The overhead of creating an exporter that could handle all the different systems Construct 2 supports would really take away from the progress of the program. All the great features getting added all the time would have to be put on hold each time a new feature was added just to ensure it worked properly with all supported languages. While Java and Javascript kind of sound like the same thing, they really aren't. In many instances they use completely different methods to accomplish the same tasks. Also, you specifically mentioned making a Java exporter to handle different systems natively. Even just a Java exporter would still take a lot of effort because many devices (Android, Blackberry, PC) that use Java require different code libraries. An Android device is programmed using Java but it has very different ways of accessing it's features than a PC and thus needs a different code base.
Since an Html5 game can be supported on all these devices using their built in browsers (or a wrapper that makes the browser look like a native program), the devs decided it would be better and/or easier to create an Html5 game engine. That is all Construct has ever claimed to be and, at least for the foreseeable future, all it will be.
Since you asked specifically about Java, I have just one more point to make. Java programs are not "native" programs. They require a Java Virtual Machine (JVM) to run. A native program is compiled directly to computer language where it can be run directly. Java isn't compiled to computer language. The reason Java can run on so many different systems is because of this intermediary program. In truth, the way Construct 2 exports to different systems is exactly the same. Java has just had more years to optimize it's performance.