I have used the Hemesh (Java) library (
http://hemesh.wblut.com/) for doing subdivisions together with JOGL.
This is normally a Processing library, but removing the Processing dependencies is not terribly difficult, if you want to use the library in your own code.