Solved, I copy here for other ppl, it was hard to find a simple example (just one array, no interleaved) that show the basics
//init 
...
            initVertexArray(gl);
            int[] bufferID = new int[1];
            gl.glGenBuffers(1, bufferID, 0);
            
            vertexPointBufferID = bufferID[0];
            
            gl.glBindBuffer(GL2.GL_ARRAY_BUFFER, vertexPointBufferID);
            gl.glBufferData(GL2.GL_ARRAY_BUFFER, triangleNumber*3*3*4, vertexData, L2.GL_STATIC_DRAW);
            
            gl.glBindBuffer(GL2.GL_ARRAY_BUFFER, 0);
...
// display
...
        gl.glBindBuffer(GL2.GL_ARRAY_BUFFER, vertexPointBufferID);
        gl.glVertexPointer(3, GL2.GL_FLOAT, 0, 0);
        
        gl.glEnableClientState(GL2.GL_VERTEX_ARRAY);
        gl.glDrawArrays(GL2.GL_TRIANGLES, 0, triangleNumber*3);
        
        gl.glDisableClientState(GL2.GL_VERTEX_ARRAY);
...
private void initVertexArray(GL2 gl)    {
        vertexData = GLBuffers.newDirectFloatBuffer(triangleNumber*3*3);
      for(int i=0; i<triangleNumber; i++) {
          Triangle tmp = triangleArray.get(i);
          vertexData.put(new float[]{tmp.x1/12000.0f, tmp.y1/12000.0f, tmp.z1/12000.0f, 
                                     tmp.x2/12000.0f, tmp.y2/12000.0f, tmp.z2/12000.0f, 
                                     tmp.x3/12000.0f, tmp.y3/12000.0f, tmp.z3/12000.0f  });
      }
        vertexData.flip();
        
      
    


 so I would leave for the moment all your precious links and comments for later (I am not ironic, seriously)