The Airbus A320-200 disappeared en route from Indonesia's second largest city Surabaya to Singapore during a storm early Sunday.
All indications now are that it crashed in the Java Sea southwest of the island of Borneo, with debris and dozens of bodies retrieved so far.
An air force plane saw a "shadow" on the seabed believed to be of the missing Flight QZ8501, National Search and Rescue Agency chief Bambang Soelistyo told a news conference in Jakarta.
Relatives of the 162 missing hugged each other and burst into tears in Surabaya as they watched footage of one body floating in the sea on a television feed of Soelistyo's press conference.
An Indonesian warship had recovered more than 40 bodies from the sea "and the number is growing," navy spokesman Manahan Simorangkir told AFP shortly afterwards.
AirAsia's flamboyant chief executive, Mr Tony Fernandes, expressed his grief over the first fatal incident to hit the region's biggest budget airline.
"My heart is filled with sadness for all the families involved in QZ 8501," Mr Fernandes said on Twitter, adding that he was rushing to Surabaya.
Initial news of the debris dimmed the faint hopes of relatives of those missing.
"If that news is true, what can I do? I cannot bring him back to life," said Mr Dwijanto, 60, whose son was on the plane along with five colleagues.
"My heart will be totally crushed if it's true. I will lose a son," he said.
|This aerial view taken from an Indonesian search and rescue aircraft over the Java Sea shows floating debris spotted in the same area as other items being investigated by Indonesian authorities as possible objects from missing AirAsia flight QZ8501 on December 30, 2014. Items resembling an emergency slide, plane door and other objects were spotted during a aerial search on December 30 for the missing AirAsia plane. Photo: Bay Ismoyo/AFP|
Search chief Soelistyo said all efforts were now being concentrated on the location where the "shadow" and debris had been found, around 160 kilometres (100 miles) southwest of the town of Pangkalan Bun in Central Kalimantan on Borneo island.
The town has the nearest airstrip and is not far from the plane's last known position.
Indonesian President Joko Widodo was expected in Pangkalan Bun shortly and then head to Surabaya to meet the relatives, officials said.
Indonesian officials had already been preparing relatives for the worst, with Soelistyo saying Monday it was likely the plane was at "the bottom of the sea," based on its estimated position.
The aircraft lost contact early on Sunday about 40 minutes after takeoff, after the crew requested a change of flight plan due to stormy weather, in the third crisis for a Malaysian carrier this year.
In his last communication, the pilot said he wanted to avoid a menacing storm system, before all contact was lost.
Before take-off the pilot had asked for permission to fly at a higher level to avoid the storm but his request was not approved due to heavy traffic on the popular route, according to AirNav, Indonesia's flight navigation service.
In his final communication, the pilot asked to alter his course and repeated his original request to ascend to avoid the bad weather.
"The pilot requested to air traffic controllers to deviate to the left side due to bad weather, which was immediately approved," AirNav safety director Wisnu Darjono told AFP.
"After a few seconds the pilot requested to ascend from 32,000 to 38,000 feet but could not be immediately approved as some planes were flying above it at that time," he said.
That was the last communication with the flight.
(UPDATE: This is an update of our earlier story, story, Debris spotted in search for missing AirAsia aircraft)