Obviously there are 2 chances:
1.- He was lying: If he was lying, probably he had something like pocket pair (lower than JJ), and when in the river came the second J, making in the board two high pairs, his pocket pair was useless so he folded.
2.- He had the J: If he had a J, there are two chances:
a) He was chasing a flush. Maybe he had Jx suited. You didn´t tell if the flop was rainbow or not. If it was, forget this option option.
b) His calls weren´t to chase something. Maybe he called in the flop because he thought that his opponent tried to represent it (so up to the moment his Js were good enough). Then he called in the turn because he thought that his opponent was trying to
bluff or had something lower than his Js (maybe a lower pocket pair). But then in the river he finally gave up assuming that his opponent had the A, so the last J was useless.
Well, that´s all i can deduce without knowing too much information (opponent´s style, size of the bets, etc.)