Vijay,
this is a common scenario when the table is not initialized yet, then sometimes you will see an error on the console. do you see one? maybe the model isn't available just yet. and by the same luck, it works on the after rendering event because by then, the model is now available.
since you already have a model binding on the items of the table, and if you use an odata model, you do not need to execute the setModel function in the oninit funciton of the controller.
most likely this is happenign on your json model from the json file in your project - temp fake data.
hope this is helpful