This works for Windows XP. It assumes your JFrame is called "frame."
//set window to maximum size but account for taskbar
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle rect = env.getMaximumWindowBounds();
int width = Double.valueOf(rect.getWidth()-1.0).intValue();
int height = Double.valueOf(rect.getHeight()-1.0).intValue();
frame.setMaximizedBounds(new Rectangle(0,0,width, height));