Here is how I prepared for the exam. I refered to only HFSJ and my preparation time was almost 45 days. I started with lilttle knowledge in Servlets and zero knowledge in JSPs.
I read first 4 chapters of the book once , 5th and 6th chapter twice , did not make any notes of mine for these chapters. When I started reading from 7th chap onwards i started making notes. I read 7, 8 , 9th and 10th chapters twice from the book and twice from the notes which i had prepared. Notes is nothing special. just the important points from these chapters. Preparing my own notes was really helpful for last minute revision. Deployment chapter read it only once as most of it was covered in earlier chapters. Other chapters also I read twice.
I did not start with reading the whole book once and revising the whole book again , instaed i started with the next chapter only after feeling that i am comfortable with the previous chapter, it was basically a chapter vise study.
I found the mock exam at the end of HFSJ really a tough one and just got 40/69 but the real exam was 2 times easier than that.