Hi, mohamed
I recommend you first learn about JavaServer Faces there are a lot of materials in internet, i recommend two excelents books for JSF 2.0
-Core JavaServer Faces ThirdEdition by David Geary - Cay Horstman
-Javaserver Faces 2.0 the complete reference by Ed Burns (He's the jsf co-specification lead)
After you have sufficient knowledge of JSF, you can use any
IDE to develop JSF, or you may not need a IDE.
Regards
Cesar