Netbeans satisfies all these requirements except the browser and is my strong recommended tool.
I will only support Netbeans!
It is free and available from http://www.netbeans.org
Netbeans is an IDE for developing Java and web applications.
It is just like Eclipse but much better! (my opinion).
All course assignments and examples will be setup to work directly with Netbeans.
...and here it is! (demo)