Most frequent cure is to flush out the heater core.
Unhook hoses from engine (pass. side of block) and mount a garden hose, back and forth, on each one, flushing core in both directions.
Do this severl times and see what happens.
That fixed 90% of the no/low heat problems.
98 TJ, 4.0L, 5 Sp., 4" lift w/ 1.25 BL, 4.56 locked gears, 33" Cooper STT's
02 QCLB Dodge Diesel; 602 HP/1266 ft-lbs