ratpoison and an empty, gray java GUI

How to un-break graphical Java apps under Ratpoison” suggests wmname to make the JVM believe it runs on a different window manager:

$ wmname LG3D

This implies the JVM runs on lg3d (Project Looking Glass - a desktop utilizing 3D aspects in the UI), a non-re-parenting window manager written by Sun; this one is on java’s hard-coded list of known non-reparenting window managers.

Note for OpenJDK: according to this post “versions of OpenJDK that ship with some operating system distributions—at least Debian (and Ubuntu) and Arch Linux in March and August of 2009, respectively—have had this problem fixed by the vendors.”