Hi,
This is something I implemented in Jzy3D. There is a class named
DrawableVBO2 that I've used to draw arrays of triangles, spheres etc. The topic is indeed not easy since there are multiple schemes to provide vertices, normals and edges. You could either use Jzy3D to get these OpenGL stuff wrapped into an higher level API or look at my implementation.
You may find interesting to look at
TestDrawableVBO2* which shows how to use them.
And as usual, this is demonstrated in Jzy3D's guide.