Better implementation, split up data & exception passed to View.