It's both - a surplus of pilots who are early in the pipeline, and a shortage of those who are experienced enough to be hired by a major carrier. When the training period is long like this, supply always lags demand significantly. If you lower wages during a surplus, you're setting the stage for a shortage a few years from now.
Edit: Also keep in mind that a "shortage" claimed by an employer can sometimes be nothing more than a shortage of people willing to work for the price they're paying. ;)