It's a hot-button topic.
Basically, the main opposition to cash for prospects (or any excessive cash in a trade) is that it creates an unlevel playing field. If you send $4.7m to the other team, then they're playing with a $189.7m budget this season while everybody else is playing with $185m. It's not inconveivable for an owner to try to make 3 or 4 deals like that in a season, sell off some of their prospects for cash, and play with an over $200m budget.
Also, it destroys the integrity of the budget process. If I budget $Xm in my prospect budget, and blow it all on an IFA such that I no longer have enough to sign my first-rounder, then why should I be given a do-over budget-wise by getting an influx of cash from somebody else? Makes budgeting, and sticking to a budget, less important.