context call validity?

I’m trying to shift my app over from GLCanvases to GLJPanels, to see if i can resolve some ugly repaint issues that are now plagueing my portion of the bigger application. Syntactically the conversion was very simple, but now i’m getting a null pointer in initialization:

Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at javax.media.opengl.GLJPanel.createContext(GLJPanel.java:704)

My situation is that i have 4 panels/canvases that need to all be linked with context sharing. So on creation of my first drawable, i used to call getContext() on it in it’s constructor, and feed that context to the others to link them up as they are constructed. This approach worked fine with GLCanvas’s, but the GLJPanels don’t like it. They keep throwing this null pointer when i try to use getContext() or createContext() on my first GLJPanel.

Am i committing some big no-no here that i’m not familiar with? Do i have to wait for something before there can be a valid context? Or if i’m really lucky is it just a jogl bug?

In some sense it’s a bug in JOGL but not one we are going to fix in the short term. For now I would suggest you create a small pbuffer and use its context as the one which shares with all 4 GLJPanels in your application.