Java Explorer

Version 1.0, 10/07/06

Pitch

A tool to easily explore the java sandbox from javascript, for the purpose of better understanding what java makes available to web applications nowadays.

Usage

Start by picking a package in the top left area. Then pick a class in the area below.
The console in the bottom left corner is designed to make java experimentation easier. Once you load a page that contains an import statement like import obnoxiously.long.package.from.hell.Class; you can type Class from there on in the console to refer to it.
You can bookmark this page in a given state, and use the back/forward buttons. It should just work.

How it works

This page uses Gecko's java bridge and java reflection APIs to generate a dynamic javadoc-like page. Since I don't have real documentation, I show a syntax-colored hyper-linked code skeleton of the class instead.
This has the benefit of showing you exactly what java packages and methods are available in your browser. (Note that this can miss some classes, as java doesn't offer a way to enumerate through classes in a given package.)
The console supports up/down history navigation, and every output is flagged as $1,$2,... and can be reused at will.

Known bugs

When you click on a interface or a class, *DON'T MOVE YOUR MOUSE* until after the loading process is complete.
Failing to heed this warning is likely to result in frequent browser crashes.

Todo List

  • Figure out how to prevent the crashiness we have now when UI events surprise javascript talking to java.
  • Replicate with environments other than Java. (js, as2, as3, maybe pdf)

    License, Copyright, Disclaimer, Contact Info

     Java Explorer for Gecko.
    
     Copyright (c) 2006 metal_hurlant. All Rights Reserved.
    
     Permission to use, copy, modify, and distribute this software
     and its documentation for any purposes and without
     fee is hereby granted provided that this copyright notice
     appears in all copies.
    
     Of course, this software is provided "as is" without express or implied
     warranty of any kind.
    
  •  >>