Too short a trip for Indonesia with its 17.508 islands - even for two of them, Java and Bali, only three weeks are tight. East-Java with its vulcanoes has otherwise a quiet, beautiful countryside. Yogya is a nice hang-out for culture, street-music, historic sites. Surabaya has its fascinating international harbour.
On Bali even in the rain season there are spots to avoid for too many tourists, especially Ubud and I suppose the Kuta beach where I haven't even been. On the other hand there are beautiful places like the rice terraces at Jatiluwih or the quiet north/west of the island, lively villages with their practise of the hindu religion and surprising old Bali tradition.