Making JScrollPane Transparent

I have just learned that setting the JScrollPane setOpaque to false doesn’t make the trick to make it transparent. You have to set its viewport’s setOpaque to false as well.

JPanel bgPlane = new JPanel(); 
JScrollPane scrollPane = new JScrollPane(bgPlane);
scrollPane.setOpaque(false);
scrollPane.getViewport().setOpaque(false);